Package org.eclipse.birt.report.model.api.elements.structures

# Class JoinCondition

java.lang.Object
org.eclipse.birt.report.model.core.Structure
org.eclipse.birt.report.model.api.elements.structures.JoinCondition

All Implemented Interfaces:
  `Cloneable`, `IStructure`, `org.eclipse.birt.report.model.core.IPropertySet`

public class JoinCondition extends org.eclipse.birt.report.model.core.Structure
Represents a condition used for joint data set. The joint data set is data set joined by several normal data sets on join conditions. Each join condition has the following properties:

Join Type
  the join type of the join condition which can be inner join, left out join and right out join.

Operator
  the join condition's comparison operator

Left Dataset
  the left dataset of the join condition.

Right Dataset
  the right dataset of the join condition.

Left Expression
  the left Expression of the join condition.

Right Expression
  the right Expression of the join condition.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`JOIN_OPERATOR_MEMBER`
Name of the operator property.
`static final String`
`JOIN_TYPE_MEMBER`
Name of the type property.
`protected String`
`joinOperator`
Value of the operator property.
`protected String`
`joinType`
Value of the type property.
`static final String`
`LEFT_DATASET_MEMBER`
Name of the left dataset property.
`static final String`
`LEFT_EXPRESSION_MEMBER`
Name of the left coloumn property.
`protected String`
`leftDataSet`
Value of the left dataset property.
`protected Expression`
`leftExpression`
Value of the left coloumn property.
`static final String`
`RIGHT_DATASET_MEMBER`
Name of the right dataset property.
`static final String`
`RIGHT_EXPRESSION_MEMBER`
Name of the right coloumn property.
`protected String`
`rightDataSet`
Value of the right dataset property.
`protected Expression`
`rightExpression`
Value of the right coloumn property.
`static final String`
`STRUCTURE_NAME`
Name of the structure.

## Constructor Summary

Constructors
Constructor
Description
`JoinCondition()`

## Method Summary

Modifier and Type
Method
Description
`protected Object`
`getIntrinsicProperty(String propName)`
Returns the value of a structure property represented as a member variable.
`String`
`getJoinType()`
Returns join type value this condition.
`String`
`getLeftDataSet()`
Returns left data set value this condition.
`String`
`getLeftExpression()`
Returns left expression value this condition.
`String`
`getOperator()`
Returns operator value this condition.
`String`
`getRightDataSet()`
Returns right data set value this condition.
`String`
`getRightExpression()`
Returns right expression value this condition.
`String`
`getStructName()`
Returns the name of the structure definition.
`StructureHandle`
`handle(SimpleValueHandle valueHandle, int index)`
Creates the specific handle of this structure.
`protected void`
`setIntrinsicProperty(String propName, Object value)`
Sets the value of of a structure property represented as a member variable.
`void`
`setJoinType(String type)`
Sets the join type value of this condition.
`void`
`setLeftDataSet(String leftDataSet)`
Sets the left data set value of this condition.
`void`
`setLeftExpression(String leftExpression)`
Sets the left expression value of this condition.
`void`
`setOperator(String operator)`
Sets the operator value of this condition.
`void`
`setRightDataSet(String rightDataSet)`
Sets the right data set value of this condition.
`void`
`setRightExpression(String rightExpression)`
Sets the right expression value of this condition.
`List`
`validate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)`
Validates this structure.

### Methods inherited from class org.eclipse.birt.report.model.core.Structure

`checkStringMember, copy, equals, getCompatibleValue, getContext, getDefn, getElement, getExpressionProperty, getHandle, getHandle, getLocalProperty, getLocalProperty, getMemberDefn, getObjectDefn, getProperty, getProperty, getReferencableProperty, getStringProperty, isDesignTime, isReferencable, setContext, setExpressionProperty, setProperty, setProperty, setupContext, updateReference`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### STRUCTURE_NAME

public static final String STRUCTURE_NAME
Name of the structure.

See Also:
  - Constant Field Values

### JOIN_TYPE_MEMBER

public static final String JOIN_TYPE_MEMBER
Name of the type property.

See Also:
  - Constant Field Values

### JOIN_OPERATOR_MEMBER

public static final String JOIN_OPERATOR_MEMBER
Name of the operator property.

See Also:
  - Constant Field Values

### LEFT_DATASET_MEMBER

public static final String LEFT_DATASET_MEMBER
Name of the left dataset property.

