Save This Page
Home » jboss-5.0.0.CR1-src » org » jboss » mq » xml » [javadoc | source]
org.jboss.mq.xml
public class: XElement [javadoc | source]
java.lang.Object
   org.jboss.mq.xml.XElement
XElement provides an interface to an XML element. An XElement represents an XML element which contains:

It is important to understand the diffrence between an "field" XElement and a non "field" XElement. If an XElement does not contain any sub elements, it is considered a "field" XElement. The getField(String) and getValue() functions will throw an XElementException if they are used on non "attribute" objects. This give you a little bit type checking (You'll get an exception if you try to access the character data of an element that has sub elements).

If XElement is not an field, then it contains other XElements and optionaly some text. The text data can be accessed with the getText() method and the sub elements with the iterator() or with getElementXXX() fuctions. Since XML and thus XElements provide a tree type data structure, traversing the tree to access leaf data can be cumbersom if you have a 'deep' tree. For example, you may have to do: element.getElement("tree").getElement("branch").getElement("leaf") access a XElement 3 levels deep in the tree. To access deep elements easier, XElements lets you use 'reletive' names to access deep elements. Using reletive names, you could access the same element in previous example doing: element.getElement("tree/branch/leaf") When using relative names, keep in mind that "." will get the current XElement, and ".." will get parent XElement. Very similar to how URLs work.

Constructor:
 public XElement(String objectName) 
    Constructs an empty object.
    Parameters:
    objectName - the tag or element name that this object represents.
 public XElement(String objectName,
    Attributes atts) 
    Constructs an XElement with it's parent and metatags set.
    Parameters:
    objectName - the tag or element name that this object represents.
    atts - Description of Parameter
Method from org.jboss.mq.xml.XElement Summary:
add,   addElement,   addField,   containsElement,   containsField,   createFrom,   createFrom,   elements,   getAttribute,   getElement,   getElementsNamed,   getField,   getName,   getOptionalField,   getParent,   getText,   getValue,   isField,   removeFromParent,   setAttribute,   setField,   setName,   setOptionalField,   setValue,   toString,   toString,   toXML
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.jboss.mq.xml.XElement Detail:
 public  void add(String data) 
    Adds and appends string data to the objects text.
 public  void addElement(XElement subObject) 
    Adds an XElement to the set of XElements that are contained by this object.
 public  void addField(String key,
    String value) 
    Adds an XElement to the set of XElements that are contained by this object.
 public boolean containsElement(String objectName) 
    Tests to see if this object contains the specified object.
 public boolean containsField(String objectName) 
    Tests to see if this object contains the specified attribute object.
 public static XElement createFrom(InputStream is) throws XElementException, IOException 
    Constructs an empty object.
 public static XElement createFrom(URL url) throws XElementException, IOException 
    Constructs an empty object.
 public Enumeration elements() 
 public String getAttribute(String key) 
    Returns the value of a meta data value.
 public XElement getElement(String relativeName) throws XElementException 
    Returns the first object contained in this object named relativeName.
 public Enumeration getElementsNamed(String relativeName) 
    Returns all the contained objects with the specified name.
 public String getField(String objectName) throws XElementException 
    Gets the value of a contained attribute object.
 public String getName() 
    Returns the element name (tag name) of this XElement
 public String getOptionalField(String field) throws XElementException 
 public XElement getParent() 
    Get the parent of this object, or the object the contains this one.
 public String getText() 
    Gets the TRIMMED character data that was within this object. This differs from getValue() in that:
    • this fuction will work on attribute and non attribute XElements
    • it will trim both ends of the character data before returning it.
 public String getValue() throws XElementException 
    Gets the character data that was within this object. This fuction can only be used on objects that are attributes.
 public boolean isField() 
    Returns true if the object is an attribute object. An object is an attribute object if it does not contain any other objects.
 public  void removeFromParent() throws XElementException 
    Removes this XElement from the parent.
 public  void setAttribute(String key,
    String value) 
    Sets/Adds a metatag value Only metatags whose value is not empty will display when the toString() methods is called.
 public  void setField(String key,
    String value) throws XElementException 
    Sets/Adds a attribute
 public  void setName(String newName) 
    Sets the object name
 public  void setOptionalField(String field,
    String value) throws XElementException 
 public  void setValue(String value) throws XElementException 
    Gets the character data that was within this object. This fuction can only be used on objects that are attributes.
 public String toString() 
    Serializes this object into a string.
 public String toString(int nestingLevel,
    boolean indent) 
    Serializes this object into a string.
 public String toXML(boolean indent) 
    Serializes this object into a XML document String.