Class FilterCondition
java.lang.Object
org.eclipse.birt.report.model.core.Structure
org.eclipse.birt.report.model.core.PropertyStructure
org.eclipse.birt.report.model.api.elements.structures.FilterCondition
- All Implemented Interfaces:
Cloneable
,IStructure
,org.eclipse.birt.report.model.core.IPropertySet
public class FilterCondition
extends org.eclipse.birt.report.model.core.PropertyStructure
Represents one filter in the filter list of List, Table or their Groups.
This is a managed object, meaning that all changes should be made though the command layer so that they can be undone and redone. Each filter condition has the following properties:
- Column
- a filter condition has a required column.
- Operator
- a filter condition has a required operator to compute.
- Filter Expr
- a filter condition has a required filter expression to test. Can be a column or a complete boolean expression.
- Value 1 Expr
- a filter condition has an optional value 1 expression of the comparison value for all but unary operators.
- Value 2 Expr
- a filter condition has an optional value 2 expression of the second comparison value for trinary operators(between, not between).
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
Name of the member to save the any other user specified value.static final String
Name of the member that indicates the name of the dynamic filter parameter to reference.static final String
Name of the filter expression member.static final String
Name of the member that indicates the unique id of a custom filter expression contributed and defined by the extension.static final String
Name of the member that indicates the extension name defined to map to a BIRT filter operator.static final String
Name of this structure.static final String
Name of the filter target member.static final String
Name of the member that indicates whether this filter is optional or not.static final String
Name of the filter operator member.static final String
Name of the member that indicates if the current filter condition will be pushed down to the database.static final String
Name of the member that indicates the type of this filter condition.static final String
Name of the member that indicates if the current filter condition need to update aggregation.static final String
Name of the filter value 1 expression member.static final String
Name of the filter value 2 expression member.Fields inherited from class org.eclipse.birt.report.model.core.PropertyStructure
propValues
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionDeprecated.This property has been removed.Returns the user specified value.Returns the name of the dynamic filter parameter to reference when the filter condition is dynamic.getExpr()
Returns the filter expression.Returns the id of a custom filter expression contributed and defined by the extension identified in the consumerExpressionMapping.Returns the unique id of an org.eclipse.datatools.connectivity.oda.filterExpressions extension to whose custom expressions are defined to map to a BIRT filter operator.Deprecated.Replaced by the methodgetExpr()
Returns the filter target.Returns the operator.Returns the name of the structure definition.getType()
Returns the type.Returns the value 1 expression.Deprecated.Replaced by the methodgetValue1()
Gets the value1 expression list of this filter condition.Deprecated.Returns the value 2 expression.Deprecated.Replaced by the methodgetValue2()
handle
(SimpleValueHandle valueHandle, int index) Creates the specific handle of this structure.boolean
Determines whether this filter condition is optional or not.boolean
pushDown()
Indicate if the current filter condition will be pushed down to the database.void
Deprecated.This property has been removed.void
setCustomValue
(String customValue) Sets the user specified value.void
setDynamicFilterParameter
(String parameterName) Sets the name of the dynamic filter parameter to reference.void
Sets the filter expression.void
setExtensionExprId
(String extensionExprId) Sets the id of a custom filter expression contributed and defined by the extension identified in the consumerExpressionMapping.void
setExtensionName
(String extensionName) Sets the unique id of an org.eclipse.datatools.connectivity.oda.filterExpressions extension to whose custom expressions are defined to map to a BIRT filter operator.void
setFilterExpr
(String filterExpr) Deprecated.Replaced by the methodsetExpr(String)
void
setFilterTarget
(String filterTarget) Sets the filter target.void
setOperator
(String operator) Sets the operator.void
setOptional
(boolean isOptional) Sets the optional status for this filter condition.void
setPushDown
(boolean pushDown) Sets the push down status for this filter conditionvoid
Sets the type.void
setUpdateAggregation
(boolean updateAggregation) Sets the updateAggregation flag of the filter condition.void
Sets the value 1 expression.void
Sets the value 1 expression.void
setValue1Expr
(String value1Expr) Deprecated.Replaced by the methodsetValue1(String)
void
Sets the value 2 expression.void
setValue2
(Expression value) Sets the value 2 expression.void
setValue2Expr
(String value2Expr) Deprecated.Replaced by the methodsetValue2(String)
boolean
Checks if this filter condition needs to update aggregation.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.PropertyStructure
clone, getIntrinsicProperty, getLocalProperty, getLocalProperty, setIntrinsicProperty, setProperty
Methods inherited from class org.eclipse.birt.report.model.core.Structure
checkStringMember, copy, equals, getCompatibleValue, getContext, getDefn, getElement, getExpressionProperty, getHandle, getHandle, getMemberDefn, getObjectDefn, getProperty, getProperty, getReferencableProperty, getStringProperty, isDesignTime, isReferencable, setContext, setExpressionProperty, setProperty, setupContext, updateReference
-
Field Details
-
FILTER_COND_STRUCT
Name of this structure. Matches the definition in the meta-data dictionary.- See Also:
-
OPERATOR_MEMBER
Name of the filter operator member.- See Also:
-
EXPR_MEMBER
Name of the filter expression member.- See Also:
-
VALUE1_MEMBER
Name of the filter value 1 expression member.- See Also:
-
VALUE2_MEMBER
Name of the filter value 2 expression member.- See Also:
-
FILTER_TARGET_MEMBER
Name of the filter target member.- See Also:
-
IS_OPTIONAL_MEMBER
Name of the member that indicates whether this filter is optional or not.- See Also:
-
EXTENSION_NAME_MEMBER
Name of the member that indicates the extension name defined to map to a BIRT filter operator.- See Also:
-
EXTENSION_EXPR_ID_MEMBER
Name of the member that indicates the unique id of a custom filter expression contributed and defined by the extension.- See Also:
-
PUSH_DOWN_MEMBER
Name of the member that indicates if the current filter condition will be pushed down to the database.- See Also:
-
DYNAMIC_FILTER_PARAMETER_MEMBER
Name of the member that indicates the name of the dynamic filter parameter to reference.- See Also:
-
TYPE_MEMBER
Name of the member that indicates the type of this filter condition. We define some choices for it. -
UPDATE_AGGREGATION_MEMBER
Name of the member that indicates if the current filter condition need to update aggregation.- See Also:
-
CUSTOM_VALUE
Name of the member to save the any other user specified value.- See Also:
-
-
Constructor Details
-
FilterCondition
public FilterCondition()
-
-
Method Details
-
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.
-
getExpr
Returns the filter expression.- Returns:
- the filter expression
-
setExpr
Sets the filter expression.- Parameters:
expr
- the filter expression to set
-
getOperator
Returns the operator. The possible values are defined inDesignChoiceConstants
, and they are:FILTER_OPERATOR_EQ
FILTER_OPERATOR_NE
FILTER_OPERATOR_LT
FILTER_OPERATOR_LE
FILTER_OPERATOR_GE
FILTER_OPERATOR_GT
FILTER_OPERATOR_BETWEEN
FILTER_OPERATOR_NOT_BETWEEN
FILTER_OPERATOR_NULL
FILTER_OPERATOR_NOT_NULL
FILTER_OPERATOR_TRUE
FILTER_OPERATOR_FALSE
FILTER_OPERATOR_LIKE
FILTER_OPERATOR_TOP_N
FILTER_OPERATOR_BOTTOM_N
FILTER_OPERATOR_TOP_PERCENT
FILTER_OPERATOR_BOTTOM_PERCENT
FILTER_OPERATOR_ANY
- Returns:
- the operator
-
setOperator
Sets the operator. The allowed values are defined inDesignChoiceConstants
, and they are:FILTER_OPERATOR_EQ
FILTER_OPERATOR_NE
FILTER_OPERATOR_LT
FILTER_OPERATOR_LE
FILTER_OPERATOR_GE
FILTER_OPERATOR_GT
FILTER_OPERATOR_BETWEEN
FILTER_OPERATOR_NOT_BETWEEN
FILTER_OPERATOR_NULL
FILTER_OPERATOR_NOT_NULL
FILTER_OPERATOR_TRUE
FILTER_OPERATOR_FALSE
FILTER_OPERATOR_LIKE
FILTER_OPERATOR_TOP_N
FILTER_OPERATOR_BOTTOM_N
FILTER_OPERATOR_TOP_PERCENT
FILTER_OPERATOR_BOTTOM_PERCENT
FILTER_OPERATOR_ANY
- Parameters:
operator
- the operator to set
-
getValue1
Returns the value 1 expression.- Returns:
- the value 1 expression
-
getValue1List
Deprecated.Gets the value1 expression list of this filter condition. For most filter operator, there is only one expression in the returned list. However, filter operator 'in' may contain more than one expression.- Returns:
- the value1 expression list of this filter condition.
-
getValue1ExpressionList
Gets the value1 expression list of this filter condition. For most filter operator, there is only one expression in the returned list. However, filter operator 'in' may contain more than one expression.- Returns:
- the value1 expression list of this filter condition. Each item is
Expression
object.
-
setValue1
Sets the value 1 expression.- Parameters:
value1
- the value 1 expression to set
-
setValue1
Sets the value 1 expression.- Parameters:
value1List
- the value 1 expression list to set
-
getValue2
Returns the value 2 expression.- Returns:
- the value 2 expression
-
setValue2
Sets the value 2 expression.- Parameters:
value2
- the value 2 expression to set
-
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 filter expression is required.
- Overrides:
validate
in classorg.eclipse.birt.report.model.core.Structure
- Parameters:
module
- the moduleelement
- the element contains this structure- Returns:
- the semantic error list
- See Also:
-
Structure.validate(Module, org.eclipse.birt.report.model.core.DesignElement)
-
handle
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 classorg.eclipse.birt.report.model.core.Structure
- Parameters:
valueHandle
- the value handle of this structure list property this structure is inindex
- the position of this structure in structure list- Returns:
- the handle of this structure.
-
getColumn
Deprecated.This property has been removed.Returns the column name of this filter condition.- Returns:
null
. NOT support any more.
-
setColumn
Deprecated.This property has been removed.Sets the column name of this filter condition. NOT support any more.- Parameters:
column
- the column name to set
-
getFilterExpr
Deprecated.Replaced by the methodgetExpr()
Returns the filter expression.- Returns:
- the filter expression.
-
setFilterExpr
Deprecated.Replaced by the methodsetExpr(String)
Sets the filter expression.- Parameters:
filterExpr
- the filter expression to set
-
getValue1Expr
Deprecated.Replaced by the methodgetValue1()
Returns the value 1 expression of this filter condition.- Returns:
- the expression of value 1.
-
setValue1Expr
Deprecated.Replaced by the methodsetValue1(String)
Sets the value 1 expression of this filter condition.- Parameters:
value1Expr
- the value 1 expression to set
-
getValue2Expr
Deprecated.Replaced by the methodgetValue2()
Returns the value 2 expression of this filter condition.- Returns:
- the expression of value 1..
-
setValue2Expr
Deprecated.Replaced by the methodsetValue2(String)
Sets the value 2 expression of this filter condition.- Parameters:
value2Expr
- the value 2 expression to set
-
getFilterTarget
Returns the filter target. The possible values are defined inDesignChoiceConstants
, and they are:FILTER_TARGET_DATA_SET
FILTER_TARGET_RESULT_SET
- Returns:
- the operator
-
setFilterTarget
Sets the filter target. The allowed values are defined inDesignChoiceConstants
, and they are:FILTER_TARGET_DATA_SET
FILTER_TARGET_RESULT_SET
- Parameters:
filterTarget
- the filter target to set
-
isOptional
public boolean isOptional()Determines whether this filter condition is optional or not.- Returns:
- true if this filter is optional, otherwise false
-
setOptional
public void setOptional(boolean isOptional) Sets the optional status for this filter condition.- Parameters:
isOptional
- true if this filter is optional, otherwise false
-
getExtensionName
Returns the unique id of an org.eclipse.datatools.connectivity.oda.filterExpressions extension to whose custom expressions are defined to map to a BIRT filter operator.- Returns:
- the extension name
-
getExtensionExprId
Returns the id of a custom filter expression contributed and defined by the extension identified in the consumerExpressionMapping.- Returns:
- the extension expression id
-
pushDown
public boolean pushDown()Indicate if the current filter condition will be pushed down to the database. Default value is false. Only the oda extension provider supported operators can be pushed down to database. For those only BIRT supported operators even this property is set to true, will be ignored.- Returns:
- true if the current filter condition will be pushed down to the database, otherwise false.
-
getDynamicFilterParameter
Returns the name of the dynamic filter parameter to reference when the filter condition is dynamic.- Returns:
- the name to the dynamic filter parameter to reference.
-
setExtensionName
Sets the unique id of an org.eclipse.datatools.connectivity.oda.filterExpressions extension to whose custom expressions are defined to map to a BIRT filter operator.- Parameters:
extensionName
- the extension name to set
-
setExtensionExprId
Sets the id of a custom filter expression contributed and defined by the extension identified in the consumerExpressionMapping.- Parameters:
extensionExprId
- the id to set
-
setPushDown
public void setPushDown(boolean pushDown) Sets the push down status for this filter condition- Parameters:
pushDown
- true if the current filter condition will be pushed down to the database, otherwise false.
-
setDynamicFilterParameter
Sets the name of the dynamic filter parameter to reference.- Parameters:
parameterName
- the name of the dynamic filter parameter to set
-
getType
Returns the type. The possible values are defined inDesignChoiceConstants
, and they are:FILTER_CONDITION_TYPE_SLICER
FILTER_CONDITION_TYPE_SIMPLE
- Returns:
- the operator
-
setType
Sets the type. The allowed values are defined inDesignChoiceConstants
, and they are:FILTER_CONDITION_TYPE_SLICER
FILTER_CONDITION_TYPE_SIMPLE
- Parameters:
type
- the type to set
-
setValue2
Sets the value 2 expression.- Parameters:
value1List
- the value 2 expression list to set
-
updateAggregation
public boolean updateAggregation()Checks if this filter condition needs to update aggregation.- Returns:
- the flag to indicate updating aggregation or not.
-
setUpdateAggregation
public void setUpdateAggregation(boolean updateAggregation) Sets the updateAggregation flag of the filter condition.- Parameters:
updateAggregation
- the updateAggregation flag to set- Throws:
SemanticException
-
getCustomValue
Returns the user specified value.- Returns:
- the flag to indicate updating aggregation or not.
-
setCustomValue
Sets the user specified value.
-