## visad.util
Class WeakMapValue

    java.lang.Object
      java.lang.ref.Reference
          java.lang.ref.WeakReference
              visad.util.WeakMapValue

public final class WeakMapValue
extends WeakReference

A weakly-referenced `Map` value. The purpose of this class is to aid the creation of memory-sensitive, canonical mappings.

Nested Class Summary

Nested classes inherited from class java.lang.ref.Reference
``

Field Summary

Fields inherited from class java.lang.ref.Reference
``

Constructor Summary
`WeakMapValue(Object key, Object value, ReferenceQueue queue)` Constructs from a key and value.

Method Summary
`boolean` `equals(Object obj)` Indicates if this instance equals another object.
`Object` `getKey()` Returns the key associated with this value.
`Object` `getValue()` Returns the value associated with this value.
`int` `hashCode()` Returns the hash code of this instance.

Methods inherited from class java.lang.ref.Reference
`clear, enqueue, get, isEnqueued`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### WeakMapValue

    public WeakMapValue(Object key,
                        Object value,
                        ReferenceQueue queue)

  Constructs from a key and value. The key and value are not copied.

Parameters:
  `key` - The key for the map.
  `value` - The value for the map.
  `queue` - The queue to receive garbaged-collected instances of this class.
Throws:
  `NullPointerException` - if the queue is `null`.

Method Detail

### getKey

    public final Object getKey()

  Returns the key associated with this value. The returned object is not a copy.

  Returns:
    The associated key.

### getValue

    public final Object getValue()

  Returns the value associated with this value. The returned object is not a copy. It may be `null` if this reference object has been cleared by the program or garbage collector.

  Returns:
    The associated value or `null`.

### equals

    public boolean equals(Object obj)

  Indicates if this instance equals another object. This method returns true if and only if the other object is a WeakMapValue and the values of both instances are either `null` or equal.

  Parameters:
    `obj` - The other object.
  Returns:
    True if and only if this instance equals the other object.

### hashCode

    public int hashCode()

  Returns the hash code of this instance. This is the same as the hash code of the associated value.

  Returns:
    The hash code of this instance.