Class GML2ParsingUtils


  • public class GML2ParsingUtils
    extends Object
    Utility methods used by gml2 bindings when parsing.
    Author:
    Justin Deoliveira, The Open Planning Project, jdeolive@openplans.org
    • Field Detail

      • PARSED_FROM_SCHEMA_KEY

        public static String PARSED_FROM_SCHEMA_KEY
        Metadata key used to indicate if a feature type has been parsed from a XML schema, or reflected out of a sample feature
    • Constructor Detail

      • GML2ParsingUtils

        public GML2ParsingUtils()
    • Method Detail

      • parseFeature

        public static SimpleFeature parseFeature​(ElementInstance instance,
                                                 Node node,
                                                 Object value,
                                                 FeatureTypeCache ftCache,
                                                 BindingWalkerFactory bwFactory)
                                          throws Exception
        Utility method to implement Binding.parse for a binding which parses into A feature.
        Parameters:
        instance - The instance being parsed.
        node - The parse tree.
        value - The value from the last binding in the chain.
        ftCache - The feature type cache.
        bwFactory - Binding walker factory.
        Returns:
        A feature type.
        Throws:
        Exception
      • featureType

        public static SimpleFeatureType featureType​(Node node)
                                             throws Exception
        Turns a parse node instance into a geotools feature type.

        For each child element and attribute of the node a geotools attribute type is created. AttributeType#getName() is derived from the name of the child element / attribute. Attribute#getType() is derived from the class of the value of the child element / attribute.

        Attribute types for the mandatory properties of any gml feature type (description,name,boundedBy) are also created.

        Parameters:
        node - The parse node / tree for the feature.
        Returns:
        A geotools feature type
        Throws:
        Exception
      • featureType

        public static SimpleFeatureType featureType​(XSDElementDeclaration element,
                                                    BindingWalkerFactory bwFactory)
                                             throws Exception
        Turns a xml type definition into a geotools feature type.
        Parameters:
        element - The element declaration.
        bwFactory - The binding walker factory.
        Returns:
        The corresponding geotools feature type.
        Throws:
        Exception
      • featureType

        public static SimpleFeatureType featureType​(XSDElementDeclaration element,
                                                    BindingWalkerFactory bwFactory,
                                                    CoordinateReferenceSystem crs)
                                             throws Exception
        Turns a xml type definition into a geotools feature type.
        Parameters:
        element - The element declaration.
        bwFactory - The binding walker factory.
        crs - The coordinate reference system to use on this feature type.
        Returns:
        The corresponding geotools feature type.
        Throws:
        Exception
      • asCollection

        public static Collection<Geometry> asCollection​(GeometryCollection gc)
        Wraps the elements of a geometry collection in a normal collection.