Class JsonArrayImpl

  • All Implemented Interfaces:
    jakarta.json.JsonArray, jakarta.json.JsonStructure, jakarta.json.JsonValue, java.io.Serializable, java.lang.Iterable<jakarta.json.JsonValue>, java.util.Collection<jakarta.json.JsonValue>, java.util.List<jakarta.json.JsonValue>

    class JsonArrayImpl
    extends java.util.AbstractList<jakarta.json.JsonValue>
    implements jakarta.json.JsonArray, java.io.Serializable
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private class  JsonArrayImpl.JsonArrayIterator
      We don't need any range check, so we can simplify the Iterator logic.
      • Nested classes/interfaces inherited from interface jakarta.json.JsonValue

        jakarta.json.JsonValue.ValueType
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.Integer hashCode  
      private BufferStrategy.BufferProvider<char[]> provider  
      private int size  
      private java.util.List<jakarta.json.JsonValue> unmodifieableBackingList  
      • Fields inherited from class java.util.AbstractList

        modCount
      • Fields inherited from interface jakarta.json.JsonValue

        EMPTY_JSON_ARRAY, EMPTY_JSON_OBJECT, FALSE, NULL, TRUE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)  
      jakarta.json.JsonValue get​(int index)  
      boolean getBoolean​(int index)  
      boolean getBoolean​(int index, boolean defaultValue)  
      int getInt​(int index)  
      int getInt​(int index, int defaultValue)  
      jakarta.json.JsonArray getJsonArray​(int index)  
      jakarta.json.JsonNumber getJsonNumber​(int index)  
      jakarta.json.JsonObject getJsonObject​(int index)  
      jakarta.json.JsonString getJsonString​(int index)  
      java.lang.String getString​(int index)  
      java.lang.String getString​(int index, java.lang.String defaultValue)  
      <T extends jakarta.json.JsonValue>
      java.util.List<T>
      getValuesAs​(java.lang.Class<T> clazz)  
      jakarta.json.JsonValue.ValueType getValueType()  
      int hashCode()  
      boolean isNull​(int index)  
      java.util.Iterator<jakarta.json.JsonValue> iterator()  
      int size()  
      java.lang.String toString()  
      private <T> T value​(int idx, java.lang.Class<T> type)  
      private java.lang.Object writeReplace()  
      • Methods inherited from class java.util.AbstractList

        add, add, addAll, clear, indexOf, lastIndexOf, listIterator, listIterator, remove, removeRange, set, subList
      • Methods inherited from class java.util.AbstractCollection

        addAll, contains, containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray
      • Methods inherited from class java.lang.Object

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

        parallelStream, removeIf, stream, toArray
      • Methods inherited from interface java.lang.Iterable

        forEach
      • Methods inherited from interface jakarta.json.JsonArray

        getValuesAs
      • Methods inherited from interface jakarta.json.JsonStructure

        getValue
      • Methods inherited from interface jakarta.json.JsonValue

        asJsonArray, asJsonObject
      • Methods inherited from interface java.util.List

        add, add, addAll, addAll, clear, contains, containsAll, indexOf, isEmpty, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, sort, spliterator, subList, toArray, toArray
    • Field Detail

      • hashCode

        private java.lang.Integer hashCode
      • unmodifieableBackingList

        private final java.util.List<jakarta.json.JsonValue> unmodifieableBackingList
      • size

        private int size
    • Method Detail

      • value

        private <T> T value​(int idx,
                            java.lang.Class<T> type)
      • 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> java.util.List<T> getValuesAs​(java.lang.Class<T> clazz)
        Specified by:
        getValuesAs in interface jakarta.json.JsonArray
      • getString

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

        public java.lang.String getString​(int index,
                                          java.lang.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
      • toString

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

        public boolean equals​(java.lang.Object obj)
        Specified by:
        equals in interface java.util.Collection<jakarta.json.JsonValue>
        Specified by:
        equals in interface java.util.List<jakarta.json.JsonValue>
        Overrides:
        equals in class java.util.AbstractList<jakarta.json.JsonValue>
      • hashCode

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

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

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

        private java.lang.Object writeReplace()
                                       throws java.io.ObjectStreamException
        Throws:
        java.io.ObjectStreamException
      • iterator

        public java.util.Iterator<jakarta.json.JsonValue> iterator()
        Specified by:
        iterator in interface java.util.Collection<jakarta.json.JsonValue>
        Specified by:
        iterator in interface java.lang.Iterable<jakarta.json.JsonValue>
        Specified by:
        iterator in interface java.util.List<jakarta.json.JsonValue>
        Overrides:
        iterator in class java.util.AbstractList<jakarta.json.JsonValue>