Class GenericJson

  • All Implemented Interfaces:
    Cloneable, Map<String,Object>
    Direct Known Subclasses:
    JsonWebToken.Header, JsonWebToken.Payload


    public class GenericJson
    extends GenericData
    implements Cloneable
    Generic JSON data that stores all unknown key name/value pairs.

    Subclasses can declare fields for known data keys 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
    • Constructor Detail

      • GenericJson

        public GenericJson()
    • Method Detail

      • getFactory

        public final JsonFactory getFactory()
        Returns the JSON factory or null for none.
        Since:
        1.6
      • setFactory

        public final void setFactory(JsonFactory factory)
        Sets the JSON factory or null for none.
        Since:
        1.6
      • toString

        public String toString()
      • clone

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

        public GenericJson set(String fieldName,
                               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.