Package org.geotools.xml.filter
Class FilterComplexTypes.PropertyNameType
- Object
-
- PropertyNameType
-
- All Implemented Interfaces:
ComplexType
,Type
- Enclosing class:
- FilterComplexTypes
public static class FilterComplexTypes.PropertyNameType extends Object
-
-
Constructor Summary
Constructors Constructor Description PropertyNameType()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
cache(Element element, Map<String,Object> hints)
This method is a directive to the parser whether to keep the data around in memory for post processing.boolean
canEncode(Element element, Object value, Map<String,Object> hints)
Subclass must override this method to allow encoding.void
encode(Element element, Object value, PrintHandler output, Map<String,Object> hints)
Subclass should implement this, this implementation provides a good OperationsNotSupportedException.Element
findChildElement(String name)
Convinience method used to search this type's children for the requested element by localName.String
getAnyAttributeNameSpace()
This methos represents the potential 'anyAttribute' declaration's namespace attribute which may occur within a complex type definition.Attribute[]
getAttributes()
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.ElementGrouping
getChild()
Returns the child element representing the structure of nested child nodes (if any are allowed).Element[]
getChildElements()
int
getFinal()
Specifies a mask which denotes which substitution mechanisms prohibited for use by child definitions of this complex type.String
getId()
Returns the xml schema id of this complexType if one exists, null otherwise.static ComplexType
getInstance()
Class
getInstanceType()
This will return the intended Java Class for this element type.String
getName()
This returns the XML Schema declaration name of this type (both complex and simple types have names ...)URI
getNamespace()
This is used for validation of an XML document, and represents the targetNamespace of that this type resides in.Type
getParent()
This is used to represent the heirarchy represented within an xml schema document(s).Object
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
isAbstract()
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
isDerived()
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).String
toString()
-
-
-
Method Detail
-
getInstance
public static ComplexType getInstance()
-
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:
ComplexType.isMixed()
-
getParent
public Type 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:
ComplexType.getParent()
-
getChild
public ElementGrouping getChild()
Description copied from interface:ComplexType
Returns the child element representing the structure of nested child nodes (if any are allowed).- See Also:
ComplexType.getChild()
-
getChildElements
public Element[] getChildElements()
- See Also:
ComplexType.getChildElements()
-
getValue
public Object getValue(Element element, ElementValue[] value, Attributes attrs, Map<String,Object> hints) throws SAXException
Description 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:
Type.getValue(org.geotools.xml.schema.Element, org.geotools.xml.schema.ElementValue[], org.xml.sax.Attributes, java.util.Map)
-
getName
public String 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:
Type.getName()
-
getInstanceType
public Class 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:
Type.getInstanceType()
-
canEncode
public boolean canEncode(Element element, Object value, Map<String,Object> hints)
Subclass must override this method to allow encoding.- Specified by:
canEncode
in interfaceType
- 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:
false
, subclass override to allow encoding- See Also:
Type.canEncode(org.geotools.xml.schema.Element, java.lang.Object, java.util.Map)
-
encode
public void encode(Element element, Object value, PrintHandler output, Map<String,Object> hints) throws IOException, OperationNotSupportedException
Subclass should implement this, this implementation provides a good OperationsNotSupportedException.- Specified by:
encode
in interfaceType
- 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:
Type.encode(org.geotools.xml.schema.Element, java.lang.Object, org.geotools.xml.PrintHandler, java.util.Map)
-
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.- Specified by:
isAbstract
in interfaceComplexType
- See Also:
ComplexType.isAbstract()
-
getAnyAttributeNameSpace
public String getAnyAttributeNameSpace()
Description copied from interface:ComplexType
This methos represents the potential 'anyAttribute' declaration's namespace attribute which may occur within a complex type definition.- Specified by:
getAnyAttributeNameSpace
in interfaceComplexType
- See Also:
ComplexType.getAnyAttributeNameSpace()
-
getAttributes
public Attribute[] 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.- Specified by:
getAttributes
in interfaceComplexType
- See Also:
ComplexType.getAttributes()
-
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:
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:
ComplexType.getFinal()
-
getId
public String 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:
ComplexType.getId()
-
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:
ComplexType.isDerived()
-
cache
public boolean cache(Element element, Map<String,Object> hints)
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:
ComplexType.cache(org.geotools.xml.schema.Element, java.util.Map)
-
getNamespace
public URI 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:
Type.getNamespace()
-
findChildElement
public Element findChildElement(String name)
Description copied from interface:Type
Convinience method used to search this type's children for the requested element by localName.- Specified by:
findChildElement
in interfaceType
- Parameters:
name
- the element's localName to search for.- See Also:
Type.findChildElement(java.lang.String)
-
-