org.elasticsearch.util.gnu.trove.decorator
Class TIntFloatHashMapDecorator

java.lang.Object
  extended by java.util.AbstractMap<java.lang.Integer,java.lang.Float>
      extended by org.elasticsearch.util.gnu.trove.decorator.TIntFloatHashMapDecorator
All Implemented Interfaces:
java.io.Externalizable, java.io.Serializable, java.lang.Cloneable, java.util.Map<java.lang.Integer,java.lang.Float>

public class TIntFloatHashMapDecorator
extends java.util.AbstractMap<java.lang.Integer,java.lang.Float>
implements java.util.Map<java.lang.Integer,java.lang.Float>, java.io.Externalizable, java.lang.Cloneable

Wrapper class to make a TIntFloatHashMap conform to the java.util.Map API. This class simply decorates an underlying TIntFloatHashMap 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

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.AbstractMap
java.util.AbstractMap.SimpleEntry<K,V>, java.util.AbstractMap.SimpleImmutableEntry<K,V>
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Field Summary
protected  TIntFloatHashMap _map
          the wrapped primitive map
 
Constructor Summary
TIntFloatHashMapDecorator()
          FOR EXTERNALIZATION ONLY!!
TIntFloatHashMapDecorator(TIntFloatHashMap map)
          Creates a wrapper that decorates the specified primitive map.
 
Method Summary
 void clear()
          Empties the map.
 TIntFloatHashMapDecorator 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<java.lang.Integer,java.lang.Float>> entrySet()
          Returns a Set view on the entries of the map.
 java.lang.Float get(java.lang.Integer key)
          Retrieves the value for key
 TIntFloatHashMap getMap()
          Returns a reference to the map wrapped by this decorator.
 boolean isEmpty()
          Indicates whether map has any entries.
 java.lang.Float put(java.lang.Integer key, java.lang.Float value)
          Inserts a key/value pair into the map.
 void putAll(java.util.Map<? extends java.lang.Integer,? extends java.lang.Float> map)
          Copies the key/value mappings in map into this map.
 void readExternal(java.io.ObjectInput in)
           
 java.lang.Float remove(java.lang.Integer key)
          Deletes a key/value pair from the map.
 int size()
          Returns the number of entries in the map.
protected  int unwrapKey(java.lang.Object key)
          Unwraps a key
protected  float unwrapValue(java.lang.Object value)
          Unwraps a value
protected  java.lang.Integer wrapKey(int k)
          Wraps a key
protected  java.lang.Float wrapValue(float k)
          Wraps a value
 void writeExternal(java.io.ObjectOutput out)
           
 
Methods inherited from class java.util.AbstractMap
equals, get, hashCode, keySet, remove, toString, values
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Map
equals, get, hashCode, keySet, remove, values
 

Field Detail

_map

protected TIntFloatHashMap _map
the wrapped primitive map

Constructor Detail

TIntFloatHashMapDecorator

public TIntFloatHashMapDecorator()
FOR EXTERNALIZATION ONLY!!


TIntFloatHashMapDecorator

public TIntFloatHashMapDecorator(TIntFloatHashMap map)
Creates a wrapper that decorates the specified primitive map.

Method Detail

getMap

public TIntFloatHashMap getMap()
Returns a reference to the map wrapped by this decorator.


clone

public TIntFloatHashMapDecorator 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<java.lang.Integer,java.lang.Float>
Returns:
a copy of the receiver

put

public java.lang.Float put(java.lang.Integer key,
                           java.lang.Float value)
Inserts a key/value pair into the map.

Specified by:
put in interface java.util.Map<java.lang.Integer,java.lang.Float>
Overrides:
put in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
Parameters:
key - an Object value
value - an Object value
Returns:
the previous value associated with key, or Float(0) if none was found.

get

public java.lang.Float get(java.lang.Integer key)
Retrieves the value for key

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<java.lang.Integer,java.lang.Float>
Overrides:
clear in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>

remove

public java.lang.Float remove(java.lang.Integer key)
Deletes a key/value pair from the map.

Parameters:
key - an Object value
Returns:
the removed value, or Float(0) if it was not found in the map

entrySet

public java.util.Set<java.util.Map.Entry<java.lang.Integer,java.lang.Float>> entrySet()
Returns a Set view on the entries of the map.

Specified by:
entrySet in interface java.util.Map<java.lang.Integer,java.lang.Float>
Specified by:
entrySet in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
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<java.lang.Integer,java.lang.Float>
Overrides:
containsValue in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
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<java.lang.Integer,java.lang.Float>
Overrides:
containsKey in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
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<java.lang.Integer,java.lang.Float>
Overrides:
size in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
Returns:
the map's size.

isEmpty

public boolean isEmpty()
Indicates whether map has any entries.

Specified by:
isEmpty in interface java.util.Map<java.lang.Integer,java.lang.Float>
Overrides:
isEmpty in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
Returns:
true if the map is empty

putAll

public void putAll(java.util.Map<? extends java.lang.Integer,? extends java.lang.Float> 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<java.lang.Integer,java.lang.Float>
Overrides:
putAll in class java.util.AbstractMap<java.lang.Integer,java.lang.Float>
Parameters:
map - a Map value

wrapKey

protected java.lang.Integer wrapKey(int k)
Wraps a key

Parameters:
k - key in the underlying map
Returns:
an Object representation of the key

unwrapKey

protected int unwrapKey(java.lang.Object key)
Unwraps a key

Parameters:
key - wrapped key
Returns:
an unwrapped representation of the key

wrapValue

protected java.lang.Float wrapValue(float k)
Wraps a value

Parameters:
k - value in the underlying map
Returns:
an Object representation of the value

unwrapValue

protected float 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