public class FeatureChainedAttributeVisitor extends DefaultExpressionVisitor
FeatureTypeMapping object to determine which nested feature types / attributes must be traversed
to reach the attribute identified by the provided PropertyName expression.
The provided FeatureTypeMapping object is regarded as the root mapping against which
the expression is evaluated.
The nested attribute mappings are returned as a list of FeatureChainedAttributeVisitor.FeatureChainLink objects; the
first one in the list always refers to the root mapping.
| Modifier and Type | Class and Description |
|---|---|
static class |
FeatureChainedAttributeVisitor.FeatureChainedAttributeDescriptor
Descriptor class holding information about a feature chained attribute, i.e. an attribute
belonging to a feature type that is linked to a root feature type via feature chaining.
|
static class |
FeatureChainedAttributeVisitor.FeatureChainLink
Represents a single link in the "chain" of feature types that need to be linked to go from
the root type to a nested attribute.
|
| Constructor and Description |
|---|
FeatureChainedAttributeVisitor(FeatureTypeMapping root) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
conditionalMappingWasFound()
Tells clients whether or not a conditional mapping was found in the feature chain when the
latest expression was visited.
|
List<FeatureChainedAttributeVisitor.FeatureChainedAttributeDescriptor> |
getFeatureChainedAttributes()
Returns an object describing the sequence of feature chaining links that must be traversed to
reach the attribute specified by the visited expression.
|
boolean |
isUnboundedNestedElementFound() |
protected boolean |
startsWith(XPathUtil.StepList one,
XPathUtil.StepList other) |
Object |
visit(PropertyName expression,
Object data) |
public FeatureChainedAttributeVisitor(FeatureTypeMapping root)
public Object visit(PropertyName expression, Object data)
visit in interface ExpressionVisitorvisit in class DefaultExpressionVisitorpublic boolean isUnboundedNestedElementFound()
public List<FeatureChainedAttributeVisitor.FeatureChainedAttributeDescriptor> getFeatureChainedAttributes()
null if none was foundpublic boolean conditionalMappingWasFound()
true if a conditional mapping was found in the feature chain, false
otherwiseprotected boolean startsWith(XPathUtil.StepList one, XPathUtil.StepList other)
Copyright © 1996–2021 Geotools. All rights reserved.