public abstract class AbstractFilterBuilder extends Object
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.
| Constructor and Description |
|---|
AbstractFilterBuilder(String cqlSource,
FilterFactory filterFactory)
New instance of FilterBuilder
|
protected final String cqlSource
public AbstractFilterBuilder(String cqlSource, FilterFactory filterFactory)
protected FilterFactory getFilterFactory()
protected final BuildResultStack getResultStack()
protected final String getStatement()
public void pushResult(Result result)
public Result peekResult()
public Filter getFilter() throws CQLException
CQLExceptionpublic Expression getExpression() throws CQLException
CQLExceptionpublic List<Filter> getFilterList() throws CQLException
CQLExceptionpublic BinaryExpression buildAddExpression() throws CQLException
CQLExceptionpublic BinaryExpression buildSubtractExression() throws CQLException
CQLExceptionpublic BinaryExpression buildMultiplyExpression() throws CQLException
CQLExceptionpublic BinaryExpression buildDivideExpression() throws CQLException
CQLExceptionpublic Filter buildAndFilter() throws CQLException
CQLExceptionpublic Filter buildOrFilter() throws CQLException
CQLExceptionpublic Filter buildNotFilter() throws CQLException
CQLExceptionpublic PropertyIsLike buildLikeFilter(boolean matchCase) throws CQLException
CQLExceptionpublic PropertyIsNull buildPropertyIsNull() throws CQLException
CQLExceptionpublic Not buildPorpertyNotIsNull() throws CQLException
CQLExceptionpublic PropertyIsBetween buildBetween() throws CQLException
CQLExceptionpublic Not buildNotBetween() throws CQLException
CQLExceptionpublic Not buildNotLikeFilter(boolean matchCase) throws CQLException
CQLExceptionpublic PropertyIsEqualTo buildPropertyExists() throws CQLException
CQLExceptionpublic Literal buildDateExpression(IToken token) throws CQLException
CQLExceptionpublic Literal buildDateTimeExpression(IToken token) throws CQLException
token - with date timeCQLExceptionpublic Literal buildTrueLiteral()
public Literal buildFalseLiteral()
protected String removeQuotes(String source)
public String buildIdentifier(int nodeIdentifier) throws CQLException
CQLExceptionpublic String buildIdentifierPart(IToken token)
public PropertyName buildSimpleAttribute() throws CQLException
CQLExceptionpublic PropertyName buildCompoundAttribute(int nodeSimpleAttr, String nodeAttrSeparator) throws CQLException
CQLExceptionpublic Literal buildDistanceUnit(IToken token) throws CQLException
CQLExceptionpublic Literal buildTolerance() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialEqualFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialDisjointFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialIntersectsFilter() throws CQLException
CQLExceptionpublic PropertyIsEqualTo buildSpatialRelateFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialTouchesFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialCrossesFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialWithinFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialContainsFilter() throws CQLException
CQLExceptionpublic BinarySpatialOperator buildSpatialOverlapsFilter() throws CQLException
CQLExceptionpublic BBOX buildBBox() throws CQLException
CQLExceptionpublic BBOX buildBBoxWithCRS() throws CQLException
CQLExceptionpublic DistanceBufferOperator buildSpatialDWithinFilter() throws CQLException
CQLExceptionpublic DistanceBufferOperator buildSpatialBeyondFilter() throws CQLException
CQLExceptionpublic PeriodNode buildPeriodBetweenDates() throws CQLException
CQLExceptionpublic PeriodNode buildPeriodDurationAndDate() throws CQLException
CQLExceptionpublic PeriodNode buildPeriodDateAndDuration() throws CQLException
CQLExceptionpublic Literal buildDurationExpression(IToken token)
public And buildPropertyBetweenDates() throws CQLException
CQLExceptionpublic PropertyIsGreaterThanOrEqualTo buildPropertyIsGTEFirstDate() throws CQLException
CQLExceptionpublic PropertyIsGreaterThan buildPropertyIsGTLastDate() throws CQLException
CQLExceptionpublic PropertyIsLessThan buildPropertyIsLTFirsDate() throws CQLException
CQLExceptionpublic PropertyIsLessThanOrEqualTo buildPropertyIsLTELastDate() throws CQLException
CQLExceptionpublic PropertyIsEqualTo buildEquals() throws CQLException
CQLExceptionpublic PropertyIsGreaterThan buildGreater() throws CQLException
CQLExceptionpublic PropertyIsLessThan buildLess() throws CQLException
CQLExceptionpublic PropertyIsGreaterThanOrEqualTo buildGreaterOrEqual() throws CQLException
CQLExceptionpublic PropertyIsLessThanOrEqualTo buildLessOrEqual() throws CQLException
CQLExceptionpublic Literal buildGeometry(IToken geometry) throws CQLException
CQLExceptionprotected String scanExpression(IToken initialToken)
protected String transformWKTGeometry(String wktGeom)
Then OGC require MULTIPOINT((1 2), (3 4))
but vividsolunion works without point "(" ans ")"
MULTIPOINT(1 2, 3 4)
wktGeom - ogc wkt geometrypublic Function buildFunction(int functionNode) throws CQLException
functionNode - symbol used to identify the function node in parser treeCQLExceptionpublic TEquals buildTEquals() throws CQLException
CQLExceptionpublic After buildAfterDate() throws CQLException
CQLExceptionpublic After buildAfterPeriod() throws CQLException
CQLExceptionpublic Before buildBeforeDate() throws CQLException
CQLExceptionpublic Before buildBeforePeriod() throws CQLException
CQLExceptionpublic During buildDuringPeriod() throws CQLException
CQLExceptionpublic Or buildDuringOrAfter() throws CQLException
CQLExceptionpublic Or buildBeforeOrDuring() throws CQLException
CQLExceptionCopyright © 1996–2021 Geotools. All rights reserved.