Package org.simpleframework.xml.stream
Class InputAttribute
java.lang.Object
org.simpleframework.xml.stream.InputAttribute
The
InputAttribute
is 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
FieldsModifier and TypeFieldDescriptionprivate String
Represents the name of this input attribute instance.private InputNode
This is the parent node to this attribute instance.private String
This is the prefix associated with this attribute node.private String
This is the reference associated with this attribute node.private Object
This is the source associated with this input attribute.private String
Represents the value for this input attribute instance. -
Constructor Summary
ConstructorsConstructorDescriptionInputAttribute
(InputNode parent, String name, String value) Constructor for theInputAttribute
object.InputAttribute
(InputNode parent, Attribute attribute) Constructor for theInputAttribute
object. -
Method Summary
Modifier and TypeMethodDescriptiongetAttribute
(String name) Because theInputAttribute
object represents an attribute this method will return null.Because theInputAttribute
object represents an attribute this method will return an empty map.getName()
Returns the name of the node that this represents.getNext()
Because theInputAttribute
object represents an attribute this method will return null.Because theInputAttribute
object represents an attribute this method will return null.This is used to acquire theNode
that is the parent of this node.This provides the position of this node within the document.This is used to acquire the namespace prefix for the node.This allows the namespace reference URI to be determined.This is used to return the source object for this node.getValue()
Returns the value for the node that this represents.boolean
This is used to determine if this node is an element.boolean
isEmpty()
This is used to determine if this input node is empty.boolean
isRoot()
This method is used to determine if this node is the root node for the XML document.void
skip()
This method is used to skip all child elements from this element.toString()
This is the string representation of the attribute.
-
Field Details
-
parent
This is the parent node to this attribute instance. -
reference
This is the reference associated with this attribute node. -
prefix
This is the prefix associated with this attribute node. -
name
Represents the name of this input attribute instance. -
value
Represents the value for this input attribute instance. -
source
This is the source associated with this input attribute.
-
-
Constructor Details
-
InputAttribute
Constructor for theInputAttribute
object. 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
Constructor for theInputAttribute
object. 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 Details
-
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
This is used to acquire theNode
that 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
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:
getPosition
in interfaceInputNode
- Returns:
- this returns the position of the XML read cursor
-
getName
Returns the name of the node that this represents. This is an immutable property and will not change for this node. -
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
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:
getReference
in interfaceInputNode
- Returns:
- this returns the associated namespace reference URI
-
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
Because theInputAttribute
object 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:
getAttribute
in interfaceInputNode
- Parameters:
name
- this is the name of the attribute to retrieve- Returns:
- this always returns null for a requested attribute
-
getAttributes
Because theInputAttribute
object 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:
getAttributes
in interfaceInputNode
- Returns:
- this always returns an empty node map of attributes
-
getNext
Because theInputAttribute
object 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
Because theInputAttribute
object 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
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.
-