Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## controlP5
Class ControlP5XMLElement

    java.lang.Object
      controlP5.ControlP5XMLElement

    public class ControlP5XMLElement

extends java.lang.Object

XMLElement is a representation of an XML object. The object is able to parse XML code.

Parsing XML Data
  You can parse XML data using the following code:
  `XMLElement xml = new XMLElement();
  FileReader reader = new FileReader("filename.xml");
  xml.parseFromReader(reader);`

Retrieving Attributes
  You can enumerate the attributes of an element using the method `enumerateAttributeNames`. The attribute values can be retrieved using the method `getStringAttribute`. The following example shows how to list the attributes of an element:
  `XMLElement element = ...;
  Enumeration enum = element.getAttributeNames();
  while (enum.hasMoreElements()) {
  String key = (String) enum.nextElement();
  String value = element.getStringAttribute(key);
  System.out.println(key + " = " + value);
  }`

Retrieving Child Elements
  You can enumerate the children of an element using `enumerateChildren`. The number of child elements can be retrieved using `countChildren`.

Elements Containing Character Data
  If an elements contains character data, like in the following example:
  `<title>The Title</title>`
  you can retrieve that data using the method `getContent`.

Subclassing XMLElement
  When subclassing XMLElement, you need to override the method `createAnotherElement` which has to return a new copy of the receiver.

Author:
  Marc De Scheemaecker <cyberelf@mac.com>
See Also:
  `nanoxml.XMLParseException`

Field Summary
`static int` | `NANOXML_MAJOR_VERSION` Major version of NanoXML.
`static int` | `NANOXML_MINOR_VERSION` Minor version of NanoXML.

Constructor Summary
`ControlP5XMLElement()` Creates and initializes a new XML element.
`ControlP5XMLElement(boolean skipLeadingWhitespace)` Creates and initializes a new XML element.
`ControlP5XMLElement(java.util.Hashtable entities)` Creates and initializes a new XML element.
`ControlP5XMLElement(java.util.Hashtable entities, boolean skipLeadingWhitespace)` Creates and initializes a new XML element.
`ControlP5XMLElement(java.util.Hashtable entities, boolean skipLeadingWhitespace, boolean ignoreCase)` Creates and initializes a new XML element.

