|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.geotools.filter.text.commons.AbstractFilterBuilder
public abstract class AbstractFilterBuilder
This abstract class provides the common behavior to build the filters for the related semantic actions of parsing language process.
Builds Filter or Expression and their components (literal, functions, etc). It maintains the results of semantic actions in the stack used to build complex filters and expressions.
Warning: This component is not published. It is part of module implementation. Client module should not use this feature.
Field Summary | |
---|---|
protected java.lang.String |
cqlSource
|
Constructor Summary | |
---|---|
AbstractFilterBuilder(java.lang.String cqlSource,
org.opengis.filter.FilterFactory filterFactory)
New instance of FilterBuilder |
Method Summary | |
---|---|
org.opengis.filter.expression.BinaryExpression |
buildAddExpression()
|
org.opengis.filter.Filter |
buildAndFilter()
|
org.opengis.filter.spatial.BBOX |
buildBBox()
|
org.opengis.filter.spatial.BBOX |
buildBBoxWithCRS()
|
org.opengis.filter.PropertyIsBetween |
buildBetween()
builds PropertyIsBetween filter |
org.opengis.filter.expression.PropertyName |
buildCompoundAttribute(int nodeSimpleAttr,
java.lang.String nodeAttrSeparator)
|
org.opengis.filter.expression.Literal |
buildDateTimeExpression(IToken token)
Creates a literal with date time |
org.opengis.filter.expression.Literal |
buildDistanceUnit(IToken token)
|
org.opengis.filter.expression.BinaryExpression |
buildDivideExpression()
|
org.opengis.filter.expression.Literal |
buildDurationExpression(IToken token)
Create an integer literal with duration value. |
org.opengis.filter.expression.Literal |
buildEnvelop(IToken token)
Return the Envelop |
org.opengis.filter.PropertyIsEqualTo |
buildEquals()
|
org.opengis.filter.expression.Literal |
buildFalseLiteral()
|
org.opengis.filter.expression.Function |
buildFunction(int functionNode)
Builds a function expression |
org.opengis.filter.expression.Literal |
buildGeometry(IToken geometry)
Builds geometry |
org.opengis.filter.PropertyIsGreaterThan |
buildGreater()
|
org.opengis.filter.PropertyIsGreaterThanOrEqualTo |
buildGreaterOrEqual()
|
java.lang.String |
buildIdentifier(int nodeIdentifier)
|
java.lang.String |
buildIdentifierPart(IToken token)
Creates the identifier part. |
org.opengis.filter.PropertyIsLessThan |
buildLess()
|
org.opengis.filter.PropertyIsLessThanOrEqualTo |
buildLessOrEqual()
|
org.opengis.filter.PropertyIsLike |
buildLikeFilter()
Bulds a like filter |
org.opengis.filter.expression.Literal |
buildLiteralDouble(java.lang.String tokenImage)
|
org.opengis.filter.expression.Literal |
buildLiteralInteger(java.lang.String image)
|
org.opengis.filter.expression.Literal |
buildLiteralString(java.lang.String tokenImage)
|
org.opengis.filter.expression.BinaryExpression |
buildMultiplyExpression()
|
org.opengis.filter.Not |
buildNotBetween()
|
org.opengis.filter.Filter |
buildNotFilter()
|
org.opengis.filter.Not |
buildNotFilter(org.opengis.filter.Filter eq)
|
org.opengis.filter.Not |
buildNotLikeFilter()
|
org.opengis.filter.Filter |
buildOrFilter()
|
PeriodNode |
buildPeriodBetweenDates()
builds a PeriodNode (date1,date2) |
PeriodNode |
buildPeriodDateAndDuration()
builds a Period with (date,duration) |
PeriodNode |
buildPeriodDurationAndDate()
builds a Period Node with (duration,date). |
org.opengis.filter.Not |
buildPorpertyNotIsNull()
|
org.opengis.filter.And |
buildPropertyBetweenDates()
Create an AND filter with property between dates of period. |
org.opengis.filter.PropertyIsEqualTo |
buildPropertyExists()
Creates PropertyIsEqualTo with PropertyExists predicate |
org.opengis.filter.PropertyIsGreaterThanOrEqualTo |
buildPropertyIsGTEFirstDate()
Builds PropertyIsGreaterThanOrEqualTo begin of period |
org.opengis.filter.PropertyIsGreaterThan |
buildPropertyIsGTLastDate()
creates PropertyIsGreaterThan end date of period |
org.opengis.filter.PropertyIsLessThanOrEqualTo |
buildPropertyIsLTELastDate()
|
org.opengis.filter.PropertyIsLessThan |
buildPropertyIsLTFirsDate()
|
org.opengis.filter.PropertyIsNull |
buildPropertyIsNull()
Builds property is null filter |
org.opengis.filter.expression.PropertyName |
buildSimpleAttribute()
|
org.opengis.filter.spatial.DistanceBufferOperator |
buildSpatialBeyondFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialContainsFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialCrossesFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialDisjointFilter()
|
org.opengis.filter.spatial.DistanceBufferOperator |
buildSpatialDWithinFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialEqualFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialIntersectsFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialOverlapsFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialTouchesFilter()
|
org.opengis.filter.spatial.BinarySpatialOperator |
buildSpatialWithinFilter()
|
org.opengis.filter.expression.BinaryExpression |
buildSubtractExression()
|
org.opengis.filter.expression.Literal |
buildTolerance()
|
org.opengis.filter.expression.Literal |
buildTrueLiteral()
|
org.opengis.filter.expression.Expression |
getExpression()
|
org.opengis.filter.Filter |
getFilter()
|
protected org.opengis.filter.FilterFactory |
getFilterFactory()
|
java.util.List<org.opengis.filter.Filter> |
getFilterList()
|
protected BuildResultStack |
getResultStack()
|
protected java.lang.String |
getStatement()
|
Result |
peekResult()
|
void |
pushResult(Result result)
Adds in the result stack the partial result associated to node. |
protected java.lang.String |
removeQuotes(java.lang.String source)
Removes initial and final "'" from string. |
protected java.lang.String |
scanExpression(IToken initialToken)
Extracts expression between initial token and last token in buffer. |
protected java.lang.String |
transformWKTGeometry(java.lang.String wktGeom)
This transformation is required because some geometries like Multipoint has different definition in vividsolucion library. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final java.lang.String cqlSource
Constructor Detail |
---|
public AbstractFilterBuilder(java.lang.String cqlSource, org.opengis.filter.FilterFactory filterFactory)
cqlSource
- filterFactory
- Method Detail |
---|
protected org.opengis.filter.FilterFactory getFilterFactory()
protected final BuildResultStack getResultStack()
protected final java.lang.String getStatement()
public org.opengis.filter.Filter getFilter() throws CQLException
CQLException
public org.opengis.filter.expression.Expression getExpression() throws CQLException
CQLException
public java.util.List<org.opengis.filter.Filter> getFilterList() throws CQLException
CQLException
public org.opengis.filter.expression.BinaryExpression buildAddExpression() throws CQLException
CQLException
public org.opengis.filter.expression.BinaryExpression buildSubtractExression() throws CQLException
CQLException
public org.opengis.filter.expression.BinaryExpression buildMultiplyExpression() throws CQLException
CQLException
public org.opengis.filter.expression.BinaryExpression buildDivideExpression() throws CQLException
CQLException
public org.opengis.filter.Filter buildAndFilter() throws CQLException
CQLException
public org.opengis.filter.Filter buildOrFilter() throws CQLException
CQLException
public org.opengis.filter.Filter buildNotFilter() throws CQLException
CQLException
public org.opengis.filter.PropertyIsLike buildLikeFilter() throws CQLException
CQLException
public org.opengis.filter.PropertyIsNull buildPropertyIsNull() throws CQLException
CQLException
public org.opengis.filter.Not buildPorpertyNotIsNull() throws CQLException
CQLException
public org.opengis.filter.PropertyIsBetween buildBetween() throws CQLException
CQLException
public org.opengis.filter.Not buildNotBetween() throws CQLException
CQLException
public org.opengis.filter.Not buildNotLikeFilter() throws CQLException
CQLException
public org.opengis.filter.PropertyIsEqualTo buildPropertyExists() throws CQLException
CQLException
public org.opengis.filter.expression.Literal buildDateTimeExpression(IToken token) throws CQLException
n
- with date time
CQLException
public org.opengis.filter.Not buildNotFilter(org.opengis.filter.Filter eq)
public org.opengis.filter.expression.Literal buildTrueLiteral()
public org.opengis.filter.expression.Literal buildFalseLiteral()
public org.opengis.filter.expression.Literal buildLiteralInteger(java.lang.String image)
public org.opengis.filter.expression.Literal buildLiteralDouble(java.lang.String tokenImage)
public org.opengis.filter.expression.Literal buildLiteralString(java.lang.String tokenImage)
protected java.lang.String removeQuotes(java.lang.String source)
source
-
public java.lang.String buildIdentifier(int nodeIdentifier) throws CQLException
CQLException
public java.lang.String buildIdentifierPart(IToken token)
public org.opengis.filter.expression.PropertyName buildSimpleAttribute() throws CQLException
CQLException
public org.opengis.filter.expression.PropertyName buildCompoundAttribute(int nodeSimpleAttr, java.lang.String nodeAttrSeparator) throws CQLException
nodeSimpleAttr
- nodeAttrSeparator
-
CQLException
public org.opengis.filter.expression.Literal buildDistanceUnit(IToken token) throws CQLException
CQLException
public org.opengis.filter.expression.Literal buildTolerance() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialEqualFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialDisjointFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialIntersectsFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialTouchesFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialCrossesFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialWithinFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialContainsFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BinarySpatialOperator buildSpatialOverlapsFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.BBOX buildBBox() throws CQLException
CQLException
public org.opengis.filter.spatial.BBOX buildBBoxWithCRS() throws CQLException
CQLException
public org.opengis.filter.spatial.DistanceBufferOperator buildSpatialDWithinFilter() throws CQLException
CQLException
public org.opengis.filter.spatial.DistanceBufferOperator buildSpatialBeyondFilter() throws CQLException
CQLException
public PeriodNode buildPeriodBetweenDates() throws CQLException
CQLException
public PeriodNode buildPeriodDurationAndDate() throws CQLException
CQLException
public PeriodNode buildPeriodDateAndDuration() throws CQLException
CQLException
public org.opengis.filter.expression.Literal buildDurationExpression(IToken token)
public org.opengis.filter.And buildPropertyBetweenDates() throws CQLException
CQLException
public org.opengis.filter.PropertyIsGreaterThanOrEqualTo buildPropertyIsGTEFirstDate() throws CQLException
CQLException
public org.opengis.filter.PropertyIsGreaterThan buildPropertyIsGTLastDate() throws CQLException
CQLException
public org.opengis.filter.PropertyIsLessThan buildPropertyIsLTFirsDate() throws CQLException
CQLException
public org.opengis.filter.PropertyIsLessThanOrEqualTo buildPropertyIsLTELastDate() throws CQLException
CQLException
public org.opengis.filter.PropertyIsEqualTo buildEquals() throws CQLException
CQLException
public org.opengis.filter.PropertyIsGreaterThan buildGreater() throws CQLException
CQLException
public org.opengis.filter.PropertyIsLessThan buildLess() throws CQLException
CQLException
public org.opengis.filter.PropertyIsGreaterThanOrEqualTo buildGreaterOrEqual() throws CQLException
CQLException
public org.opengis.filter.PropertyIsLessThanOrEqualTo buildLessOrEqual() throws CQLException
CQLException
public org.opengis.filter.expression.Literal buildGeometry(IToken geometry) throws CQLException
geometry
-
CQLException
protected java.lang.String scanExpression(IToken initialToken)
initialToken
-
protected java.lang.String transformWKTGeometry(java.lang.String wktGeom)
Then OGC require MULTIPOINT((1 2), (3 4)) but vividsolunion works without point "(" ans ")" MULTIPOINT(1 2, 3 4)
wktGeom
- ogc wkt geometry
public org.opengis.filter.expression.Literal buildEnvelop(IToken token)
token
-
public org.opengis.filter.expression.Function buildFunction(int functionNode) throws CQLException
functionNode
- symbol used to identify the function node in parser tree
CQLException
public void pushResult(Result result)
built
- partial resulttoken
- type
- node associated to partial resultpublic Result peekResult()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |