Package org.simpleframework.xml.stream
Class InputAttribute
- java.lang.Object
-
- org.simpleframework.xml.stream.InputAttribute
-
class InputAttribute extends java.lang.Object implements InputNode
TheInputAttributeis used to represent an attribute within an element. Rather than representing an attribute as a name value pair of strings, an attribute is instead represented as an input node, in the same manner as an element. The reason for representing an attribute in this way is such that a uniform means of extracting and parsing values can be used for inputs.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringnameRepresents the name of this input attribute instance.private InputNodeparentThis is the parent node to this attribute instance.private java.lang.StringprefixThis is the prefix associated with this attribute node.private java.lang.StringreferenceThis is the reference associated with this attribute node.private java.lang.ObjectsourceThis is the source associated with this input attribute.private java.lang.StringvalueRepresents the value for this input attribute instance.
-
Constructor Summary
Constructors Constructor Description InputAttribute(InputNode parent, java.lang.String name, java.lang.String value)Constructor for theInputAttributeobject.InputAttribute(InputNode parent, Attribute attribute)Constructor for theInputAttributeobject.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description InputNodegetAttribute(java.lang.String name)Because theInputAttributeobject represents an attribute this method will return null.NodeMap<InputNode>getAttributes()Because theInputAttributeobject represents an attribute this method will return an empty map.java.lang.StringgetName()Returns the name of the node that this represents.InputNodegetNext()Because theInputAttributeobject represents an attribute this method will return null.InputNodegetNext(java.lang.String name)Because theInputAttributeobject represents an attribute this method will return null.InputNodegetParent()This is used to acquire theNodethat is the parent of this node.PositiongetPosition()This provides the position of this node within the document.java.lang.StringgetPrefix()This is used to acquire the namespace prefix for the node.java.lang.StringgetReference()This allows the namespace reference URI to be determined.java.lang.ObjectgetSource()This is used to return the source object for this node.java.lang.StringgetValue()Returns the value for the node that this represents.booleanisElement()This is used to determine if this node is an element.booleanisEmpty()This is used to determine if this input node is empty.booleanisRoot()This method is used to determine if this node is the root node for the XML document.voidskip()This method is used to skip all child elements from this element.java.lang.StringtoString()This is the string representation of the attribute.
-
-
-
Field Detail
-
parent
private InputNode parent
This is the parent node to this attribute instance.
-
reference
private java.lang.String reference
This is the reference associated with this attribute node.
-
prefix
private java.lang.String prefix
This is the prefix associated with this attribute node.
-
name
private java.lang.String name
Represents the name of this input attribute instance.
-
value
private java.lang.String value
Represents the value for this input attribute instance.
-
source
private java.lang.Object source
This is the source associated with this input attribute.
-
-
Constructor Detail
-
InputAttribute
public InputAttribute(InputNode parent, java.lang.String name, java.lang.String value)
Constructor for theInputAttributeobject. This is used to create an input attribute using the provided name and value, all other values for this input node will be null.- Parameters:
parent- this is the parent node to this attributename- this is the name for this attribute objectvalue- this is the value for this attribute object
-
InputAttribute
public InputAttribute(InputNode parent, Attribute attribute)
Constructor for theInputAttributeobject. This is used to create an input attribute using the provided name and value, all other values for this input node will be null.- Parameters:
parent- this is the parent node to this attributeattribute- this is the attribute containing the details
-
-
Method Detail
-
getSource
public java.lang.Object getSource()
This is used to return the source object for this node. This is used primarily as a means to determine which XML provider is parsing the source document and producing the nodes. It is useful to be able to determine the XML provider like this.
-
getParent
public InputNode getParent()
This is used to acquire theNodethat is the parent of this node. This will return the node that is the direct parent of this node and allows for siblings to make use of nodes with their parents if required.
-
getPosition
public Position getPosition()
This provides the position of this node within the document. This allows the user of this node to report problems with the location within the document, allowing the XML to be debugged if it does not match the class schema.- Specified by:
getPositionin interfaceInputNode- Returns:
- this returns the position of the XML read cursor
-
getName
public java.lang.String getName()
Returns the name of the node that this represents. This is an immutable property and will not change for this node.
-
getPrefix
public java.lang.String getPrefix()
This is used to acquire the namespace prefix for the node. If there is no namespace prefix for the node then this will return null. Acquiring the prefix enables the qualification of the node to be determined. It also allows nodes to be grouped by its prefix and allows group operations.
-
getReference
public java.lang.String getReference()
This allows the namespace reference URI to be determined. A reference is a globally unique string that allows the node to be identified. Typically the reference will be a URI but it can be any unique string used to identify the node. This allows the node to be identified within the namespace.- Specified by:
getReferencein interfaceInputNode- Returns:
- this returns the associated namespace reference URI
-
getValue
public java.lang.String getValue()
Returns the value for the node that this represents. This is an immutable value for the node and cannot be changed.
-
isRoot
public boolean isRoot()
This method is used to determine if this node is the root node for the XML document. This will return false as this node can never be the root node because it is an attribute.
-
isElement
public boolean isElement()
This is used to determine if this node is an element. This node instance can not be an element so this method returns false. Returning null tells the users of this node that any attributes added to the node map will be permenantly lost.
-
getAttribute
public InputNode getAttribute(java.lang.String name)
Because theInputAttributeobject represents an attribute this method will return null. If nodes are added to the node map the values will not be available here.- Specified by:
getAttributein interfaceInputNode- Parameters:
name- this is the name of the attribute to retrieve- Returns:
- this always returns null for a requested attribute
-
getAttributes
public NodeMap<InputNode> getAttributes()
Because theInputAttributeobject represents an attribute this method will return an empty map. If nodes are added to the node map the values will not be maintained.- Specified by:
getAttributesin interfaceInputNode- Returns:
- this always returns an empty node map of attributes
-
getNext
public InputNode getNext()
Because theInputAttributeobject represents an attribute this method will return null. An attribute is a simple name value pair an so can not contain any child nodes.
-
getNext
public InputNode getNext(java.lang.String name)
Because theInputAttributeobject represents an attribute this method will return null. An attribute is a simple name value pair an so can not contain any child nodes.
-
skip
public void skip()
This method is used to skip all child elements from this element. This allows elements to be effectively skipped such that when parsing a document if an element is not required then that element can be completely removed from the XML.
-
isEmpty
public boolean isEmpty()
This is used to determine if this input node is empty. An empty node is one with no attributes or children. This can be used to determine if a given node represents an empty entity, with which no extra data can be extracted.
-
toString
public java.lang.String toString()
This is the string representation of the attribute. It is used for debugging purposes. When evaluating the attribute the to string can be used to print out the attribute name.- Overrides:
toStringin classjava.lang.Object- Returns:
- this returns a text description of the attribute
-
-