Package org.geotools.xml.gml
Class GMLComplexTypes.AbstractGeometryType
Object
AbstractGeometryType
- All Implemented Interfaces:
ComplexType
,Type
- Enclosing class:
- GMLComplexTypes
This class represents an AbstractGeometryType within the GML Schema. This includes both the data and parsing
functionality associated with an AbstractGeometryType.
- Author:
- dzwiers
- See Also:
-
GMLSchema.GMLComplexType
ComplexType
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
This method is a directive to the parser whether to keep the data around in memory for post processing.boolean
Can I write this object out as element specified?void
Encode value as element on the provided output.findChildElement
(String name) Convinience method used to search this type's children for the requested element by localName.This methos represents the potential 'anyAttribute' declaration's namespace attribute which may occur within a complex type definition.The set of attributes required by this complex type declaration.int
getBlock()
Specifies a mask which denotes which substitution mechanisms may be used for this complex type definition.getChild()
Returns the child element representing the structure of nested child nodes (if any are allowed).Element[]
int
getFinal()
Specifies a mask which denotes which substitution mechanisms prohibited for use by child definitions of this complex type.getId()
Returns the xml schema id of this complexType if one exists, null otherwise.static GMLSchema.GMLComplexType
This will return the intended Java Class for this element type.getName()
This returns the XML Schema declaration name of this type (both complex and simple types have names ...)This is used for validation of an XML document, and represents the targetNamespace of that this type resides in.This is used to represent the heirarchy represented within an xml schema document(s).getValue
(Element element, ElementValue[] value, Attributes attrs, Map<String, Object> hints) This method is intended to receive the child elements in the form of ElementValues (@see ElementValue).boolean
Returns true when the complexType should be considered abstract, as defined by the XML schema of which this complex type definition is a part.boolean
This method is used to publish whether this complexType is at the root of an inheritance tree, or a leaf within an inheritance tree.boolean
isMixed()
Returns true if this complexType allows mixed content (Child elements and a String value).
-
Field Details
-
attributes
-
-
Constructor Details
-
AbstractGeometryType
public AbstractGeometryType()
-
-
Method Details
-
getChildElements
- See Also:
-
getInstance
public static GMLSchema.GMLComplexType getInstance() -
isAbstract
public boolean isAbstract()Description copied from interface:ComplexType
Returns true when the complexType should be considered abstract, as defined by the XML schema of which this complex type definition is a part.- See Also:
-
schema.ComplexType#isAbstract()
-
getAnyAttributeNameSpace
Description copied from interface:ComplexType
This methos represents the potential 'anyAttribute' declaration's namespace attribute which may occur within a complex type definition.- See Also:
-
schema.ComplexType#getAnyAttributeNameSpace()
-
getAttributes
Description copied from interface:ComplexType
The set of attributes required by this complex type declaration. As per the xml schema definition, there is not an implied order to the attributes. For performance reasons an implementor may wich to order the attributes from most common to least commonly used attributes.- See Also:
-
schema.ComplexType#getAttributeDescriptors()
-
getChild
Description copied from interface:ComplexType
Returns the child element representing the structure of nested child nodes (if any are allowed).- See Also:
-
schema.ComplexType#getChildren()
-
getName
Description copied from interface:Type
This returns the XML Schema declaration name of this type (both complex and simple types have names ...)- See Also:
-
schema.ComplexType#getLocalName()
-
getValue
public Object getValue(Element element, ElementValue[] value, Attributes attrs, Map<String, Object> hints) throws SAXExceptionDescription copied from interface:Type
This method is intended to receive the child elements in the form of ElementValues (@see ElementValue). Recall that this is a pairing containing a reference to the type and the actual value (do not call .getValue on the types). This should return the real value (interpreted value) for this element based on it's children. Remember, this is a XML is a tree structure, so if you don't include some children, they are gone forever (so be careful when ignoring data).If the element had #CData (Nested Child Text), this will appear in the first slot, with a null Element.
A SAXNotSupportedException should be thrown when the child's [inherited, default implementation of getValue(ElementValue[],Attributes)] method should be used.
- Returns:
- Object
- Throws:
SAXException
- See Also:
-
org.geotools.xml.xsi.Type#getValue(org.geotools.xml.xsi.Element, org.geotools.xml.xsi.ElementValue[], org.xml.sax.Attributes)
-
getInstanceType
Description copied from interface:Type
This will return the intended Java Class for this element type. For generic complex types this will be an object array. SimpleTypes will match as they are parsed, and custom extensions will also return the appropriate class value.- See Also:
-
org.geotools.xml.xsi.Type#getInstanceType()
-
findChildElement
Description copied from interface:Type
Convinience method used to search this type's children for the requested element by localName.- Parameters:
name
- the element's localName to search for.- See Also:
-
schema.ComplexType#findChildElement(java.lang.String)
-
canEncode
Description copied from interface:Type
Can I write this object out as element specified?- Parameters:
element
- The element which may be used to represent the Object. This is included to allow for child definitions to include addition information where appropriate.value
- An Object which may or may not be encodeable by this type. The value may also be null.- Returns:
- True when the encode method can interpret the given element/value pair into valid xml.
- See Also:
-
encode
public void encode(Element element, Object value, PrintHandler output, Map<String, Object> hints) throws IOException, OperationNotSupportedExceptionDescription copied from interface:Type
Encode value as element on the provided output.This is encoding because the PrintHandler does not have to go back to a stream.
- Parameters:
element
- The original element declaration to which we should encode.value
- The Object to encode.output
- This is where the output should be written to.hints
- For providing additional context information to specific schemas.- Throws:
IOException
- When there is an error with the Writer.OperationNotSupportedException
- When this type cannot be encoded ... and wasn't checked first.- See Also:
-
getBlock
public int getBlock()Description copied from interface:ComplexType
Specifies a mask which denotes which substitution mechanisms may be used for this complex type definition.- Specified by:
getBlock
in interfaceComplexType
- See Also:
-
schema.ComplexType#getBlock()
-
getFinal
public int getFinal()Description copied from interface:ComplexType
Specifies a mask which denotes which substitution mechanisms prohibited for use by child definitions of this complex type.- Specified by:
getFinal
in interfaceComplexType
- See Also:
-
schema.ComplexType#getFinal()
-
getId
Description copied from interface:ComplexType
Returns the xml schema id of this complexType if one exists, null otherwise.- Specified by:
getId
in interfaceComplexType
- See Also:
-
schema.ComplexType#getId()
-
isMixed
public boolean isMixed()Description copied from interface:ComplexType
Returns true if this complexType allows mixed content (Child elements and a String value).- Specified by:
isMixed
in interfaceComplexType
- See Also:
-
schema.ComplexType#isMixed()
-
getNamespace
Description copied from interface:Type
This is used for validation of an XML document, and represents the targetNamespace of that this type resides in.- Specified by:
getNamespace
in interfaceType
- See Also:
-
schema.ComplexType#getNamespace()
-
isDerived
public boolean isDerived()Description copied from interface:ComplexType
This method is used to publish whether this complexType is at the root of an inheritance tree, or a leaf within an inheritance tree. This method should return true when the complexType is not a root of an inheritance tree.- Specified by:
isDerived
in interfaceComplexType
- See Also:
-
schema.ComplexType#isDerived()
-
getParent
Description copied from interface:ComplexType
This is used to represent the heirarchy represented within an xml schema document(s). This is particularily useful, as the parent will have the first attempt to create a real (non Object[]) value of the element. For more information see getValue.- Specified by:
getParent
in interfaceComplexType
- See Also:
-
schema.ComplexType#getParent()
-
cache
Description copied from interface:ComplexType
This method is a directive to the parser whether to keep the data around in memory for post processing. Generally this should return True, except when streaming.- Specified by:
cache
in interfaceComplexType
- Returns:
- True, except when streaming the element.
- See Also:
-
org.geotools.xml.schema.ComplexType#cache()
-