|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectAbstractFilterBuilder
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 String |
cqlSource
|
Constructor Summary | |
---|---|
AbstractFilterBuilder(String cqlSource,
FilterFactory filterFactory)
New instance of FilterBuilder |
Method Summary | |
---|---|
BinaryExpression |
buildAddExpression()
|
Filter |
buildAndFilter()
|
BBOX |
buildBBox()
|
BBOX |
buildBBoxWithCRS()
|
PropertyIsBetween |
buildBetween()
builds PropertyIsBetween filter |
PropertyName |
buildCompoundAttribute(int nodeSimpleAttr,
String nodeAttrSeparator)
|
Literal |
buildDateTimeExpression(IToken token)
Creates a literal with date time |
Literal |
buildDistanceUnit(IToken token)
|
BinaryExpression |
buildDivideExpression()
|
Literal |
buildDurationExpression(IToken token)
Create an integer literal with duration value. |
Literal |
buildEnvelop(IToken token)
Return the Envelop |
PropertyIsEqualTo |
buildEquals()
|
Literal |
buildFalseLiteral()
|
Function |
buildFunction(int functionNode)
Builds a function expression |
Literal |
buildGeometry(IToken geometry)
Builds geometry |
PropertyIsGreaterThan |
buildGreater()
|
PropertyIsGreaterThanOrEqualTo |
buildGreaterOrEqual()
|
String |
buildIdentifier(int nodeIdentifier)
|
String |
buildIdentifierPart(IToken token)
Creates the identifier part. |
PropertyIsLessThan |
buildLess()
|
PropertyIsLessThanOrEqualTo |
buildLessOrEqual()
|
PropertyIsLike |
buildLikeFilter()
Bulds a like filter |
Literal |
buildLiteralDouble(String tokenImage)
|
Literal |
buildLiteralInteger(String image)
|
Literal |
buildLiteralString(String tokenImage)
|
BinaryExpression |
buildMultiplyExpression()
|
Not |
buildNotBetween()
|
Filter |
buildNotFilter()
|
Not |
buildNotFilter(Filter eq)
|
Not |
buildNotLikeFilter()
|
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). |
Not |
buildPorpertyNotIsNull()
|
And |
buildPropertyBetweenDates()
Create an AND filter with property between dates of period. |
PropertyIsEqualTo |
buildPropertyExists()
Creates PropertyIsEqualTo with PropertyExists predicate |
PropertyIsGreaterThanOrEqualTo |
buildPropertyIsGTEFirstDate()
Builds PropertyIsGreaterThanOrEqualTo begin of period |
PropertyIsGreaterThan |
buildPropertyIsGTLastDate()
creates PropertyIsGreaterThan end date of period |
PropertyIsLessThanOrEqualTo |
buildPropertyIsLTELastDate()
|
PropertyIsLessThan |
buildPropertyIsLTFirsDate()
|
PropertyIsNull |
buildPropertyIsNull()
Builds property is null filter |
PropertyName |
buildSimpleAttribute()
|
DistanceBufferOperator |
buildSpatialBeyondFilter()
|
BinarySpatialOperator |
buildSpatialContainsFilter()
|
BinarySpatialOperator |
buildSpatialCrossesFilter()
|
BinarySpatialOperator |
buildSpatialDisjointFilter()
|
DistanceBufferOperator |
buildSpatialDWithinFilter()
|
BinarySpatialOperator |
buildSpatialEqualFilter()
|
BinarySpatialOperator |
buildSpatialIntersectsFilter()
|
BinarySpatialOperator |
buildSpatialOverlapsFilter()
|
BinarySpatialOperator |
buildSpatialTouchesFilter()
|
BinarySpatialOperator |
buildSpatialWithinFilter()
|
BinaryExpression |
buildSubtractExression()
|
Literal |
buildTolerance()
|
Literal |
buildTrueLiteral()
|
Expression |
getExpression()
|
Filter |
getFilter()
|
protected FilterFactory |
getFilterFactory()
|
List<Filter> |
getFilterList()
|
protected BuildResultStack |
getResultStack()
|
protected String |
getStatement()
|
Result |
peekResult()
|
void |
pushResult(Result result)
Adds in the result stack the partial result associated to node. |
protected String |
removeQuotes(String source)
Removes initial and final "'" from string. |
protected String |
scanExpression(IToken initialToken)
Extracts expression between initial token and last token in buffer. |
protected String |
transformWKTGeometry(String wktGeom)
This transformation is required because some geometries like Multipoint has different definition in vividsolucion library. |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final String cqlSource
Constructor Detail |
---|
public AbstractFilterBuilder(String cqlSource, FilterFactory filterFactory)
cqlSource
- filterFactory
- Method Detail |
---|
protected FilterFactory getFilterFactory()
protected final BuildResultStack getResultStack()
protected final String getStatement()
public Filter getFilter() throws CQLException
CQLException
public Expression getExpression() throws CQLException
CQLException
public List<Filter> getFilterList() throws CQLException
CQLException
public BinaryExpression buildAddExpression() throws CQLException
CQLException
public BinaryExpression buildSubtractExression() throws CQLException
CQLException
public BinaryExpression buildMultiplyExpression() throws CQLException
CQLException
public BinaryExpression buildDivideExpression() throws CQLException
CQLException
public Filter buildAndFilter() throws CQLException
CQLException
public Filter buildOrFilter() throws CQLException
CQLException
public Filter buildNotFilter() throws CQLException
CQLException
public PropertyIsLike buildLikeFilter() throws CQLException
CQLException
public PropertyIsNull buildPropertyIsNull() throws CQLException
CQLException
public Not buildPorpertyNotIsNull() throws CQLException
CQLException
public PropertyIsBetween buildBetween() throws CQLException
CQLException
public Not buildNotBetween() throws CQLException
CQLException
public Not buildNotLikeFilter() throws CQLException
CQLException
public PropertyIsEqualTo buildPropertyExists() throws CQLException
CQLException
public Literal buildDateTimeExpression(IToken token) throws CQLException
n
- with date time
CQLException
public Not buildNotFilter(Filter eq)
public Literal buildTrueLiteral()
public Literal buildFalseLiteral()
public Literal buildLiteralInteger(String image)
public Literal buildLiteralDouble(String tokenImage)
public Literal buildLiteralString(String tokenImage)
protected String removeQuotes(String source)
source
-
public String buildIdentifier(int nodeIdentifier) throws CQLException
CQLException
public String buildIdentifierPart(IToken token)
public PropertyName buildSimpleAttribute() throws CQLException
CQLException
public PropertyName buildCompoundAttribute(int nodeSimpleAttr, String nodeAttrSeparator) throws CQLException
nodeSimpleAttr
- nodeAttrSeparator
-
CQLException
public Literal buildDistanceUnit(IToken token) throws CQLException
CQLException
public Literal buildTolerance() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialEqualFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialDisjointFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialIntersectsFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialTouchesFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialCrossesFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialWithinFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialContainsFilter() throws CQLException
CQLException
public BinarySpatialOperator buildSpatialOverlapsFilter() throws CQLException
CQLException
public BBOX buildBBox() throws CQLException
CQLException
public BBOX buildBBoxWithCRS() throws CQLException
CQLException
public DistanceBufferOperator buildSpatialDWithinFilter() throws CQLException
CQLException
public DistanceBufferOperator buildSpatialBeyondFilter() throws CQLException
CQLException
public PeriodNode buildPeriodBetweenDates() throws CQLException
CQLException
public PeriodNode buildPeriodDurationAndDate() throws CQLException
CQLException
public PeriodNode buildPeriodDateAndDuration() throws CQLException
CQLException
public Literal buildDurationExpression(IToken token)
public And buildPropertyBetweenDates() throws CQLException
CQLException
public PropertyIsGreaterThanOrEqualTo buildPropertyIsGTEFirstDate() throws CQLException
CQLException
public PropertyIsGreaterThan buildPropertyIsGTLastDate() throws CQLException
CQLException
public PropertyIsLessThan buildPropertyIsLTFirsDate() throws CQLException
CQLException
public PropertyIsLessThanOrEqualTo buildPropertyIsLTELastDate() throws CQLException
CQLException
public PropertyIsEqualTo buildEquals() throws CQLException
CQLException
public PropertyIsGreaterThan buildGreater() throws CQLException
CQLException
public PropertyIsLessThan buildLess() throws CQLException
CQLException
public PropertyIsGreaterThanOrEqualTo buildGreaterOrEqual() throws CQLException
CQLException
public PropertyIsLessThanOrEqualTo buildLessOrEqual() throws CQLException
CQLException
public Literal buildGeometry(IToken geometry) throws CQLException
geometry
-
CQLException
protected String scanExpression(IToken initialToken)
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 geometry
public Literal buildEnvelop(IToken token)
token
-
public 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 |