Method Summary
`void` | `addChild(ControlP5XMLElement child)` Adds a child element.
`void` | `addProperty(java.lang.String name, double value)` Deprecated. Use `setDoubleAttribute` instead.
`void` | `addProperty(java.lang.String key, int value)` Deprecated. Use `setIntAttribute` instead.
`void` | `addProperty(java.lang.String name, java.lang.Object value)` Deprecated. Use `setAttribute` instead.
`int` | `countChildren()` Returns the number of child elements of the element.
`java.util.Enumeration` | `enumerateAttributeNames()` Enumerates the attribute names.
`java.util.Enumeration` | `enumerateChildren()` Enumerates the child elements.
`java.util.Enumeration` | `enumeratePropertyNames()` Deprecated. Use `enumerateAttributeNames` instead.
`java.lang.Object` | `getAttribute(java.lang.String name)` Returns an attribute of the element.
`java.lang.Object` | `getAttribute(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey, boolean allowLiterals)` Returns an attribute by looking up a key in a hashtable.
`java.lang.Object` | `getAttribute(java.lang.String name, java.lang.Object defaultValue)` Returns an attribute of the element.
`boolean` | `getBooleanAttribute(java.lang.String name, java.lang.String trueValue, java.lang.String falseValue, boolean defaultValue)` Returns an attribute of the element.
`java.util.Vector` | `getChildren()` Returns the child elements as a Vector.
`java.lang.String` | `getContent()` Returns the PCDATA content of the object.
`java.lang.String` | `getContents()` Deprecated. Use `getContent` instead.
`double` | `getDoubleAttribute(java.lang.String name)` Returns an attribute of the element.
`double` | `getDoubleAttribute(java.lang.String name, double defaultValue)` Returns an attribute of the element.
`double` | `getDoubleAttribute(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey, boolean allowLiteralNumbers)` Returns an attribute by looking up a key in a hashtable.
`int` | `getIntAttribute(java.lang.String name)` Returns an attribute of the element.
`int` | `getIntAttribute(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey, boolean allowLiteralNumbers)` Returns an attribute by looking up a key in a hashtable.
`int` | `getIntAttribute(java.lang.String name, int defaultValue)` Returns an attribute of the element.
`int` | `getIntProperty(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey)` Deprecated. Use `getIntAttribute` instead.
`int` | `getLineNr()` Returns the line nr in the source data on which the element is found.
`java.lang.String` | `getName()` Returns the name of the element.
`java.lang.String` | `getProperty(java.lang.String name)` Deprecated. Use `getStringAttribute` instead.
`double` | `getProperty(java.lang.String name, double defaultValue)` Deprecated. Use `getDoubleAttribute` instead.
`java.lang.Object` | `getProperty(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey)` Deprecated. Use `getAttribute` instead.
`int` | `getProperty(java.lang.String name, int defaultValue)` Deprecated. Use `getIntAttribute` instead.
`java.lang.String` | `getProperty(java.lang.String name, java.lang.String defaultValue)` Deprecated. Use `getStringAttribute` instead.
`boolean` | `getProperty(java.lang.String key, java.lang.String trueValue, java.lang.String falseValue, boolean defaultValue)` Deprecated. Use `getBooleanAttribute` instead.
`double` | `getSpecialDoubleProperty(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey)` Deprecated. Use `getDoubleAttribute` instead.
`int` | `getSpecialIntProperty(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey)` Deprecated. Use `getIntAttribute` instead.
`java.lang.String` | `getStringAttribute(java.lang.String name)` Returns an attribute of the element.
`java.lang.String` | `getStringAttribute(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey, boolean allowLiterals)` Returns an attribute by looking up a key in a hashtable.
`java.lang.String` | `getStringAttribute(java.lang.String name, java.lang.String defaultValue)` Returns an attribute of the element.
`java.lang.String` | `getStringProperty(java.lang.String name, java.util.Hashtable valueSet, java.lang.String defaultKey)` Deprecated. Use `getStringAttribute` instead.
`java.lang.String` | `getTagName()` Deprecated. Use `getName` instead.
`void` | `parseCharArray(char[] input, int offset, int end)` Reads one XML element from a char array and parses it.
`void` | `parseCharArray(char[] input, int offset, int end, int startingLineNr)` Reads one XML element from a char array and parses it.
`void` | `parseFromReader(java.io.Reader reader)` Reads one XML element from a java.io.Reader and parses it.
`void` | `parseFromReader(java.io.Reader reader, int startingLineNr)` Reads one XML element from a java.io.Reader and parses it.
`void` | `parseString(java.lang.String string)` Reads one XML element from a String and parses it.
`void` | `parseString(java.lang.String string, int offset)` Reads one XML element from a String and parses it.
`void` | `parseString(java.lang.String string, int offset, int end)` Reads one XML element from a String and parses it.
`void` | `parseString(java.lang.String string, int offset, int end, int startingLineNr)` Reads one XML element from a String and parses it.
`void` | `removeAttribute(java.lang.String name)` Removes an attribute.
`void` | `removeChild(ControlP5XMLElement child)` Removes a child element.
`void` | `removeChild(java.lang.String name)` Deprecated. Use `removeAttribute` instead.
`void` | `removeProperty(java.lang.String name)` Deprecated. Use `removeAttribute` instead.
`void` | `setAttribute(java.lang.String name, java.lang.Object value)` Adds or modifies an attribute.
`void` | `setContent(java.lang.String content)` Changes the content string.
`void` | `setDoubleAttribute(java.lang.String name, double value)` Adds or modifies an attribute.
`void` | `setIntAttribute(java.lang.String name, int value)` Adds or modifies an attribute.
`void` | `setName(java.lang.String name)` Changes the name of the element.
`void` | `setTagName(java.lang.String name)` Deprecated. Use `setName` instead.
`java.lang.String` | `toString()` Writes the XML element to a string.
`void` | `write(java.io.Writer writer)` Writes the XML element to a writer.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### NANOXML_MAJOR_VERSION

    public static final int NANOXML_MAJOR_VERSION

  Major version of NanoXML. Classes with the same major and minor version are binary compatible. Classes with the same major version are source compatible. If the major version is different, you may need to modify the client source code.

  See Also:
    `nanoxml.XMLElement#NANOXML_MINOR_VERSION`, Constant Field Values

### NANOXML_MINOR_VERSION

    public static final int NANOXML_MINOR_VERSION

  Minor version of NanoXML. Classes with the same major and minor version are binary compatible. Classes with the same major version are source compatible. If the major version is different, you may need to modify the client source code.

  See Also:
    `nanoxml.XMLElement#NANOXML_MAJOR_VERSION`, Constant Field Values

