public abstract class Filter
extends java.lang.Object
implements java.io.Serializable
The abstract of <Filter> elements (filters) defined with OGC standards.
The "abstract" here does not indicate that this class is abstract, but indicates that this class is an abstract of the OGC <Filter> element. The child classes of this class are abstracts of the Filter elements (elements in <Filter>).
The <Filter> defined by OGC includes a filter expression with a combination of Filter elements. Every Filter element in <Filter> has a corresponding child class in this class.
In WFS services, <Filter> elements are used to set both spatial and non-spatial query conditions. The conditions can be used to constrict GetFeature operation results, i.e., a set of result features.
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
name
The name of the Filter element.
|
protected Filter[] |
subExpression
An array of child Filter elements.
|
Modifier | Constructor and Description |
---|---|
|
Filter()
The constructor.
|
protected |
Filter(java.lang.String name, int expressionCount)
The protected constructor.
|
Modifier and Type | Method and Description |
---|---|
abstract void |
accept(AbstractFilterVisitor visitor) |
Filter |
copy()
Copies a replication, i.e., generating a new Filter object identical to this object.
|
abstract FilterType |
getFilterType()
Gets the Filter element type.
|
java.lang.String |
getName()
The name of the Filter element.
|
Filter |
getSubExpression(int index)
Gets the child Filter element according to an index.
|
int |
getSubExpressionCount()
Gets the number of child Filter elements
|
void |
setSubExpression(int index, Filter expression)
Sets child Filter element.
|
protected Filter[] subExpression
An array of child Filter elements.
protected java.lang.String name
The name of the Filter element.
E.g., "BBOX", "Contains", etc.
protected Filter(java.lang.String name, int expressionCount)
The protected constructor.
name
- The name of the Filter element.expressionCount
- The number of child Filter elements.public Filter()
The constructor.
public java.lang.String getName()
public int getSubExpressionCount()
Gets the number of child Filter elements
public Filter copy()
Copies a replication, i.e., generating a new Filter object identical to this object.
The specific implementation of this method depends on the subclass. "null" may be returned.
public abstract void accept(AbstractFilterVisitor visitor) throws OGCException
OGCException
public Filter getSubExpression(int index)
Gets the child Filter element according to an index.
index
- The index of the child Filter element.public void setSubExpression(int index, Filter expression)
Sets child Filter element.
If the specified index location already has a child Filter element, the new Filter element will replace the existing one.
index
- The index of the child Filter element to be set.expression
- The Filter element object to be set.public abstract FilterType getFilterType()
Gets the Filter element type.