diva.compat.xml
Class XmlElement

java.lang.Object
  extended by diva.compat.xml.XmlElement

public class XmlElement
extends Object

An XmlElement is a node of a tree representing an XML file. It is a concrete class. An XmlReader object will construct a tree of XmlElements from an XML file and place it into an XmlDocument. Applications can traverse a tree of XmlElements to extract data or build their own application-specific data structure. They can also construct a tree of XmlElements and add it to an XmlDocument and generate an XML output file.

Version:
$Revision: 1.1 $
Author:
Steve Neuendorffer, John Reekie

Constructor Summary
XmlElement()
          Create a new XmlElement of unknown type.
XmlElement(String type)
          Create a new XmlElement with element type given by the string.
XmlElement(String type, Map attrs)
          Create a new XmlElement with element type with the given name and the given attributes.
 
Method Summary
 void addElement(XmlElement e)
          Add a child element to this element.
 void appendPCData(String s)
          Add the String to the end of the current PCDATA for this element.
 Iterator attributeNames()
          Return an enumeration over the names of the attributes in this schematic.
 boolean containsElement(XmlElement elt)
          Test if this element contains the given element.
 int elementCount()
          Return the number of child elements.
 Iterator elements()
          Return an Iterator of all the child elements of this element.
 Iterator elements(String type)
          Return an Iterator of all the child elements of this element that have the given element type.
 String getAttribute(String name)
          Return the value of the attribute with the given name, or null if there isn't one.
 Map getAttributeMap()
          Return the map from attribute names to value.
 List getChildList()
          Return the list of child elements.
 XmlElement getElement(String type)
          Return the first child element of this element with the given type, or null if there isn't one.
 XmlElement getElement(String type, String name)
          Return the first child element of this element with the given type and name, or null if there isn't one.
 XmlElement getParent()
          Return the parent element of this element, or null if it has no parent.
 String getPCData()
          Return the PCData that is associated with this XmlElement.
 String getType()
          Return the type of this XmlElement.
 boolean hasAttribute(String name)
          Test if this element has the attribute with the given name.
 void removeAttribute(String name)
          Remove an attribute from this element
 void removeElement(XmlElement e)
          Remove a child element from this element
 void setAttribute(String name, String value)
          Set the attribute with the given name to the given value.
 void setParent(XmlElement p)
          Set the parent element of this element.
 void setPCData(String s)
          Set the text of this element to the given string.
 void setType(String s)
          Set the type of this element
 String toString()
          Convert this element to a string in XML
 void writeXML(Writer out, String prefix)
          Print this element to a Writer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

XmlElement

public XmlElement(String type)
Create a new XmlElement with element type given by the string. The element has no attributes and no child elements.

Parameters:
name - The element type

XmlElement

public XmlElement()
Create a new XmlElement of unknown type.


XmlElement

public XmlElement(String type,
                  Map attrs)
Create a new XmlElement with element type with the given name and the given attributes. The element starts with no child elements.

Parameters:
name - The element type
attrs - The attributes of this XmlElement.
Method Detail

addElement

public void addElement(XmlElement e)
Add a child element to this element. Child elements are ordered.


appendPCData

public void appendPCData(String s)
Add the String to the end of the current PCDATA for this element.


attributeNames

public Iterator attributeNames()
Return an enumeration over the names of the attributes in this schematic. There is no order guarantee on the attributes.


containsElement

public boolean containsElement(XmlElement elt)
Test if this element contains the given element. This is included mainly to allow test suites to be written. In general, chech the parent of the child.


elementCount

public int elementCount()
Return the number of child elements.


elements

public Iterator elements()
Return an Iterator of all the child elements of this element. The elements are generated in the order in which they were added.


elements

public Iterator elements(String type)
Return an Iterator of all the child elements of this element that have the given element type.

Returns:
an Iterator of XmlElements

getAttribute

public String getAttribute(String name)
Return the value of the attribute with the given name, or null if there isn't one.


getAttributeMap

public Map getAttributeMap()
Return the map from attribute names to value. This returns the internal object that holds attributes, and is provided so that more sophisticated operations than provided by the methods in this interface can be implemented when needed. Note: if you add any attributes to this list, you must be sure that the value is a String.


getChildList

public List getChildList()
Return the list of child elements. This returns the internal object that holds child elements, and is provided so that more sophisticated operations than provided by the methods in this interface can be implemented when needed. Note: if you add any elements to this list, you MUST call the setParent() method of that element with this object.


getElement

public XmlElement getElement(String type)
Return the first child element of this element with the given type, or null if there isn't one.


getElement

public XmlElement getElement(String type,
                             String name)
Return the first child element of this element with the given type and name, or null if there isn't one.


getType

public String getType()
Return the type of this XmlElement. The type is immutably set when the XmlElement is created.


getParent

public XmlElement getParent()
Return the parent element of this element, or null if it has no parent.


getPCData

public String getPCData()
Return the PCData that is associated with this XmlElement.


hasAttribute

public boolean hasAttribute(String name)
Test if this element has the attribute with the given name.


removeAttribute

public void removeAttribute(String name)
Remove an attribute from this element


removeElement

public void removeElement(XmlElement e)
Remove a child element from this element


setAttribute

public void setAttribute(String name,
                         String value)
Set the attribute with the given name to the given value. Throw an exception if there is no attribute with the given name in this schematic.


setParent

public void setParent(XmlElement p)
Set the parent element of this element.


setPCData

public void setPCData(String s)
Set the text of this element to the given string.


setType

public void setType(String s)
Set the type of this element


toString

public String toString()
Convert this element to a string in XML

Overrides:
toString in class Object

writeXML

public void writeXML(Writer out,
                     String prefix)
              throws IOException
Print this element to a Writer

Throws:
IOException


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.