Constructor Detail

### ControlP5XMLElement

    public ControlP5XMLElement()

  Creates and initializes a new XML element. Calling the construction is equivalent to:
  `new XMLElement(new Hashtable(), false, true)`
  Postconditions:
    - countChildren() => 0
    - enumerateChildren() => empty enumeration
    - enumeratePropertyNames() => empty enumeration
    - getChildren() => empty vector
    - getContent() => ""
    - getLineNr() => 0
    - getName() => null

  See Also:
    `XMLElement(Hashtable)`, `nanoxml.XMLElement#XMLElement(boolean)`, `XMLElement(Hashtable, boolean)`

### ControlP5XMLElement

    public ControlP5XMLElement(java.util.Hashtable entities)

  Creates and initializes a new XML element. Calling the construction is equivalent to:
  `new XMLElement(entities, false, true)`

  Parameters:
    `entities` - The entity conversion table.
  Preconditions:
    - `entities != null`
  Postconditions:
    - countChildren() => 0
    - enumerateChildren() => empty enumeration
    - enumeratePropertyNames() => empty enumeration
    - getChildren() => empty vector
    - getContent() => ""
    - getLineNr() => 0
    - getName() => null
  See Also:
    `nanoxml.XMLElement#XMLElement()`, `nanoxml.XMLElement#XMLElement(boolean)`, `XMLElement(Hashtable, boolean)`

### ControlP5XMLElement

    public ControlP5XMLElement(boolean skipLeadingWhitespace)

  Creates and initializes a new XML element. Calling the construction is equivalent to:
  `new XMLElement(new Hashtable(), skipLeadingWhitespace, true)`

  Parameters:
    `skipLeadingWhitespace` - `true` if leading and trailing whitespace in PCDATA content has to be removed.
  Postconditions:
    - countChildren() => 0
    - enumerateChildren() => empty enumeration
    - enumeratePropertyNames() => empty enumeration
    - getChildren() => empty vector
    - getContent() => ""
    - getLineNr() => 0
    - getName() => null
  See Also:
    `nanoxml.XMLElement#XMLElement()`, `XMLElement(Hashtable)`, `XMLElement(Hashtable, boolean)`

### ControlP5XMLElement

    public ControlP5XMLElement(java.util.Hashtable entities,
                               boolean skipLeadingWhitespace)

  Creates and initializes a new XML element. Calling the construction is equivalent to:
  `new XMLElement(entities, skipLeadingWhitespace, true)`

  Parameters:
    `entities` - The entity conversion table.
    `skipLeadingWhitespace` - `true` if leading and trailing whitespace in PCDATA content has to be removed.
  Preconditions:
    - `entities != null`
  Postconditions:
    - countChildren() => 0
    - enumerateChildren() => empty enumeration
    - enumeratePropertyNames() => empty enumeration
    - getChildren() => empty vector
    - getContent() => ""
    - getLineNr() => 0
    - getName() => null
  See Also:
    `nanoxml.XMLElement#XMLElement()`, `nanoxml.XMLElement#XMLElement(boolean)`, `XMLElement(Hashtable)`

### ControlP5XMLElement

    public ControlP5XMLElement(java.util.Hashtable entities,
                               boolean skipLeadingWhitespace,
                               boolean ignoreCase)

  Creates and initializes a new XML element.

  Parameters:
    `entities` - The entity conversion table.
    `skipLeadingWhitespace` - `true` if leading and trailing whitespace in PCDATA content has to be removed.
    `ignoreCase` - `true` if the case of element and attribute names have to be ignored.
  Preconditions:
    - `entities != null`
  Postconditions:
    - countChildren() => 0
    - enumerateChildren() => empty enumeration
    - enumeratePropertyNames() => empty enumeration
    - getChildren() => empty vector
    - getContent() => ""
    - getLineNr() => 0
    - getName() => null
  See Also:
    `nanoxml.XMLElement#XMLElement()`, `nanoxml.XMLElement#XMLElement(boolean)`, `XMLElement(Hashtable)`, `XMLElement(Hashtable, boolean)`

Method Detail