See Also:
  - Constant Field Values

### RIGHT_DATASET_MEMBER

public static final String RIGHT_DATASET_MEMBER
Name of the right dataset property.

See Also:
  - Constant Field Values

### LEFT_EXPRESSION_MEMBER

public static final String LEFT_EXPRESSION_MEMBER
Name of the left coloumn property.

See Also:
  - Constant Field Values

### RIGHT_EXPRESSION_MEMBER

public static final String RIGHT_EXPRESSION_MEMBER
Name of the right coloumn property.

See Also:
  - Constant Field Values

### joinType

protected String joinType
Value of the type property.

### joinOperator

protected String joinOperator
Value of the operator property.

### leftDataSet

protected String leftDataSet
Value of the left dataset property.

### rightDataSet

protected String rightDataSet
Value of the right dataset property.

### leftExpression

protected Expression leftExpression
Value of the left coloumn property.

### rightExpression

protected Expression rightExpression
Value of the right coloumn property.

## Constructor Details

### JoinCondition

public JoinCondition()

## Method Details

### getStructName

public String getStructName()
Description copied from interface: `IStructure`
Returns the name of the structure definition. The name is the one used to define the structure in the meta-data dictionary.

Returns:
  the internal name of the structure a defined in the meta-data dictionary.

### getIntrinsicProperty

protected Object getIntrinsicProperty(String propName)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Returns the value of a structure property represented as a member variable.

Specified by:
  `getIntrinsicProperty` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `propName` - name of the property
Returns:
  the value of the property, or null if the property is not set

### setIntrinsicProperty

protected void setIntrinsicProperty(String propName, Object value)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Sets the value of of a structure property represented as a member variable.

Specified by:
  `setIntrinsicProperty` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `propName` - the name of the property to set
  `value` - the property value

### setJoinType

public void setJoinType(String type)
Sets the join type value of this condition.

Parameters:
  `type` - the join type to set

### getJoinType

public String getJoinType()
Returns join type value this condition.

Returns:
  the join type value

### setOperator

public void setOperator(String operator)
Sets the operator value of this condition.

Parameters:
  `operator` - the operator to set

### getOperator

public String getOperator()
Returns operator value this condition.

Returns:
  the operator value

### setLeftDataSet

public void setLeftDataSet(String leftDataSet)
Sets the left data set value of this condition.

Parameters:
  `leftDataSet` - the left data set to set

### getLeftDataSet

public String getLeftDataSet()
Returns left data set value this condition.

Returns:
  the left data set value

### setRightDataSet

public void setRightDataSet(String rightDataSet)
Sets the right data set value of this condition.

Parameters:
  `rightDataSet` - the right data set to set

### getRightDataSet

public String getRightDataSet()
Returns right data set value this condition.

Returns:
  the right data set value

### setLeftExpression

public void setLeftExpression(String leftExpression)
Sets the left expression value of this condition.

Parameters:
  `leftExpression` - the left expression to set

### getLeftExpression

public String getLeftExpression()
Returns left expression value this condition.

Returns:
  the left expression value

### setRightExpression

public void setRightExpression(String rightExpression)
Sets the right expression value of this condition.

Parameters:
  `rightExpression` - the right expression to set

### getRightExpression

public String getRightExpression()
Returns right expression value this condition.

Returns:
  the right expression value

### handle

public StructureHandle handle(SimpleValueHandle valueHandle, int index)
Description copied from class: `org.eclipse.birt.report.model.core.Structure`
Creates the specific handle of this structure. This handle is always created.

Specified by:
  `handle` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `valueHandle` - the value handle of this structure list property this structure is in
  `index` - the position of this structure in structure list
Returns:
  the handle of this structure.

### validate

public List validate(org.eclipse.birt.report.model.core.Module module, org.eclipse.birt.report.model.core.DesignElement element)
Validates this structure. The following are the rules:

- The join type is required.
- The operator is required.
- The left data set is required.
- The right data set is required.
- The left expression is required.
- The right expression is required.

Overrides:
  `validate` in class `org.eclipse.birt.report.model.core.Structure`
Parameters:
  `module` - the module
  `element` - the element contains this structure
Returns:
  the semantic error list
See Also:
  - `Structure.validate(org.eclipse.birt.report.model.elements.ReportDesign, org.eclipse.birt.report.model.core.DesignElement)`