public class JoiningNestedAttributeMapping extends NestedAttributeMapping
Modifier and Type | Class and Description |
---|---|
protected static class |
JoiningNestedAttributeMapping.Instance
Instance that holds temporary data for going through the features, for each 'caller' (any
object going through the features) there is one.
|
Modifier and Type | Field and Description |
---|---|
protected Map<Object,JoiningNestedAttributeMapping.Instance> |
instances
The instances.
|
filterFac, nestedFeatureType, nestedTargetXPath
sourceExpression, targetXPath
Constructor and Description |
---|
JoiningNestedAttributeMapping(Expression idExpression,
Expression parentExpression,
XPathUtil.StepList targetXPath,
boolean isMultiValued,
Map<Name,Expression> clientProperties,
Expression sourceElement,
XPathUtil.StepList sourcePath,
NamespaceSupport namespaces)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
close(Object caller)
Close the instance of this caller.
|
List<Feature> |
getFeatures(Object caller,
Object foreignKeyValue,
List<Object> idValues,
CoordinateReferenceSystem reprojection,
Object feature,
List<PropertyName> selectedProperties,
boolean includeMandatory,
int resolveDepth,
Integer resolveTimeOut)
Get the maching built features that are stored in this mapping using a supplied link value
|
List<Feature> |
getInputFeatures(Object foreignKeyValue,
FeatureTypeMapping fMapping)
Get matching input features that are stored in this mapping using a supplied link value.
|
List<Feature> |
getInputFeatures(Object caller,
Object foreignKeyValue,
List<Object> idValues,
Object feature,
CoordinateReferenceSystem reprojection,
List<PropertyName> selectedProperties,
boolean includeMandatory)
Get matching input features that are stored in this mapping using a supplied link value.
|
Map<Name,DataAccessMappingFeatureIterator> |
getNestedFeatureIterators(Object caller)
For testing purposes only: exposes the nested feature iterators to calling code.
|
DataAccessMappingFeatureIterator |
initSourceFeatures(JoiningNestedAttributeMapping.Instance instance,
Name featureTypeName,
CoordinateReferenceSystem reprojection,
List<PropertyName> selectedProperties,
boolean includeMandatory,
int resolveDepth,
Integer resolveTimeOut,
Transaction transaction)
Initialise a new iterator (for polymorphism, there could be multiple per instance)
|
void |
open(Object caller,
Query baseTableQuery,
FeatureTypeMapping mapping)
Open an instance (cursor) for a specific caller.
|
void |
skip(Object caller,
Object foreignKeyValue,
List<Object> idValues)
If we have decided not to build the parent feature, we need to skip all rows that were
returned to build it
|
protected void |
skipFeatures(DataAccessMappingFeatureIterator featureIterator,
Expression nestedSourceExpression,
Object foreignKeyValue,
List<Object> idValues) |
getFeatures, getFeatureTypeMapping, getMapping, getMappingSource, getNamespaces, getNestedFeatureType, isConditional, isNestedAttribute, isSameSource
encodeIfEmpty, equals, getClientProperties, getIdentifierExpression, getIndexField, getInstanceXpath, getLabel, getMultipleValue, getParentLabel, getSourceExpression, getSourceIndex, getTargetNodeInstance, getTargetXPath, hashCode, isList, isMultiValued, setEncodeIfEmpty, setIdentifierExpression, setIndexField, setInstanceXpath, setLabel, setList, setParentLabel, toString
protected Map<Object,JoiningNestedAttributeMapping.Instance> instances
public JoiningNestedAttributeMapping(Expression idExpression, Expression parentExpression, XPathUtil.StepList targetXPath, boolean isMultiValued, Map<Name,Expression> clientProperties, Expression sourceElement, XPathUtil.StepList sourcePath, NamespaceSupport namespaces) throws IOException
idExpression
- parentExpression
- targetXPath
- isMultiValued
- clientProperties
- sourceElement
- sourcePath
- namespaces
- IOException
public List<Feature> getInputFeatures(Object foreignKeyValue, FeatureTypeMapping fMapping)
NestedAttributeMapping
getInputFeatures
in class NestedAttributeMapping
public DataAccessMappingFeatureIterator initSourceFeatures(JoiningNestedAttributeMapping.Instance instance, Name featureTypeName, CoordinateReferenceSystem reprojection, List<PropertyName> selectedProperties, boolean includeMandatory, int resolveDepth, Integer resolveTimeOut, Transaction transaction) throws IOException
instance
- featureTypeName
- reprojection
- selectedProperties
- includeMandatory
- IOException
public void open(Object caller, Query baseTableQuery, FeatureTypeMapping mapping) throws IOException
caller
- baseTableQuery
- IOException
public void close(Object caller)
caller
- public List<Feature> getInputFeatures(Object caller, Object foreignKeyValue, List<Object> idValues, Object feature, CoordinateReferenceSystem reprojection, List<PropertyName> selectedProperties, boolean includeMandatory) throws IOException
getInputFeatures
in class NestedAttributeMapping
foreignKeyValue
- IOException
IOException
public List<Feature> getFeatures(Object caller, Object foreignKeyValue, List<Object> idValues, CoordinateReferenceSystem reprojection, Object feature, List<PropertyName> selectedProperties, boolean includeMandatory, int resolveDepth, Integer resolveTimeOut) throws IOException
getFeatures
in class NestedAttributeMapping
foreignKeyValue
- reprojection
- Reprojected CRS or nullselectedProperties
- list of properties to getIOException
protected void skipFeatures(DataAccessMappingFeatureIterator featureIterator, Expression nestedSourceExpression, Object foreignKeyValue, List<Object> idValues) throws IOException
IOException
public void skip(Object caller, Object foreignKeyValue, List<Object> idValues) throws IOException
caller
- foreignKeyValue
- IOException
public Map<Name,DataAccessMappingFeatureIterator> getNestedFeatureIterators(Object caller)
caller
- the object going through the featuresCopyright © 1996–2019 Geotools. All rights reserved.