### addChild

    public void addChild(ControlP5XMLElement child)

  Adds a child element.

  Parameters:
    `child` - The child element to add.
  Preconditions:
    - `child != null`
    - `child.getName() != null`
    - `child` does not have a parent element
  Postconditions:
    - countChildren() => old.countChildren() + 1
    - enumerateChildren() => old.enumerateChildren() + child
    - getChildren() => old.enumerateChildren() + child
  See Also:
    `nanoxml.XMLElement#countChildren()`, `nanoxml.XMLElement#enumerateChildren()`, `nanoxml.XMLElement#getChildren()`, `removeChild(XMLElement)`

### setAttribute

    public void setAttribute(java.lang.String name,
                             java.lang.Object value)

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `value != null`
  Postconditions:
    - enumerateAttributeNames() => old.enumerateAttributeNames() + name
    - getAttribute(name) => value
  See Also:
    `setDoubleAttribute(String, double)`, `setIntAttribute(String, int)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getAttribute(String)`, `getAttribute(String, Object)`, `getAttribute(String, Hashtable, String, boolean)`, `getStringAttribute(String)`, `getStringAttribute(String, String)`, `getStringAttribute(String, Hashtable, String, boolean)`

### addProperty

    public void addProperty(java.lang.String name,
                            java.lang.Object value)

  Deprecated. Use `setAttribute` instead.

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.

### setIntAttribute

    public void setIntAttribute(java.lang.String name,
                                int value)

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  Postconditions:
    - enumerateAttributeNames() => old.enumerateAttributeNames() + name
    - getIntAttribute(name) => value
  See Also:
    `setDoubleAttribute(String, double)`, `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getIntAttribute(String)`, `getIntAttribute(String, int)`, `getIntAttribute(String, Hashtable, String, boolean)`

### addProperty

    public void addProperty(java.lang.String key,
                            int value)

  Deprecated. Use `setIntAttribute` instead.

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.

### setDoubleAttribute

    public void setDoubleAttribute(java.lang.String name,
                                   double value)

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  Postconditions:
    - enumerateAttributeNames() => old.enumerateAttributeNames() + name
    - getDoubleAttribute(name) => value
  See Also:
    `setIntAttribute(String, int)`, `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getDoubleAttribute(String)`, `getDoubleAttribute(String, double)`, `getDoubleAttribute(String, Hashtable, String, boolean)`

### addProperty

    public void addProperty(java.lang.String name,
                            double value)

  Deprecated. Use `setDoubleAttribute` instead.

  Adds or modifies an attribute.

  Parameters:
    `name` - The name of the attribute.
    `value` - The value of the attribute.

### countChildren

    public int countChildren()

  Returns the number of child elements of the element.
  Postconditions:
    - `result >= 0`

  See Also:
    `addChild(XMLElement)`, `nanoxml.XMLElement#enumerateChildren()`, `nanoxml.XMLElement#getChildren()`, `removeChild(XMLElement)`

### enumerateAttributeNames

    public java.util.Enumeration enumerateAttributeNames()

  Enumerates the attribute names.
  Postconditions:
    - `result != null`

  See Also:
    `setDoubleAttribute(String, double)`, `setIntAttribute(String, int)`, `setAttribute(String, Object)`, `removeAttribute(String)`, `getAttribute(String)`, `getAttribute(String, String)`, `getAttribute(String, Hashtable, String, boolean)`, `getStringAttribute(String)`, `getStringAttribute(String, String)`, `getStringAttribute(String, Hashtable, String, boolean)`, `getIntAttribute(String)`, `getIntAttribute(String, int)`, `getIntAttribute(String, Hashtable, String, boolean)`, `getDoubleAttribute(String)`, `getDoubleAttribute(String, double)`, `getDoubleAttribute(String, Hashtable, String, boolean)`, `getBooleanAttribute(String, String, String, boolean)`

### enumeratePropertyNames

    public java.util.Enumeration enumeratePropertyNames()

  Deprecated. Use `enumerateAttributeNames` instead.

  Enumerates the attribute names.

### enumerateChildren

    public java.util.Enumeration enumerateChildren()

  Enumerates the child elements.
  Postconditions:
    - `result != null`

  See Also:
    `addChild(XMLElement)`, `nanoxml.XMLElement#countChildren()`, `nanoxml.XMLElement#getChildren()`, `removeChild(XMLElement)`

### getChildren

    public java.util.Vector getChildren()

  Returns the child elements as a Vector. It is safe to modify this Vector.
  Postconditions:
    - `result != null`

  See Also:
    `addChild(XMLElement)`, `nanoxml.XMLElement#countChildren()`, `nanoxml.XMLElement#enumerateChildren()`, `removeChild(XMLElement)`

