Package org.geotools.gml2.simple
Interface GMLDelegate
- All Known Implementing Classes:
GML2FeatureCollectionEncoderDelegate.GML2Delegate,GML32FeatureCollectionEncoderDelegate.GML32Delegate
public interface GMLDelegate
Interface factoring out the differences between GML versions
- Author:
- Justin Deoliveira, OpenGeo, Andrea Aime - GeoSolutions
-
Method Summary
Modifier and TypeMethodDescriptionCreates the envelope encodervoidendFeature(GMLWriter handler) Closes a single featurevoidendFeatures(GMLWriter handler) Closes a collection of featuresvoidCloses a tuplebooleanReturns true if coordinates should be encoded as xs:decimal instead of xs:doubledefault booleanControls if coordinates measures should be included in WFS outputs.getFeatureProperties(SimpleFeature f, XSDElementDeclaration element, Encoder e) Lists all properties that should be encoded for a given featureThe GML prefix used by this encoding sessionintNumber of decimals used in the outputThe XSD schema used by this GML versionvoidInitializes an empty feature id attribute, the attribute must be the first one in "atts"booleanReturns true if coordinates should be right-padded with zeros up to the requested number of decimals.voidregisterGeometryEncoders(Map<Class, GeometryEncoder<? extends Geometry>> encoders, Encoder encoder) Registers all the geometry encoders for this GML version in a map, by geometry class (different versions support different types of geometries, e.g., GML3 supports also curved ones)voidsetGeometryDimensionAttribute(AttributesImpl srsatts, int dimension) Sets the dimensions attribute, if available for the current GML versionvoidSets the SRS attribute with the proper syntax for the given GML versionvoidstartFeature(GMLWriter handler) Writes whatever per feature preamble is needed in this GML versionvoidstartFeatures(GMLWriter handler) Writes whatever per collection preamble is needed in this GML versionvoidstartTuple(GMLWriter handler) Writes the tuple preamblebooleanReturns true if tuple encoding is supported in this standard
-
Method Details
-
getFeatureProperties
Lists all properties that should be encoded for a given feature- Parameters:
f- A sample featureelement- The xml element holding the feature typee- The encoder
-
createEnvelopeEncoder
Creates the envelope encoder -
registerGeometryEncoders
void registerGeometryEncoders(Map<Class, GeometryEncoder<? extends Geometry>> encoders, Encoder encoder) Registers all the geometry encoders for this GML version in a map, by geometry class (different versions support different types of geometries, e.g., GML3 supports also curved ones) -
setSrsNameAttribute
Sets the SRS attribute with the proper syntax for the given GML version -
setGeometryDimensionAttribute
Sets the dimensions attribute, if available for the current GML version -
initFidAttribute
Initializes an empty feature id attribute, the attribute must be the first one in "atts" -
startFeatures
Writes whatever per collection preamble is needed in this GML version- Throws:
Exception
-
startFeature
Writes whatever per feature preamble is needed in this GML version- Throws:
Exception
-
endFeatures
Closes a collection of features- Throws:
Exception
-
endFeature
Closes a single feature- Throws:
Exception
-
getGmlPrefix
The GML prefix used by this encoding session- Throws:
Exception
-
supportsTuples
boolean supportsTuples()Returns true if tuple encoding is supported in this standard -
startTuple
Writes the tuple preamble- Throws:
SAXException
-
endTuple
Closes a tuple- Throws:
SAXException
-
getSchema
XSD getSchema()The XSD schema used by this GML version -
getNumDecimals
int getNumDecimals()Number of decimals used in the output -
forceDecimalEncoding
boolean forceDecimalEncoding()Returns true if coordinates should be encoded as xs:decimal instead of xs:double -
padWithZeros
boolean padWithZeros()Returns true if coordinates should be right-padded with zeros up to the requested number of decimals. -
getEncodeMeasures
default boolean getEncodeMeasures()Controls if coordinates measures should be included in WFS outputs.- Returns:
- TRUE if measures should be encoded, otherwise FALSE
-