javautils.maps
Class ObjectToLongMap

java.lang.Object
  |
  +--javautils.maps.AbstractTypedMap
        |
        +--javautils.maps.ObjectToLongMap
All Implemented Interfaces:
java.lang.Cloneable, java.io.Serializable

public final class ObjectToLongMap
extends AbstractTypedMap

Map from objects to long-values. LongHolder-objects are used for storing the values in the map.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class javautils.maps.AbstractTypedMap
map
 
Constructor Summary
ObjectToLongMap()
          A new map based on the map type used by AbstractTypedMap.AbstractTypedMap(java.util.Map).
ObjectToLongMap(java.util.Map map)
          A new Object->long map using the given map.
 
Method Summary
 long get(java.lang.Object key)
          The value associated with the key - throws an assertion exception if the key is not associated with a value.
 long getOr(java.lang.Object key, long alternative)
          The value associated with the key or the specified alternative value if the key is not associated with any value.
 LongHolder holder(java.lang.Object key)
          The holder of the value associated with the key or null if the key is not associated with a value.
 void put(java.lang.Object key, long value)
          Associates the key with the specified value.
 void put(java.lang.Object key, LongHolder holder)
          Associates the key with the specified holder.
 LongHolder ref(java.lang.Object key)
          The holder associated with the key - throws an assertion exception if the key is not associated with a value.
 LongHolder refOr(java.lang.Object key, long value)
          The holder associated with the key or a new holder that holds the specified value and associated with the key.
protected  boolean valuePredicate(java.lang.Object value)
          Tests that the value is a non null LongHolder-object.
 
Methods inherited from class javautils.maps.AbstractTypedMap
clear, clone, containsKey, isEmpty, keyIterator, keySet, remove, size, toString, unmodifiableMap, valueIterator
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ObjectToLongMap

public ObjectToLongMap()

A new map based on the map type used by AbstractTypedMap.AbstractTypedMap(java.util.Map).


ObjectToLongMap

public ObjectToLongMap(java.util.Map map)

A new Object->long map using the given map. The given map must not contain any values that are not LongHolder-objects. The given map should also never be modified except by using the services of this class.

Method Detail

valuePredicate

protected boolean valuePredicate(java.lang.Object value)

Tests that the value is a non null LongHolder-object.

Specified by:
valuePredicate in class AbstractTypedMap

put

public void put(java.lang.Object key,
                long value)

Associates the key with the specified value. Will not create a new holder if the key is already associated with a value.


put

public void put(java.lang.Object key,
                LongHolder holder)

Associates the key with the specified holder.


get

public long get(java.lang.Object key)

The value associated with the key - throws an assertion exception if the key is not associated with a value.


getOr

public long getOr(java.lang.Object key,
                  long alternative)

The value associated with the key or the specified alternative value if the key is not associated with any value.


ref

public LongHolder ref(java.lang.Object key)

The holder associated with the key - throws an assertion exception if the key is not associated with a value.


refOr

public LongHolder refOr(java.lang.Object key,
                        long value)

The holder associated with the key or a new holder that holds the specified value and associated with the key.


holder

public LongHolder holder(java.lang.Object key)

The holder of the value associated with the key or null if the key is not associated with a value.