### getContents

    public java.lang.String getContents()

  Deprecated. Use `getContent` instead.

  Returns the PCDATA content of the object. If there is no such content, `null` is returned.

### getContent

    public java.lang.String getContent()

  Returns the PCDATA content of the object. If there is no such content, `null` is returned.

  See Also:
    `setContent(String)`

### getLineNr

    public int getLineNr()

  Returns the line nr in the source data on which the element is found. This method returns `0` there is no associated source data.
  Postconditions:
    - `result >= 0`

### getAttribute

    public java.lang.Object getAttribute(java.lang.String name)

  Returns an attribute of the element. If the attribute doesn't exist, `null` is returned.

  Parameters:
    `name` - The name of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getAttribute(String, Object)`, `getAttribute(String, Hashtable, String, boolean)`

### getAttribute

    public java.lang.Object getAttribute(java.lang.String name,
                                         java.lang.Object defaultValue)

  Returns an attribute of the element. If the attribute doesn't exist, `defaultValue` is returned.

  Parameters:
    `name` - The name of the attribute.
    `defaultValue` - Key to use if the attribute is missing.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getAttribute(String)`, `getAttribute(String, Hashtable, String, boolean)`

### getAttribute

    public java.lang.Object getAttribute(java.lang.String name,
                                         java.util.Hashtable valueSet,
                                         java.lang.String defaultKey,
                                         boolean allowLiterals)

  Returns an attribute by looking up a key in a hashtable. If the attribute doesn't exist, the value corresponding to defaultKey is returned.

  As an example, if valueSet contains the mapping `"one" => "1"` and the element contains the attribute `attr="one"`, then `getAttribute("attr", mapping, defaultKey, false)` returns `"1"`.

  Parameters:
    `name` - The name of the attribute.
    `valueSet` - Hashtable mapping keys to values.
    `defaultKey` - Key to use if the attribute is missing.
    `allowLiterals` - `true` if literals are valid.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `valueSet` != null
    - the keys of `valueSet` are strings
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getAttribute(String)`, `getAttribute(String, Object)`

### getStringAttribute

    public java.lang.String getStringAttribute(java.lang.String name)

  Returns an attribute of the element. If the attribute doesn't exist, `null` is returned.

  Parameters:
    `name` - The name of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getStringAttribute(String, String)`, `getStringAttribute(String, Hashtable, String, boolean)`

### getStringAttribute

    public java.lang.String getStringAttribute(java.lang.String name,
                                               java.lang.String defaultValue)

  Returns an attribute of the element. If the attribute doesn't exist, `defaultValue` is returned.

  Parameters:
    `name` - The name of the attribute.
    `defaultValue` - Key to use if the attribute is missing.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getStringAttribute(String)`, `getStringAttribute(String, Hashtable, String, boolean)`

### getStringAttribute

    public java.lang.String getStringAttribute(java.lang.String name,
                                               java.util.Hashtable valueSet,
                                               java.lang.String defaultKey,
                                               boolean allowLiterals)

  Returns an attribute by looking up a key in a hashtable. If the attribute doesn't exist, the value corresponding to defaultKey is returned.

  As an example, if valueSet contains the mapping `"one" => "1"` and the element contains the attribute `attr="one"`, then `getAttribute("attr", mapping, defaultKey, false)` returns `"1"`.

  Parameters:
    `name` - The name of the attribute.
    `valueSet` - Hashtable mapping keys to values.
    `defaultKey` - Key to use if the attribute is missing.
    `allowLiterals` - `true` if literals are valid.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `valueSet` != null
    - the keys of `valueSet` are strings
    - the values of `valueSet` are strings
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getStringAttribute(String)`, `getStringAttribute(String, String)`

### getIntAttribute

    public int getIntAttribute(java.lang.String name)

  Returns an attribute of the element. If the attribute doesn't exist, `0` is returned.

  Parameters:
    `name` - The name of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setIntAttribute(String, int)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getIntAttribute(String, int)`, `getIntAttribute(String, Hashtable, String, boolean)`

### getIntAttribute

    public int getIntAttribute(java.lang.String name,
                               int defaultValue)

  Returns an attribute of the element. If the attribute doesn't exist, `defaultValue` is returned.

  Parameters:
    `name` - The name of the attribute.
    `defaultValue` - Key to use if the attribute is missing.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setIntAttribute(String, int)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getIntAttribute(String)`, `getIntAttribute(String, Hashtable, String, boolean)`

