Class GML3EncodingUtils

  • Direct Known Subclasses:
    GML32EncodingUtils

    public class GML3EncodingUtils
    extends Object
    Utility class for gml3 encoding.
    Author:
    Justin Deoliveira, The Open Planning Project, jdeolive@openplans.org, Ben Caradoc-Davies, CSIRO Exploration and Mining
    • Constructor Detail

      • GML3EncodingUtils

        public GML3EncodingUtils()
      • GML3EncodingUtils

        public GML3EncodingUtils​(XSD gml)
    • Method Detail

      • getUomLabels

        public static String getUomLabels​(Geometry g)
        Get uomLabels for the geometry if set in app-schema mapping configuration.
      • getAxisLabels

        public static String getAxisLabels​(Geometry g)
        Get axisLabels for the geometry if set in app-schema mapping configuration.
      • getID

        public static String getID​(Geometry g)
      • setID

        public static void setID​(Geometry g,
                                 String id)
      • GeometryPropertyType_GetProperty

        public Object GeometryPropertyType_GetProperty​(Geometry geometry,
                                                       QName name)
        Helper method used to implement ComplexBinding.getProperty(Object, QName) for bindings of geometry reference types:
        • GeometryPropertyType
        • PointPropertyType
        • LineStringPropertyType
        • PolygonPropertyType
      • GeometryPropertyType_GetProperty

        public Object GeometryPropertyType_GetProperty​(Geometry geometry,
                                                       QName name,
                                                       boolean makeEmpty)
        Helper method used to implement ComplexBinding.getProperty(Object, QName) for bindings of geometry reference types:
        • GeometryPropertyType
        • PointPropertyType
        • LineStringPropertyType
        • PolygonPropertyType
      • GeometryPropertyType_GetProperties

        public List<Object[]> GeometryPropertyType_GetProperties​(Geometry geometry)
        Helper method used to implement ComplexBinding.getProperties(Object, XSDElementDeclaration) for bindings of geometry reference types:
        • GeometryPropertyType
        • PointPropertyType
        • LineStringPropertyType
        • PolygonPropertyType
      • AbstractFeatureTypeEncode

        public Element AbstractFeatureTypeEncode​(Object object,
                                                 Document document,
                                                 Element value,
                                                 XSDIdRegistry idSet)
      • AbstractFeatureTypeGetProperties

        public List<Object[]> AbstractFeatureTypeGetProperties​(Object object,
                                                               XSDElementDeclaration element,
                                                               SchemaIndex schemaIndex,
                                                               Configuration configuration)
      • encodeClientProperties

        public static void encodeClientProperties​(Property complex,
                                                  Element element)
        Encode any client properties (XML attributes) found in the UserData map of a ComplexAttribute as XML attributes of the element.
        Parameters:
        complex - the ComplexAttribute to search for client properties
        element - the element to which XML attributes should be added
      • encodeSimpleContent

        public static void encodeSimpleContent​(ComplexAttribute complex,
                                               Document document,
                                               Element element)
        Encode the simpleContent property of a ComplexAttribute (if any) as an XML text node.

        A property named simpleContent is a convention for representing XSD complexType with simpleContent in GeoAPI.

        Parameters:
        complex - the ComplexAttribute to be searched for simpleContent
        document - the containing document
        element - the element to which text node should be added
      • encodeAsText

        public static void encodeAsText​(Document document,
                                        Element element,
                                        Object value)
      • getSimpleContent

        public static Object getSimpleContent​(ComplexAttribute complex)
        Return the simple content of a ComplexAttribute if it represents a complexType with simpleContent, otherwise null.
      • copyNamespaceSupport

        public static NamespaceSupport copyNamespaceSupport​(NamespaceSupport namespaceSupport)
        Deep clones a NamespaceSupport so that it can be used outside of this parse (as its state changes during the parse, and we need to keep all namespace mapping present at this point for later usage)