Class MutableGsonDocument

java.lang.Object
eu.cloudnetservice.driver.impl.document.gson.ImmutableGsonDocument
eu.cloudnetservice.driver.impl.document.gson.MutableGsonDocument
All Implemented Interfaces:
eu.cloudnetservice.driver.document.Document, eu.cloudnetservice.driver.document.Document.Mutable, eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder, eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable<eu.cloudnetservice.driver.document.Document.Mutable>, eu.cloudnetservice.driver.document.property.DocPropertyHolder, eu.cloudnetservice.driver.document.property.DocPropertyHolder.Mutable<eu.cloudnetservice.driver.document.Document.Mutable>, Externalizable, Serializable

final class MutableGsonDocument extends ImmutableGsonDocument implements eu.cloudnetservice.driver.document.Document.Mutable, eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable<eu.cloudnetservice.driver.document.Document.Mutable>
Mutable version of a gson document implementing the full mutable document functionality.
Since:
4.0
  • Nested Class Summary

    Nested classes/interfaces inherited from interface eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder

    eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable<S>

    Nested classes/interfaces inherited from interface eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable

    eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable.WithDirectModifier<S>

    Nested classes/interfaces inherited from interface eu.cloudnetservice.driver.document.property.DocPropertyHolder

    eu.cloudnetservice.driver.document.property.DocPropertyHolder.Mutable<S>

    Nested classes/interfaces inherited from interface eu.cloudnetservice.driver.document.Document

    eu.cloudnetservice.driver.document.Document.Mutable
  • Field Summary

    Fields inherited from class ImmutableGsonDocument

    internalObject
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new, empty gson document instance.
    MutableGsonDocument(@NonNull com.google.gson.JsonObject internalObject)
    Constructs a new gson document instance using the given initial internal object.
  • Method Summary

    Modifier and Type
    Method
    Description
    eu.cloudnetservice.driver.document.Document.Mutable
    append(@NonNull eu.cloudnetservice.driver.document.Document document)
    eu.cloudnetservice.driver.document.Document.Mutable
    append(@NonNull String key, @Nullable eu.cloudnetservice.driver.document.Document value)
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    eu.cloudnetservice.driver.document.Document.Mutable
    receive(@NonNull eu.cloudnetservice.driver.document.send.DocumentSend send)
    eu.cloudnetservice.driver.document.Document.Mutable

    Methods inherited from class Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder

    propertyAbsent, propertyPresent, readProperty, readPropertyOrDefault, readPropertyOrGet, readPropertyOrThrow, readPropertyOrThrow

    Methods inherited from interface eu.cloudnetservice.driver.document.property.DefaultedDocPropertyHolder.Mutable

    removeProperty, writeProperty, writePropertyIfAbsent, writePropertyIfAbsent, writePropertyIfPresent, writePropertyIfPresent

    Methods inherited from interface eu.cloudnetservice.driver.document.Document

    contains, containsNonNull, elementCount, elements, empty, equals, factoryName, getBoolean, getBoolean, getByte, getByte, getDouble, getDouble, getFloat, getFloat, getInt, getInt, getLong, getLong, getShort, getShort, getString, getString, immutableCopy, keys, mutableCopy, readDocument, readDocument, readMutableDocument, readMutableDocument, readObject, readObject, readObject, readObject, readObject, readObject, send, serializeToString, serializeToString, toInstanceOf, toInstanceOf, toInstanceOf, toString, writeTo, writeTo, writeTo, writeTo, writeTo, writeTo, writeTo, writeTo

    Methods inherited from interface Externalizable

    readExternal, writeExternal
  • Constructor Details

    • MutableGsonDocument

      public MutableGsonDocument()
      Constructs a new, empty gson document instance.
    • MutableGsonDocument

      MutableGsonDocument(@NonNull @NonNull com.google.gson.JsonObject internalObject)
      Constructs a new gson document instance using the given initial internal object. Note that the given object is not copied, it is up to the caller to ensure no races or data leaks are created when using this constructor.
      Parameters:
      internalObject - the initial internal json object to use.
      Throws:
      NullPointerException - if the given internal object is null.
  • Method Details

    • clear

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable clear()
      Specified by:
      clear in interface eu.cloudnetservice.driver.document.Document.Mutable
    • remove

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable remove(@NonNull @NonNull String key)
      Specified by:
      remove in interface eu.cloudnetservice.driver.document.Document.Mutable
    • receive

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable receive(@NonNull @NonNull eu.cloudnetservice.driver.document.send.DocumentSend send)
      Specified by:
      receive in interface eu.cloudnetservice.driver.document.Document.Mutable
    • appendNull

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable appendNull(@NonNull @NonNull String key)
      Specified by:
      appendNull in interface eu.cloudnetservice.driver.document.Document.Mutable
    • appendTree

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable appendTree(@Nullable @Nullable Object value)
      Specified by:
      appendTree in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull eu.cloudnetservice.driver.document.Document document)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull String key, @Nullable @Nullable Object value)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull String key, @Nullable @Nullable Number value)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull String key, @Nullable @Nullable Boolean value)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull String key, @Nullable @Nullable String value)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • append

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable append(@NonNull @NonNull String key, @Nullable @Nullable eu.cloudnetservice.driver.document.Document value)
      Specified by:
      append in interface eu.cloudnetservice.driver.document.Document.Mutable
    • propertyHolder

      @NonNull public eu.cloudnetservice.driver.document.Document.Mutable propertyHolder()
      Specified by:
      propertyHolder in interface eu.cloudnetservice.driver.document.property.DocPropertyHolder
      Specified by:
      propertyHolder in interface eu.cloudnetservice.driver.document.property.DocPropertyHolder.Mutable<eu.cloudnetservice.driver.document.Document.Mutable>
      Overrides:
      propertyHolder in class ImmutableGsonDocument