### getIntAttribute

    public int getIntAttribute(java.lang.String name,
                               java.util.Hashtable valueSet,
                               java.lang.String defaultKey,
                               boolean allowLiteralNumbers)

  Returns an attribute by looking up a key in a hashtable. If the attribute doesn't exist, the value corresponding to defaultKey is returned.

  As an example, if valueSet contains the mapping `"one" => 1` and the element contains the attribute `attr="one"`, then `getIntAttribute("attr", mapping, defaultKey, false)` returns `1`.

  Parameters:
    `name` - The name of the attribute.
    `valueSet` - Hashtable mapping keys to values.
    `defaultKey` - Key to use if the attribute is missing.
    `allowLiteralNumbers` - `true` if literal numbers are valid.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `valueSet` != null
    - the keys of `valueSet` are strings
    - the values of `valueSet` are Integer objects
    - `defaultKey` is either `null` , a key in `valueSet` or an integer.
  See Also:
    `setIntAttribute(String, int)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getIntAttribute(String)`, `getIntAttribute(String, int)`

### getDoubleAttribute

    public double getDoubleAttribute(java.lang.String name)

  Returns an attribute of the element. If the attribute doesn't exist, `0.0` is returned.

  Parameters:
    `name` - The name of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setDoubleAttribute(String, double)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getDoubleAttribute(String, double)`, `getDoubleAttribute(String, Hashtable, String, boolean)`

### getDoubleAttribute

    public double getDoubleAttribute(java.lang.String name,
                                     double defaultValue)

  Returns an attribute of the element. If the attribute doesn't exist, `defaultValue` is returned.

  Parameters:
    `name` - The name of the attribute.
    `defaultValue` - Key to use if the attribute is missing.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  See Also:
    `setDoubleAttribute(String, double)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getDoubleAttribute(String)`, `getDoubleAttribute(String, Hashtable, String, boolean)`

### getDoubleAttribute

    public double getDoubleAttribute(java.lang.String name,
                                     java.util.Hashtable valueSet,
                                     java.lang.String defaultKey,
                                     boolean allowLiteralNumbers)

  Returns an attribute by looking up a key in a hashtable. If the attribute doesn't exist, the value corresponding to defaultKey is returned.

  As an example, if valueSet contains the mapping `"one" => 1.0` and the element contains the attribute `attr="one"`, then `getDoubleAttribute("attr", mapping, defaultKey, false)` returns `1.0`.

  Parameters:
    `name` - The name of the attribute.
    `valueSet` - Hashtable mapping keys to values.
    `defaultKey` - Key to use if the attribute is missing.
    `allowLiteralNumbers` - `true` if literal numbers are valid.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `valueSet != null`
    - the keys of `valueSet` are strings
    - the values of `valueSet` are Double objects
    - `defaultKey` is either `null` , a key in `valueSet` or a double.
  See Also:
    `setDoubleAttribute(String, double)`, `nanoxml.XMLElement#enumerateAttributeNames()`, `getDoubleAttribute(String)`, `getDoubleAttribute(String, double)`

### getBooleanAttribute

    public boolean getBooleanAttribute(java.lang.String name,
                                       java.lang.String trueValue,
                                       java.lang.String falseValue,
                                       boolean defaultValue)

  Returns an attribute of the element. If the attribute doesn't exist, `defaultValue` is returned. If the value of the attribute is equal to `trueValue`, `true` is returned. If the value of the attribute is equal to `falseValue`, `false` is returned. If the value doesn't match `trueValue` or `falseValue`, an exception is thrown.

  Parameters:
    `name` - The name of the attribute.
    `trueValue` - The value associated with `true`.
    `falseValue` - The value associated with `true`.
    `defaultValue` - Value to use if the attribute is missing.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
    - `trueValue` and `falseValue` are different strings.
  See Also:
    `setAttribute(String, Object)`, `removeAttribute(String)`, `nanoxml.XMLElement#enumerateAttributeNames()`

### getIntProperty

    public int getIntProperty(java.lang.String name,
                              java.util.Hashtable valueSet,
                              java.lang.String defaultKey)

  Deprecated. Use `getIntAttribute` instead.

  Returns an attribute by looking up a key in a hashtable.

### getProperty

    public java.lang.String getProperty(java.lang.String name)

  Deprecated. Use `getStringAttribute` instead.

  Returns an attribute.

