Class TObjectLongHashMapDecorator<V>

  • All Implemented Interfaces:
    java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, java.util.Map<V,​java.lang.Long>

    public class TObjectLongHashMapDecorator<V>
    extends java.util.AbstractMap<V,​java.lang.Long>
    implements java.util.Map<V,​java.lang.Long>, java.io.Externalizable, java.lang.Cloneable
    Wrapper class to make a TObjectLongHashMap conform to the java.util.Map API. This class simply decorates an underlying TObjectLongHashMap and translates the Object-based APIs into their Trove primitive analogs.

    Note that wrapping and unwrapping primitive values is extremely inefficient. If possible, users of this class should override the appropriate methods in this class and use a table of canonical values.

    Created: Mon Sep 23 22:07:40 PDT 2002

    Author:
    Eric D. Friedman
    See Also:
    Serialized Form
    • 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>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected TObjectLongHashMap<V> _map
      the wrapped primitive map
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void clear()
      Empties the map.
      TObjectLongHashMapDecorator clone()
      Clones the underlying trove collection and returns the clone wrapped in a new decorator instance.
      boolean containsKey​(java.lang.Object key)
      Checks for the present of key in the keys of the map.
      boolean containsValue​(java.lang.Object val)
      Checks for the presence of val in the values of the map.
      java.util.Set<java.util.Map.Entry<V,​java.lang.Long>> entrySet()
      Returns a Set view on the entries of the map.
      java.lang.Long get​(java.lang.Object key)
      Retrieves the value for key
      TObjectLongHashMap<V> getMap()
      Returns a reference to the map wrapped by this decorator.
      boolean isEmpty()
      Indicates whether map has any entries.
      java.lang.Long put​(V key, java.lang.Long value)
      Inserts a key/value pair into the map.
      void putAll​(java.util.Map<? extends V,​? extends java.lang.Long> map)
      Copies the key/value mappings in map into this map.
      void readExternal​(java.io.ObjectInput in)  
      java.lang.Long remove​(java.lang.Object key)
      Deletes a key/value pair from the map.
      int size()
      Returns the number of entries in the map.
      protected V unwrapKey​(java.lang.Object key)
      Unwraps a key
      protected long unwrapValue​(java.lang.Object value)
      Unwraps a value
      protected V wrapKey​(java.lang.Object o)
      Wraps a key
      protected java.lang.Long wrapValue​(long k)
      Wraps a value
      void writeExternal​(java.io.ObjectOutput out)  
      • Methods inherited from class java.util.AbstractMap

        equals, hashCode, keySet, 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, equals, forEach, getOrDefault, hashCode, keySet, merge, putIfAbsent, remove, replace, replace, replaceAll, values
    • Constructor Detail

      • TObjectLongHashMapDecorator

        public TObjectLongHashMapDecorator()
        FOR EXTERNALIZATION ONLY!!
      • TObjectLongHashMapDecorator

        public TObjectLongHashMapDecorator​(TObjectLongHashMap<V> map)
        Creates a wrapper that decorates the specified primitive map.
    • Method Detail

      • getMap

        public TObjectLongHashMap<V> getMap()
        Returns a reference to the map wrapped by this decorator.
      • clone

        public TObjectLongHashMapDecorator clone()
        Clones the underlying trove collection and returns the clone wrapped in a new decorator instance. This is a shallow clone except where primitives are concerned.
        Overrides:
        clone in class java.util.AbstractMap<V,​java.lang.Long>
        Returns:
        a copy of the receiver
      • put

        public java.lang.Long put​(V key,
                                  java.lang.Long value)
        Inserts a key/value pair into the map.
        Specified by:
        put in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        put in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        key - an Object value
        value - an Object value
        Returns:
        the previous value associated with key, or Integer(0) if none was found.
      • get

        public java.lang.Long get​(java.lang.Object key)
        Retrieves the value for key
        Specified by:
        get in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        get in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        key - an Object value
        Returns:
        the value of key or null if no such mapping exists.
      • clear

        public void clear()
        Empties the map.
        Specified by:
        clear in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        clear in class java.util.AbstractMap<V,​java.lang.Long>
      • remove

        public java.lang.Long remove​(java.lang.Object key)
        Deletes a key/value pair from the map.
        Specified by:
        remove in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        remove in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        key - an Object value
        Returns:
        the removed value, or Integer(0) if it was not found in the map
      • entrySet

        public java.util.Set<java.util.Map.Entry<V,​java.lang.Long>> entrySet()
        Returns a Set view on the entries of the map.
        Specified by:
        entrySet in interface java.util.Map<V,​java.lang.Long>
        Specified by:
        entrySet in class java.util.AbstractMap<V,​java.lang.Long>
        Returns:
        a Set value
      • containsValue

        public boolean containsValue​(java.lang.Object val)
        Checks for the presence of val in the values of the map.
        Specified by:
        containsValue in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        containsValue in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        val - an Object value
        Returns:
        a boolean value
      • containsKey

        public boolean containsKey​(java.lang.Object key)
        Checks for the present of key in the keys of the map.
        Specified by:
        containsKey in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        containsKey in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        key - an Object value
        Returns:
        a boolean value
      • size

        public int size()
        Returns the number of entries in the map.
        Specified by:
        size in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        size in class java.util.AbstractMap<V,​java.lang.Long>
        Returns:
        the map's size.
      • isEmpty

        public boolean isEmpty()
        Indicates whether map has any entries.
        Specified by:
        isEmpty in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        isEmpty in class java.util.AbstractMap<V,​java.lang.Long>
        Returns:
        true if the map is empty
      • putAll

        public void putAll​(java.util.Map<? extends V,​? extends java.lang.Long> map)
        Copies the key/value mappings in map into this map. Note that this will be a deep copy, as storage is by primitive value.
        Specified by:
        putAll in interface java.util.Map<V,​java.lang.Long>
        Overrides:
        putAll in class java.util.AbstractMap<V,​java.lang.Long>
        Parameters:
        map - a Map value
      • wrapKey

        protected final V wrapKey​(java.lang.Object o)
        Wraps a key
        Parameters:
        o - key in the underlying map
        Returns:
        an Object representation of the key
      • unwrapKey

        protected final V unwrapKey​(java.lang.Object key)
        Unwraps a key
        Parameters:
        key - wrapped key
        Returns:
        an unwrapped representation of the key
      • wrapValue

        protected java.lang.Long wrapValue​(long k)
        Wraps a value
        Parameters:
        k - value in the underlying map
        Returns:
        an Object representation of the value
      • unwrapValue

        protected long unwrapValue​(java.lang.Object value)
        Unwraps a value
        Parameters:
        value - wrapped value
        Returns:
        an unwrapped representation of the value
      • readExternal

        public void readExternal​(java.io.ObjectInput in)
                          throws java.io.IOException,
                                 java.lang.ClassNotFoundException
        Specified by:
        readExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • writeExternal

        public void writeExternal​(java.io.ObjectOutput out)
                           throws java.io.IOException
        Specified by:
        writeExternal in interface java.io.Externalizable
        Throws:
        java.io.IOException