Class StorageMap

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

    public class StorageMap
    extends java.util.AbstractMap<java.lang.String,​java.lang.String>
    Exposes the local/session Storage as a standard Map<String, String>.

    Experimental API: This API is still under development and is subject to change.

    The following characteristics are associated with this Map:

    1. Mutable - All 'write' methods (put(String, String), AbstractMap.putAll(Map), remove(Object), clear(), Map.Entry.setValue(Object)) operate as intended;
    2. remove() on Iterators - All remove() operations on available Iterators (from AbstractMap.keySet(), entrySet() and AbstractMap.values()) operate as intended;
    3. No null values and keys - The Storage doesn't accept keys or values which are null;
    4. String values and keys - All keys and values in this Map are String types.
    • 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>
    • Constructor Summary

      Constructors 
      Constructor Description
      StorageMap​(Storage storage)
      Creates the Map with the specified Storage as data provider.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()
      Removes all items from the Storage.
      boolean containsKey​(java.lang.Object key)
      Returns true if the Storage contains the specified key, false otherwise.
      boolean containsValue​(java.lang.Object value)
      Returns true if the Storage contains the specified value, false otherwise (or if the specified key is null ).
      java.util.Set<java.util.Map.Entry<java.lang.String,​java.lang.String>> entrySet()
      Returns a Set containing all entries of the Storage.
      java.lang.String get​(java.lang.Object key)
      Returns the value associated with the specified key in the Storage.
      java.lang.String put​(java.lang.String key, java.lang.String value)
      Adds (or overwrites) a new key/value pair in the Storage.
      java.lang.String remove​(java.lang.Object key)
      Removes the key/value pair from the Storage.
      int size()
      Returns the number of items in the Storage.
      • Methods inherited from class java.util.AbstractMap

        clone, equals, hashCode, isEmpty, keySet, putAll, toString, 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
    • Method Detail

      • clear

        public void clear()
        Removes all items from the Storage.
        Specified by:
        clear in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        clear in class java.util.AbstractMap<java.lang.String,​java.lang.String>
        See Also:
        Storage.clear()
      • containsKey

        public boolean containsKey​(java.lang.Object key)
        Returns true if the Storage contains the specified key, false otherwise.
        Specified by:
        containsKey in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        containsKey in class java.util.AbstractMap<java.lang.String,​java.lang.String>
      • containsValue

        public boolean containsValue​(java.lang.Object value)
        Returns true if the Storage contains the specified value, false otherwise (or if the specified key is null ).
        Specified by:
        containsValue in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        containsValue in class java.util.AbstractMap<java.lang.String,​java.lang.String>
      • entrySet

        public java.util.Set<java.util.Map.Entry<java.lang.String,​java.lang.String>> entrySet()
        Returns a Set containing all entries of the Storage.
        Specified by:
        entrySet in interface java.util.Map<java.lang.String,​java.lang.String>
        Specified by:
        entrySet in class java.util.AbstractMap<java.lang.String,​java.lang.String>
      • get

        public java.lang.String get​(java.lang.Object key)
        Returns the value associated with the specified key in the Storage.
        Specified by:
        get in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        get in class java.util.AbstractMap<java.lang.String,​java.lang.String>
        Parameters:
        key - the key identifying the value
        See Also:
        Storage.getItem(String)
      • put

        public java.lang.String put​(java.lang.String key,
                                    java.lang.String value)
        Adds (or overwrites) a new key/value pair in the Storage.
        Specified by:
        put in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        put in class java.util.AbstractMap<java.lang.String,​java.lang.String>
        Parameters:
        key - the key identifying the value (not null)
        value - the value associated with the key (not null)
        See Also:
        Storage.setItem(String, String)
      • remove

        public java.lang.String remove​(java.lang.Object key)
        Removes the key/value pair from the Storage.
        Specified by:
        remove in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        remove in class java.util.AbstractMap<java.lang.String,​java.lang.String>
        Parameters:
        key - the key identifying the item to remove
        Returns:
        the value associated with the key - null if the key was not present in the Storage
        See Also:
        Storage.removeItem(String)
      • size

        public int size()
        Returns the number of items in the Storage.
        Specified by:
        size in interface java.util.Map<java.lang.String,​java.lang.String>
        Overrides:
        size in class java.util.AbstractMap<java.lang.String,​java.lang.String>
        Returns:
        the number of items
        See Also:
        Storage.getLength()