### getProperty

    public java.lang.String getProperty(java.lang.String name,
                                        java.lang.String defaultValue)

  Deprecated. Use `getStringAttribute` instead.

  Returns an attribute.

### getProperty

    public int getProperty(java.lang.String name,
                           int defaultValue)

  Deprecated. Use `getIntAttribute` instead.

  Returns an attribute.

### getProperty

    public double getProperty(java.lang.String name,
                              double defaultValue)

  Deprecated. Use `getDoubleAttribute` instead.

  Returns an attribute.

### getProperty

    public boolean getProperty(java.lang.String key,
                               java.lang.String trueValue,
                               java.lang.String falseValue,
                               boolean defaultValue)

  Deprecated. Use `getBooleanAttribute` instead.

  Returns an attribute.

### getProperty

    public java.lang.Object getProperty(java.lang.String name,
                                        java.util.Hashtable valueSet,
                                        java.lang.String defaultKey)

  Deprecated. Use `getAttribute` instead.

  Returns an attribute by looking up a key in a hashtable.

### getStringProperty

    public java.lang.String getStringProperty(java.lang.String name,
                                              java.util.Hashtable valueSet,
                                              java.lang.String defaultKey)

  Deprecated. Use `getStringAttribute` instead.

  Returns an attribute by looking up a key in a hashtable.

### getSpecialIntProperty

    public int getSpecialIntProperty(java.lang.String name,
                                     java.util.Hashtable valueSet,
                                     java.lang.String defaultKey)

  Deprecated. Use `getIntAttribute` instead.

  Returns an attribute by looking up a key in a hashtable.

### getSpecialDoubleProperty

    public double getSpecialDoubleProperty(java.lang.String name,
                                           java.util.Hashtable valueSet,
                                           java.lang.String defaultKey)

  Deprecated. Use `getDoubleAttribute` instead.

  Returns an attribute by looking up a key in a hashtable.

### getName

    public java.lang.String getName()

  Returns the name of the element.

  See Also:
    `setName(String)`

### getTagName

    public java.lang.String getTagName()

  Deprecated. Use `getName` instead.

  Returns the name of the element.

### parseFromReader

    public void parseFromReader(java.io.Reader reader)
                         throws java.io.IOException,
                                ControlP5XMLParseException

  Reads one XML element from a java.io.Reader and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
  Preconditions:
    - `reader != null`
    - `reader` is not closed
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
    - the reader points to the first character following the last '>' character of the XML element
  Throws:
    `java.io.IOException` - If an error occured while reading the input.
    `nanoxml.XMLParseException` - If an error occured while parsing the read data.
    `ControlP5XMLParseException`

### parseFromReader

    public void parseFromReader(java.io.Reader reader,
                                int startingLineNr)
                         throws java.io.IOException,
                                ControlP5XMLParseException

  Reads one XML element from a java.io.Reader and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `startingLineNr` - The line number of the first line in the data.
  Preconditions:
    - `reader != null`
    - `reader` is not closed
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
    - the reader points to the first character following the last '>' character of the XML element
  Throws:
    `java.io.IOException` - If an error occured while reading the input.
    `nanoxml.XMLParseException` - If an error occured while parsing the read data.
    `ControlP5XMLParseException`

