Class GenericXml

  • All Implemented Interfaces:
    java.lang.Cloneable, java.util.Map<java.lang.String,​java.lang.Object>

    @Beta
    public class GenericXml
    extends GenericData
    implements java.lang.Cloneable
    Beta
    Generic XML data that stores all unknown key name/value pairs.

    Each data key name maps into the name of the XPath expression value for the XML element, attribute, or text content (using "text()"). Subclasses can declare fields for known XML content using the Key annotation. Each field can be of any visibility (private, package private, protected, or public) and must not be static. null unknown data key names are not allowed, but null data values are allowed.

    Implementation is not thread-safe. For a thread-safe choice instead use an implementation of ConcurrentMap.

    Since:
    1.0
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.util.AbstractMap

        java.util.AbstractMap.SimpleEntry<K extends java.lang.Object,​V extends java.lang.Object>, java.util.AbstractMap.SimpleImmutableEntry<K extends java.lang.Object,​V extends java.lang.Object>
      • Nested classes/interfaces inherited from interface java.util.Map

        java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.lang.String name
      Optional XML element local name prefixed by its namespace alias -- for example "atom:entry" -- or null if not set.
      XmlNamespaceDictionary namespaceDictionary
      Optional namespace dictionary or null if not set.
    • Constructor Summary

      Constructors 
      Constructor Description
      GenericXml()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      GenericXml clone()
      Makes a "deep" clone of the generic data, in which the clone is completely independent of the original.
      GenericXml set​(java.lang.String fieldName, java.lang.Object value)
      Sets the given field value (may be null) for the given field name.
      java.lang.String toString()  
      • Methods inherited from class java.util.AbstractMap

        clear, containsKey, containsValue, isEmpty, keySet, size, values
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Map

        compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
    • Field Detail

      • name

        public java.lang.String name
        Optional XML element local name prefixed by its namespace alias -- for example "atom:entry" -- or null if not set.
      • namespaceDictionary

        public XmlNamespaceDictionary namespaceDictionary
        Optional namespace dictionary or null if not set.
    • Constructor Detail

      • GenericXml

        public GenericXml()
    • Method Detail

      • clone

        public GenericXml clone()
        Description copied from class: GenericData
        Makes a "deep" clone of the generic data, in which the clone is completely independent of the original.
        Overrides:
        clone in class GenericData
      • set

        public GenericXml set​(java.lang.String fieldName,
                              java.lang.Object value)
        Description copied from class: GenericData
        Sets the given field value (may be null) for the given field name. Any existing value for the field will be overwritten. It may be more slightly more efficient than GenericData.put(String, Object) because it avoids accessing the field's original value.

        Overriding is only supported for the purpose of calling the super implementation and changing the return type, but nothing else.

        Overrides:
        set in class GenericData