|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.geotools.data.complex.filter.UnmappingFilterVisitor
public class UnmappingFilterVisitor
A Filter visitor that traverse a Filter or Expression made against a complex FeatureType, and that uses the attribute and type mapping information given by a FeatureTypeMapping object to produce an equivalent Filter that operates against the original FeatureType.
Usage:
<code> Filter filterOnTargetType = ... FeatureTypeMappings schemaMapping = .... UnMappingFilterVisitor visitor = new UnmappingFilterVisitor(schemaMapping); Filter filterOnSourceType = (Filter)filterOnTargetType.accept(visitor, null); </code>
Constructor Summary | |
---|---|
UnmappingFilterVisitor(FeatureTypeMapping mappings)
visit(*Expression) holds the unmapped expression here. |
Method Summary | |
---|---|
protected java.util.List<org.opengis.filter.expression.Expression> |
findMappingsFor(FeatureTypeMapping mappings,
XPath.StepList propertyName)
Looks up for attribute mappings matching the xpath expression propertyName . |
java.lang.Object |
visit(org.opengis.filter.expression.Add expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.And filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.BBOX filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Beyond filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Contains filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Crosses filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Disjoint filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.Divide expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.DWithin filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Equals filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.ExcludeFilter filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.Function function,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.Id filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.IncludeFilter filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Intersects filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.Literal expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.Multiply expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.NilExpression expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.Not filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.Or filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Overlaps filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsBetween filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsEqualTo filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsGreaterThan filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsGreaterThanOrEqualTo filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsLessThan filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsLessThanOrEqualTo filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsLike filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsNotEqualTo filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.PropertyIsNull filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.PropertyName expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.expression.Subtract expr,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Touches filter,
java.lang.Object arg1)
|
java.lang.Object |
visit(org.opengis.filter.spatial.Within filter,
java.lang.Object arg1)
|
org.opengis.filter.expression.Expression[][] |
visitBinaryComparisonOperator(org.opengis.filter.BinaryComparisonOperator filter)
Returns a CompareFilter of the same type than filter , but built on the unmapped
expressions pointing to the surrogate type attributes. |
org.opengis.filter.expression.Expression[][] |
visitBinaryExpression(org.opengis.filter.expression.BinaryExpression expression)
|
java.util.List |
visitBinaryLogicOp(org.opengis.filter.BinaryLogicOperator filter)
|
org.opengis.filter.expression.Expression[][] |
visitBinarySpatialOp(org.opengis.filter.spatial.BinarySpatialOperator filter)
|
java.lang.Object |
visitNullFilter(java.lang.Object arg0)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public UnmappingFilterVisitor(FeatureTypeMapping mappings)
Method Detail |
---|
public org.opengis.filter.expression.Expression[][] visitBinaryComparisonOperator(org.opengis.filter.BinaryComparisonOperator filter)
filter
, but built on the unmapped
expressions pointing to the surrogate type attributes.
public org.opengis.filter.expression.Expression[][] visitBinarySpatialOp(org.opengis.filter.spatial.BinarySpatialOperator filter)
public java.util.List visitBinaryLogicOp(org.opengis.filter.BinaryLogicOperator filter)
public org.opengis.filter.expression.Expression[][] visitBinaryExpression(org.opengis.filter.expression.BinaryExpression expression)
public java.lang.Object visit(org.opengis.filter.ExcludeFilter filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.IncludeFilter filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.And filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.Id filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.Not filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.Or filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsBetween filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsEqualTo filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsNotEqualTo filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsGreaterThan filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsGreaterThanOrEqualTo filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsLessThan filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsLessThanOrEqualTo filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsLike filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.PropertyIsNull filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.BBOX filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Beyond filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Contains filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Crosses filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Disjoint filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.DWithin filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Equals filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Intersects filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Overlaps filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Touches filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.spatial.Within filter, java.lang.Object arg1)
visit
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visitNullFilter(java.lang.Object arg0)
visitNullFilter
in interface org.opengis.filter.FilterVisitor
public java.lang.Object visit(org.opengis.filter.expression.NilExpression expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.Add expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.Divide expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.Function function, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.Literal expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.Multiply expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
public java.lang.Object visit(org.opengis.filter.expression.PropertyName expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
protected java.util.List<org.opengis.filter.expression.Expression> findMappingsFor(FeatureTypeMapping mappings, XPath.StepList propertyName)
propertyName
.
If any step in propertyName
has index greater than 1, any mapping for the same
property applies, regardless of the mapping. For example, if there are mappings for
gml:name[1]
, gml:name[2]
and gml:name[3]
, but
propertyName is just gml:name
, all three mappings apply.
mappings
- Feature type mapping to search forsimplifiedSteps
-
public java.lang.Object visit(org.opengis.filter.expression.Subtract expr, java.lang.Object arg1)
visit
in interface org.opengis.filter.expression.ExpressionVisitor
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |