Class Xpp3Dom

java.lang.Object
org.codehaus.plexus.util.xml.Xpp3Dom
All Implemented Interfaces:
Serializable

public class Xpp3Dom extends Object implements Serializable
NOTE: remove all the util code in here when separated, this class should be pure data.
See Also:
  • Field Details Link icon

    • name Link icon

      protected String name
    • value Link icon

      protected String value
    • attributes Link icon

      protected Map<String,String> attributes
    • childList Link icon

      protected final List<Xpp3Dom> childList
    • parent Link icon

      protected Xpp3Dom parent
    • inputLocation Link icon

      protected Object inputLocation
      Since:
      3.2.0
    • CHILDREN_COMBINATION_MODE_ATTRIBUTE Link icon

      public static final String CHILDREN_COMBINATION_MODE_ATTRIBUTE
      See Also:
    • CHILDREN_COMBINATION_MERGE Link icon

      public static final String CHILDREN_COMBINATION_MERGE
      See Also:
    • CHILDREN_COMBINATION_APPEND Link icon

      public static final String CHILDREN_COMBINATION_APPEND
      See Also:
    • DEFAULT_CHILDREN_COMBINATION_MODE Link icon

      public static final String DEFAULT_CHILDREN_COMBINATION_MODE
      This default mode for combining children DOMs during merge means that where element names match, the process will try to merge the element data, rather than putting the dominant and recessive elements (which share the same element name) as siblings in the resulting DOM.
      See Also:
    • SELF_COMBINATION_MODE_ATTRIBUTE Link icon

      public static final String SELF_COMBINATION_MODE_ATTRIBUTE
      See Also:
    • SELF_COMBINATION_OVERRIDE Link icon

      public static final String SELF_COMBINATION_OVERRIDE
      See Also:
    • SELF_COMBINATION_MERGE Link icon

      public static final String SELF_COMBINATION_MERGE
      See Also:
    • SELF_COMBINATION_REMOVE Link icon

      public static final String SELF_COMBINATION_REMOVE
      See Also:
    • DEFAULT_SELF_COMBINATION_MODE Link icon

      public static final String DEFAULT_SELF_COMBINATION_MODE
      This default mode for combining a DOM node during merge means that where element names match, the process will try to merge the element attributes and values, rather than overriding the recessive element completely with the dominant one. This means that wherever the dominant element doesn't provide the value or a particular attribute, that value or attribute will be set from the recessive DOM node.
      See Also:
  • Constructor Details Link icon

    • Xpp3Dom Link icon

      public Xpp3Dom(String name)
    • Xpp3Dom Link icon

      public Xpp3Dom(String name, Object inputLocation)
      Parameters:
      name - The name of the Dom.
      inputLocation - The input location.
      Since:
      3.2.0
    • Xpp3Dom Link icon

      public Xpp3Dom(Xpp3Dom src)
      Copy constructor.
      Parameters:
      src - The source Dom.
    • Xpp3Dom Link icon

      public Xpp3Dom(Xpp3Dom src, String name)
      Copy constructor with alternative name.
      Parameters:
      src - The source Dom.
      name - The name of the Dom.
  • Method Details Link icon

    • getName Link icon

      public String getName()
    • getValue Link icon

      public String getValue()
    • setValue Link icon

      public void setValue(String value)
    • getAttributeNames Link icon

      public String[] getAttributeNames()
    • getAttribute Link icon

      public String getAttribute(String name)
    • removeAttribute Link icon

      public boolean removeAttribute(String name)
      Parameters:
      name - name of the attribute to be removed
      Returns:
      true if the attribute has been removed
      Since:
      3.4.0
    • setAttribute Link icon

      public void setAttribute(String name, String value)
      Set the attribute value
      Parameters:
      name - String not null
      value - String not null
    • getChild Link icon

      public Xpp3Dom getChild(int i)
    • getChild Link icon

      public Xpp3Dom getChild(String name)
    • addChild Link icon

      public void addChild(Xpp3Dom xpp3Dom)
    • getChildren Link icon

      public Xpp3Dom[] getChildren()
    • getChildren Link icon

      public Xpp3Dom[] getChildren(String name)
    • getChildCount Link icon

      public int getChildCount()
    • removeChild Link icon

      public void removeChild(int i)
    • removeChild Link icon

      public void removeChild(Xpp3Dom child)
    • getParent Link icon

      public Xpp3Dom getParent()
    • setParent Link icon

      public void setParent(Xpp3Dom parent)
    • getInputLocation Link icon

      public Object getInputLocation()
      Returns:
      input location
      Since:
      3.2.0
    • setInputLocation Link icon

      public void setInputLocation(Object inputLocation)
      Parameters:
      inputLocation - input location to set
      Since:
      3.2.0
    • writeToSerializer Link icon

      public void writeToSerializer(String namespace, XmlSerializer serializer) throws IOException
      Throws:
      IOException
    • mergeXpp3Dom Link icon

      public static Xpp3Dom mergeXpp3Dom(Xpp3Dom dominant, Xpp3Dom recessive, Boolean childMergeOverride)
      Merge two DOMs, with one having dominance in the case of collision.
      Parameters:
      dominant - The dominant DOM into which the recessive value/attributes/children will be merged
      recessive - The recessive DOM, which will be merged into the dominant DOM
      childMergeOverride - Overrides attribute flags to force merging or appending of child elements into the dominant DOM
      Returns:
      merged DOM
      See Also:
    • mergeXpp3Dom Link icon

      public static Xpp3Dom mergeXpp3Dom(Xpp3Dom dominant, Xpp3Dom recessive)
      Merge two DOMs, with one having dominance in the case of collision. Merge mechanisms (vs. override for nodes, or vs. append for children) is determined by attributes of the dominant root node.
      Parameters:
      dominant - The dominant DOM into which the recessive value/attributes/children will be merged
      recessive - The recessive DOM, which will be merged into the dominant DOM
      Returns:
      merged DOM
      See Also:
    • equals Link icon

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode Link icon

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString Link icon

      public String toString()
      Overrides:
      toString in class Object
    • toUnescapedString Link icon

      public String toUnescapedString()
    • isNotEmpty Link icon

      public static boolean isNotEmpty(String str)
    • isEmpty Link icon

      public static boolean isEmpty(String str)