### parseString

    public void parseString(java.lang.String string)
                     throws ControlP5XMLParseException

  Reads one XML element from a String and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
  Preconditions:
    - `string != null`
    - `string.length() > 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### parseString

    public void parseString(java.lang.String string,
                            int offset)
                     throws ControlP5XMLParseException

  Reads one XML element from a String and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `offset` - The first character in `string` to scan.
  Preconditions:
    - `string != null`
    - `offset < string.length()`
    - `offset >= 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### parseString

    public void parseString(java.lang.String string,
                            int offset,
                            int end)
                     throws ControlP5XMLParseException

  Reads one XML element from a String and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `offset` - The first character in `string` to scan.
    `end` - The character where to stop scanning. This character is not scanned.
  Preconditions:
    - `string != null`
    - `end <= string.length()`
    - `offset < end`
    - `offset >= 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### parseString

    public void parseString(java.lang.String string,
                            int offset,
                            int end,
                            int startingLineNr)
                     throws ControlP5XMLParseException

  Reads one XML element from a String and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `offset` - The first character in `string` to scan.
    `end` - The character where to stop scanning. This character is not scanned.
    `startingLineNr` - The line number of the first line in the data.
  Preconditions:
    - `string != null`
    - `end <= string.length()`
    - `offset < end`
    - `offset >= 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### parseCharArray

    public void parseCharArray(char[] input,
                               int offset,
                               int end)
                        throws ControlP5XMLParseException

  Reads one XML element from a char array and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `offset` - The first character in `string` to scan.
    `end` - The character where to stop scanning. This character is not scanned.
  Preconditions:
    - `input != null`
    - `end <= input.length`
    - `offset < end`
    - `offset >= 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### parseCharArray

    public void parseCharArray(char[] input,
                               int offset,
                               int end,
                               int startingLineNr)
                        throws ControlP5XMLParseException

  Reads one XML element from a char array and parses it.

  Parameters:
    `reader` - The reader from which to retrieve the XML data.
    `offset` - The first character in `string` to scan.
    `end` - The character where to stop scanning. This character is not scanned.
    `startingLineNr` - The line number of the first line in the data.
  Preconditions:
    - `input != null`
    - `end <= input.length`
    - `offset < end`
    - `offset >= 0`
  Postconditions:
    - the state of the receiver is updated to reflect the XML element parsed from the reader
  Throws:
    `nanoxml.XMLParseException` - If an error occured while parsing the string.
    `ControlP5XMLParseException`

### removeChild

    public void removeChild(ControlP5XMLElement child)

  Removes a child element.

  Parameters:
    `child` - The child element to remove.
  Preconditions:
    - `child != null`
    - `child` is a child element of the receiver
  Postconditions:
    - countChildren() => old.countChildren() - 1
    - enumerateChildren() => old.enumerateChildren() - child
    - getChildren() => old.enumerateChildren() - child
  See Also:
    `addChild(XMLElement)`, `nanoxml.XMLElement#countChildren()`, `nanoxml.XMLElement#enumerateChildren()`, `nanoxml.XMLElement#getChildren()`

### removeAttribute

    public void removeAttribute(java.lang.String name)

  Removes an attribute.

  Parameters:
    `name` - The name of the attribute.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
  Postconditions:
    - enumerateAttributeNames() => old.enumerateAttributeNames() - name
    - getAttribute(name) => `null`
  See Also:
    `nanoxml.XMLElement#enumerateAttributeNames()`, `setDoubleAttribute(String, double)`, `setIntAttribute(String, int)`, `setAttribute(String, Object)`, `getAttribute(String)`, `getAttribute(String, Object)`, `getAttribute(String, Hashtable, String, boolean)`, `getStringAttribute(String)`, `getStringAttribute(String, String)`, `getStringAttribute(String, Hashtable, String, boolean)`, `getIntAttribute(String)`, `getIntAttribute(String, int)`, `getIntAttribute(String, Hashtable, String, boolean)`, `getDoubleAttribute(String)`, `getDoubleAttribute(String, double)`, `getDoubleAttribute(String, Hashtable, String, boolean)`, `getBooleanAttribute(String, String, String, boolean)`

### removeProperty

    public void removeProperty(java.lang.String name)

  Deprecated. Use `removeAttribute` instead.

  Removes an attribute.

  Parameters:
    `name` - The name of the attribute.

### removeChild

    public void removeChild(java.lang.String name)

  Deprecated. Use `removeAttribute` instead.

  Removes an attribute.

  Parameters:
    `name` - The name of the attribute.

### setContent

    public void setContent(java.lang.String content)

  Changes the content string.

  Parameters:
    `content` - The new content string.

### setTagName

    public void setTagName(java.lang.String name)

  Deprecated. Use `setName` instead.

  Changes the name of the element.

  Parameters:
    `name` - The new name.

### setName

    public void setName(java.lang.String name)

  Changes the name of the element.

  Parameters:
    `name` - The new name.
  Preconditions:
    - `name != null`
    - `name` is a valid XML identifier
See Also:
  `nanoxml.XMLElement#getName()`

### toString

    public java.lang.String toString()

  Writes the XML element to a string.

  Overrides:
    `toString` in class `java.lang.Object`
  See Also:
    `write(Writer)`

### write

    public void write(java.io.Writer writer)
               throws java.io.IOException

  Writes the XML element to a writer.

  Parameters:
    `writer` - The writer to write the XML data to.
  Preconditions:
    - `writer != null`
    - `writer` is not closed
Throws:
  `java.io.IOException` - If the data could not be written to the writer.
See Also:
  `nanoxml.XMLElement#toString()`

Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

processing library controlP5 by Andreas Schlegel. (c) 2011