Class ModifiableJsonArray

java.lang.Object
java.util.AbstractCollection<jakarta.json.JsonValue>
java.util.AbstractList<jakarta.json.JsonValue>
no.hasmac.jsonld.ModifiableJsonArray
All Implemented Interfaces:
jakarta.json.JsonArray, jakarta.json.JsonStructure, jakarta.json.JsonValue, Iterable<jakarta.json.JsonValue>, Collection<jakarta.json.JsonValue>, List<jakarta.json.JsonValue>, SequencedCollection<jakarta.json.JsonValue>

public class ModifiableJsonArray extends AbstractList<jakarta.json.JsonValue> implements jakarta.json.JsonArray
This class is a workaround for the fact that the default implementation of JsonArray is not modifiable. It would be better to use an internal data structure instead of using the Jakarta JSON API when transforming the data.
  • Field Details

    • valueList

      private final List<jakarta.json.JsonValue> valueList
    • hashCode

      private int hashCode
    • filter

      private com.google.common.hash.BloomFilter<Integer> filter
  • Constructor Details

    • ModifiableJsonArray

      public ModifiableJsonArray(List<jakarta.json.JsonValue> valueList)
  • Method Details

    • size

      public int size()
      Specified by:
      size in interface Collection<jakarta.json.JsonValue>
      Specified by:
      size in interface List<jakarta.json.JsonValue>
      Specified by:
      size in class AbstractCollection<jakarta.json.JsonValue>
    • getJsonObject

      public jakarta.json.JsonObject getJsonObject(int index)
      Specified by:
      getJsonObject in interface jakarta.json.JsonArray
    • getJsonArray

      public jakarta.json.JsonArray getJsonArray(int index)
      Specified by:
      getJsonArray in interface jakarta.json.JsonArray
    • getJsonNumber

      public jakarta.json.JsonNumber getJsonNumber(int index)
      Specified by:
      getJsonNumber in interface jakarta.json.JsonArray
    • getJsonString

      public jakarta.json.JsonString getJsonString(int index)
      Specified by:
      getJsonString in interface jakarta.json.JsonArray
    • getValuesAs

      public <T extends jakarta.json.JsonValue> List<T> getValuesAs(Class<T> clazz)
      Specified by:
      getValuesAs in interface jakarta.json.JsonArray
    • getString

      public String getString(int index)
      Specified by:
      getString in interface jakarta.json.JsonArray
    • getString

      public String getString(int index, String defaultValue)
      Specified by:
      getString in interface jakarta.json.JsonArray
    • getInt

      public int getInt(int index)
      Specified by:
      getInt in interface jakarta.json.JsonArray
    • getInt

      public int getInt(int index, int defaultValue)
      Specified by:
      getInt in interface jakarta.json.JsonArray
    • getBoolean

      public boolean getBoolean(int index)
      Specified by:
      getBoolean in interface jakarta.json.JsonArray
    • getBoolean

      public boolean getBoolean(int index, boolean defaultValue)
      Specified by:
      getBoolean in interface jakarta.json.JsonArray
    • isNull

      public boolean isNull(int index)
      Specified by:
      isNull in interface jakarta.json.JsonArray
    • getValueType

      public jakarta.json.JsonValue.ValueType getValueType()
      Specified by:
      getValueType in interface jakarta.json.JsonValue
    • get

      public jakarta.json.JsonValue get(int index)
      Specified by:
      get in interface List<jakarta.json.JsonValue>
      Specified by:
      get in class AbstractList<jakarta.json.JsonValue>
    • add

      public boolean add(jakarta.json.JsonValue value)
      Specified by:
      add in interface Collection<jakarta.json.JsonValue>
      Specified by:
      add in interface List<jakarta.json.JsonValue>
      Overrides:
      add in class AbstractList<jakarta.json.JsonValue>
    • contains

      public boolean contains(Object o)
      Specified by:
      contains in interface Collection<jakarta.json.JsonValue>
      Specified by:
      contains in interface List<jakarta.json.JsonValue>
      Overrides:
      contains in class AbstractCollection<jakarta.json.JsonValue>
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface Collection<jakarta.json.JsonValue>
      Specified by:
      hashCode in interface List<jakarta.json.JsonValue>
      Overrides:
      hashCode in class AbstractList<jakarta.json.JsonValue>
    • toString

      public String toString()
      Specified by:
      toString in interface jakarta.json.JsonValue
      Overrides:
      toString in class AbstractCollection<jakarta.json.JsonValue>
    • asJsonArray

      public jakarta.json.JsonArray asJsonArray()
      Specified by:
      asJsonArray in interface jakarta.json.JsonValue