Class 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 Summary

      Constructors 
      Constructor Description
      RXElement()
      Creates a new element.
      RXElement​(java.lang.String aName)
      Creates a new element with given name.
      RXElement​(java.lang.String aName, java.lang.String aValue)
      Creates a new element with given name and value.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      RXElement add​(RXAttribute anAttribute)
      Adds the given attribute to this element's list of attributes.
      RXElement add​(java.lang.String aName, boolean aValue)
      Adds a new attribute with the given name and boolean value.
      RXElement add​(java.lang.String aName, double aValue)
      Adds a new attribute with the given name and float value.
      RXElement add​(java.lang.String aName, int aValue)
      Adds a new attribute with the given name and int value.
      RXElement add​(java.lang.String aName, java.awt.Color color)  
      RXElement add​(java.lang.String aName, java.awt.Font aValue)  
      RXElement add​(java.lang.String aName, java.lang.Boolean aValue)
      Adds a new attribute with the given name and Boolean value.
      RXElement add​(java.lang.String aName, java.lang.Object aValue)
      Adds a new attribute with the given name using the object's toString() method.
      RXElement add​(java.lang.String aName, java.lang.String aValue)
      Adds a new attribute with the given name and string value.
      void addAll​(RXElement anElement)
      Adds all the given child elements and attributes of given element to this element.
      void addAttribute​(RXAttribute anAttribute)
      Adds an attribute.
      void addAttribute​(RXAttribute anAttribute, int anIndex)
      Adds an attribute at given index.
      void addElement​(RXElement anElement)
      Adds given element to elements list.
      void addElement​(RXElement anElement, int anIndex)
      Adds given element to elements list at given index.
      RXElement get​(int anIndex)
      Returns the specific child element at the given index.
      RXElement get​(java.lang.String aName)
      Returns the first child element with the given name.
      RXAttribute getAttribute​(int anIndex)
      Returns the specific child attribute at the given index.
      RXAttribute getAttribute​(java.lang.String aName)
      Returns the specific child attribute with the given name (or null if not found).
      java.lang.Boolean getAttributeBooleanValue​(java.lang.String aName)
      Returns the Boolean value for the given attribute name.
      java.lang.Boolean getAttributeBooleanValue​(java.lang.String aName, java.lang.Boolean defaultValue)
      Returns the Boolean value for the given attribute name (or the given default value, if name not found).
      boolean getAttributeBoolValue​(java.lang.String aName)
      Returns the boolean value for the given attribute name.
      boolean getAttributeBoolValue​(java.lang.String aName, boolean defaultValue)
      Returns the boolean value for the given attribute name (or the given default value, if name not found).
      java.awt.Color getAttributeColorValue​(java.lang.String aName, java.awt.Color defaultValue)  
      int getAttributeCount()
      Returns the number of child attributes for this element.
      java.lang.Enum getAttributeEnumValue​(java.lang.String aName, java.lang.Class enumClass, java.lang.Enum defaultValue)
      Returns the Enum of a specific type for the given attribute name (or the given default value, if name not found).
      float getAttributeFloatValue​(java.lang.String aName)
      Returns the float value for the given attribute name.
      float getAttributeFloatValue​(java.lang.String aName, float defaultValue)
      Returns the float value for the given attribute name (or the given default value, if name not found).
      java.awt.Font getAttributeFontValue​(java.lang.String aName, java.awt.Font defaultValue)  
      int getAttributeIndex​(RXAttribute anAttribute)
      Returns this index of the given attribute.
      int getAttributeIndex​(java.lang.String aName)
      Returns the index of the attribute with the given name (or -1 if not found).
      int getAttributeIntValue​(java.lang.String aName)
      Returns the int value for the given attribute name.
      int getAttributeIntValue​(java.lang.String aName, int defaultValue)
      Returns the int value for the given attribute name (or the given default value, if name not found).
      java.lang.Number getAttributeNumberValue​(java.lang.String aName)
      Returns the Number value for the given attribute name.
      java.lang.Number getAttributeNumberValue​(java.lang.String aName, java.lang.Number defaultValue)
      Returns the Number value for the given attribute name (or the given default value, if name not found).
      java.util.List<RXAttribute> getAttributes()
      Returns the list of child attributes for this element.
      java.lang.String getAttributeValue​(java.lang.String aName)
      Returns the attribute string value for the given attribute name.
      java.lang.String getAttributeValue​(java.lang.String aName, java.lang.String defaultValue)
      Returns the string value for the given attribute name (or the given default value, if name not found).
      byte[] getBytes()
      Returns XML bytes for this element.
      RXElement getElement​(int anIndex)
      Returns the individual element at given index.
      static RXElement getElement​(java.lang.Object aSource)
      Returns a new element hierarchy loaded from aSource (File, String path, InputStream or whatever).
      RXElement getElement​(java.lang.String aName)
      Returns the first element for a given name.
      int getElementCount()
      Returns the number of child elements.
      int getElementCount​(java.lang.String aName)
      Returns the number of child elements with the given name.
      int getElementIndex​(RXElement anElement)
      Returns the index of the given element.
      int getElementIndex​(java.lang.String aName, int start)
      Returns the index of element with given name.
      java.util.List<RXElement> getElements()
      Returns the list of elements.
      java.util.List<RXElement> getElements​(java.lang.String aName)
      Returns the list of child elements with given name.
      byte[] getValueBytes()
      Returns the element value as bytes.
      boolean hasAttribute​(java.lang.String aName)
      Checks for presence of an attribute.
      int indexOf​(java.lang.String aName)
      Returns the index of the first child element with the given name.
      int indexOf​(java.lang.String aName, int startIndex)
      Returns the index of the first child element with the given name at or beyond the given index.
      RXAttribute removeAttribute​(int anIndex)
      Removes the attribute at given index.
      int removeAttribute​(RXAttribute anAttribute)
      Removes the given attribute.
      RXAttribute removeAttribute​(java.lang.String aName)
      Removes the attribute with given name.
      RXElement removeElement​(int anIndex)
      Removes element at given index.
      int removeElement​(RXElement anElement)
      Removes given element.
      RXElement removeElement​(java.lang.String aName)
      Removes the first element with given name and returns it.
      java.util.List<RXElement> removeElements​(java.lang.String aName)
      Removes elements for given element name.
      void setValueBytes​(byte[] theBytes)
      Sets the element value from bytes.
      int size()
      Returns child element list size.
      java.lang.String toString()
      Returns a string representation of this element (XML).
      void write​(java.lang.StringBuffer aSB, int indent, java.lang.String indentStr)
      Writes the element to the given string buffer using the given indent level and indent string.
      protected void writePreamble​(java.lang.StringBuffer aSB, int indent, java.lang.String indentStr)
      Writes the element to the given string buffer using the given indent level and indent string.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • RXElement

        public RXElement()
        Creates a new element.
      • RXElement

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

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

      • getElement

        public static RXElement getElement​(java.lang.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 java.util.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​(java.lang.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​(java.lang.String aName)
        Returns the specific child attribute with the given name (or null if not found).
      • getAttributeIndex

        public int getAttributeIndex​(java.lang.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 java.util.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​(java.lang.String aName)
        Returns the number of child elements with the given name.
      • getElementIndex

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public java.awt.Color getAttributeColorValue​(java.lang.String aName,
                                                     java.awt.Color defaultValue)
      • getAttributeFloatValue

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

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

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

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

        public java.lang.Enum getAttributeEnumValue​(java.lang.String aName,
                                                    java.lang.Class enumClass,
                                                    java.lang.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 java.awt.Font getAttributeFontValue​(java.lang.String aName,
                                                   java.awt.Font defaultValue)
      • add

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

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

        public RXElement add​(java.lang.String aName,
                             java.awt.Color color)
      • add

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

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

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

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

        public RXElement add​(java.lang.String aName,
                             java.awt.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​(java.lang.String aName)
        Returns the first child element with the given name.
      • indexOf

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

        public int indexOf​(java.lang.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 java.lang.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​(java.lang.StringBuffer aSB,
                          int indent,
                          java.lang.String indentStr)
        Writes the element to the given string buffer using the given indent level and indent string.
      • writePreamble

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