Class RXElement

java.lang.Object
com.inductiveautomation.rm.archiver.RXAttribute
com.inductiveautomation.rm.archiver.RXElement

public class RXElement extends RXAttribute
The RXElement class represents an XML element and simply manages a list of XML elements (recursively) and a list of attributes. It also inherrits from RXAttribute to get name and value.

For the sake of efficiency, when you need to iterate over a list of elements for a given name, you can do this:

for(int i=anElement.indexOf(elementName); i>=0; i=anElement.indexOf(elementName, i+1)) anElement.get(i).doThis();

  • Constructor Details

    • RXElement

      public RXElement()
      Creates a new element.
    • RXElement

      public RXElement(String aName)
      Creates a new element with given name.
    • RXElement

      public RXElement(String aName, String aValue)
      Creates a new element with given name and value.
  • Method Details

    • getElement

      public static RXElement getElement(Object aSource)
      Returns a new element hierarchy loaded from aSource (File, String path, InputStream or whatever).
    • getAttributeCount

      public int getAttributeCount()
      Returns the number of child attributes for this element.
    • getAttribute

      public RXAttribute getAttribute(int anIndex)
      Returns the specific child attribute at the given index.
    • getAttributes

      public List<RXAttribute> getAttributes()
      Returns the list of child attributes for this element.
    • addAttribute

      public void addAttribute(RXAttribute anAttribute)
      Adds an attribute.
    • addAttribute

      public void addAttribute(RXAttribute anAttribute, int anIndex)
      Adds an attribute at given index.
    • removeAttribute

      public RXAttribute removeAttribute(int anIndex)
      Removes the attribute at given index.
    • removeAttribute

      public int removeAttribute(RXAttribute anAttribute)
      Removes the given attribute.
    • removeAttribute

      public RXAttribute removeAttribute(String aName)
      Removes the attribute with given name.
    • getAttributeIndex

      public int getAttributeIndex(RXAttribute anAttribute)
      Returns this index of the given attribute.
    • getAttribute

      public RXAttribute getAttribute(String aName)
      Returns the specific child attribute with the given name (or null if not found).
    • getAttributeIndex

      public int getAttributeIndex(String aName)
      Returns the index of the attribute with the given name (or -1 if not found).
    • getElementCount

      public int getElementCount()
      Returns the number of child elements.
    • getElement

      public RXElement getElement(int anIndex)
      Returns the individual element at given index.
    • getElements

      public List<RXElement> getElements()
      Returns the list of elements.
    • addElement

      public void addElement(RXElement anElement)
      Adds given element to elements list.
    • addElement

      public void addElement(RXElement anElement, int anIndex)
      Adds given element to elements list at given index.
    • removeElement

      public RXElement removeElement(int anIndex)
      Removes element at given index.
    • removeElement

      public int removeElement(RXElement anElement)
      Removes given element.
    • getElementIndex

      public int getElementIndex(RXElement anElement)
      Returns the index of the given element.
    • getElementCount

      public int getElementCount(String aName)
      Returns the number of child elements with the given name.
    • getElementIndex

      public int getElementIndex(String aName, int start)
      Returns the index of element with given name.
    • getElement

      public RXElement getElement(String aName)
      Returns the first element for a given name.
    • removeElement

      public RXElement removeElement(String aName)
      Removes the first element with given name and returns it.
    • getElements

      public List<RXElement> getElements(String aName)
      Returns the list of child elements with given name.
    • removeElements

      public List<RXElement> removeElements(String aName)
      Removes elements for given element name.
    • hasAttribute

      public boolean hasAttribute(String aName)
      Checks for presence of an attribute.
    • getAttributeValue

      public String getAttributeValue(String aName)
      Returns the attribute string value for the given attribute name.
    • getAttributeValue

      public String getAttributeValue(String aName, String defaultValue)
      Returns the string value for the given attribute name (or the given default value, if name not found).
    • getAttributeBoolValue

      public boolean getAttributeBoolValue(String aName)
      Returns the boolean value for the given attribute name.
    • getAttributeBoolValue

      public boolean getAttributeBoolValue(String aName, boolean defaultValue)
      Returns the boolean value for the given attribute name (or the given default value, if name not found).
    • getAttributeBooleanValue

      public Boolean getAttributeBooleanValue(String aName)
      Returns the Boolean value for the given attribute name.
    • getAttributeBooleanValue

      public Boolean getAttributeBooleanValue(String aName, Boolean defaultValue)
      Returns the Boolean value for the given attribute name (or the given default value, if name not found).
    • getAttributeIntValue

      public int getAttributeIntValue(String aName)
      Returns the int value for the given attribute name.
    • getAttributeIntValue

      public int getAttributeIntValue(String aName, int defaultValue)
      Returns the int value for the given attribute name (or the given default value, if name not found).
    • getAttributeColorValue

      public Color getAttributeColorValue(String aName, Color defaultValue)
    • getAttributeFloatValue

      public float getAttributeFloatValue(String aName)
      Returns the float value for the given attribute name.
    • getAttributeFloatValue

      public float getAttributeFloatValue(String aName, float defaultValue)
      Returns the float value for the given attribute name (or the given default value, if name not found).
    • getAttributeNumberValue

      public Number getAttributeNumberValue(String aName)
      Returns the Number value for the given attribute name.
    • getAttributeNumberValue

      public Number getAttributeNumberValue(String aName, Number defaultValue)
      Returns the Number value for the given attribute name (or the given default value, if name not found).
    • getAttributeEnumValue

      public Enum getAttributeEnumValue(String aName, Class enumClass, Enum defaultValue)
      Returns the Enum of a specific type for the given attribute name (or the given default value, if name not found).
    • getAttributeFontValue

      public Font getAttributeFontValue(String aName, Font defaultValue)
    • add

      public RXElement add(String aName, String aValue)
      Adds a new attribute with the given name and string value.
    • add

      public RXElement add(String aName, Object aValue)
      Adds a new attribute with the given name using the object's toString() method.
    • add

      public RXElement add(String aName, Color color)
    • add

      public RXElement add(String aName, boolean aValue)
      Adds a new attribute with the given name and boolean value.
    • add

      public RXElement add(String aName, Boolean aValue)
      Adds a new attribute with the given name and Boolean value.
    • add

      public RXElement add(String aName, int aValue)
      Adds a new attribute with the given name and int value.
    • add

      public RXElement add(String aName, double aValue)
      Adds a new attribute with the given name and float value.
    • add

      public RXElement add(String aName, Font aValue)
    • size

      public int size()
      Returns child element list size.
    • get

      public RXElement get(int anIndex)
      Returns the specific child element at the given index.
    • get

      public RXElement get(String aName)
      Returns the first child element with the given name.
    • indexOf

      public int indexOf(String aName)
      Returns the index of the first child element with the given name.
    • indexOf

      public int indexOf(String aName, int startIndex)
      Returns the index of the first child element with the given name at or beyond the given index.
    • add

      public RXElement add(RXAttribute anAttribute)
      Adds the given attribute to this element's list of attributes.
    • addAll

      public void addAll(RXElement anElement)
      Adds all the given child elements and attributes of given element to this element.
    • getValueBytes

      public byte[] getValueBytes()
      Returns the element value as bytes.
    • setValueBytes

      public void setValueBytes(byte[] theBytes)
      Sets the element value from bytes.
    • toString

      public String toString()
      Returns a string representation of this element (XML).
      Overrides:
      toString in class RXAttribute
    • getBytes

      public byte[] getBytes()
      Returns XML bytes for this element.
    • write

      public void write(StringBuffer aSB, int indent, String indentStr)
      Writes the element to the given string buffer using the given indent level and indent string.
    • writePreamble

      protected void writePreamble(StringBuffer aSB, int indent, String indentStr)
      Writes the element to the given string buffer using the given indent level and indent string.