Rakesh API

org.rakeshv.utils
Class DynamicCache.Entry<K,V>

java.lang.Object
  extended by org.rakeshv.utils.DynamicCache.Entry<K,V>
All Implemented Interfaces:
java.util.Map.Entry<K,V>
Enclosing class:
DynamicCache<K,V>

public class DynamicCache.Entry<K,V>
extends java.lang.Object
implements java.util.Map.Entry<K,V>

An implementation of the Map.Entry interface. This is used to return the results for the Map.entrySet() method.


Field Summary
private  K key
          The key value for the map entry.
private  V value
          The value for the map entry.
 
Constructor Summary
DynamicCache.Entry(K key, V value)
          Initialise a new instance with the specified parameters.
 
Method Summary
 boolean equals(java.lang.Object object)
          Compares the specified object with this entry for equality.
 K getKey()
          Returns the key corresponding to this entry.
 V getValue()
          Returns the value corresponding to this entry.
 int hashCode()
          Returns the hash code value for this map entry.
 V setValue(V value)
          Replaces the value corresponding to this entry with the specified value (optional operation).
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

key

private final K key
The key value for the map entry.


value

private final V value
The value for the map entry.

Constructor Detail

DynamicCache.Entry

public DynamicCache.Entry(K key,
                          V value)
Initialise a new instance with the specified parameters.

Parameters:
key - The key to use for the entry.
value - The value to use for the entry.
Method Detail

getKey

public final K getKey()
               throws java.lang.IllegalStateException
Returns the key corresponding to this entry.

Specified by:
getKey in interface java.util.Map.Entry<K,V>
Returns:
K The key corresponding to this entry.
Throws:
java.lang.IllegalStateException - Implementations may, but are not required to, throw this exception if the entry has been removed from the backing map

getValue

public final V getValue()
                 throws java.lang.IllegalStateException
Returns the value corresponding to this entry. If the mapping has been removed from the backing map (by the iterator's remove operation), the results of this call are undefined.

Specified by:
getValue in interface java.util.Map.Entry<K,V>
Returns:
V The value corresponding to this entry.
Throws:
java.lang.IllegalStateException - Implementations may, but are not required to, throw this exception if the entry has been removed from the backing map

setValue

public final V setValue(V value)
                 throws java.lang.UnsupportedOperationException
Replaces the value corresponding to this entry with the specified value (optional operation). (Writes through to the map.) The behavior of this call is undefined if the mapping has already been removed from the map (by the iterator's remove operation).

Specified by:
setValue in interface java.util.Map.Entry<K,V>
Parameters:
value - New value to be stored in this entry.
Returns:
V Old value corresponding to the entry.
Throws:
java.lang.UnsupportedOperationException - The put operation is not supported by this operation.

equals

public final boolean equals(java.lang.Object object)
Compares the specified object with this entry for equality. Returns true if the given object is also a map entry and the two entries represent the same mapping. More formally, two entries e1 and e2 represent the same mapping if:
  (e1.getKey()==null ?  e2.getKey()==null : e1.getKey().equals(e2.getKey()))  &&
  (e1.getValue()==null ?  e2.getValue()==null : e1.getValue().equals(e2.getValue()))
 

This ensures that the equals method works properly across different implementations of the Map.Entry interface.

Specified by:
equals in interface java.util.Map.Entry<K,V>
Overrides:
equals in class java.lang.Object
Parameters:
object - Object to be compared for equality with this map entry.
Returns:
boolean true if the specified object is equal to this map entry.

hashCode

public final int hashCode()
Returns the hash code value for this map entry. The hash code of a map entry e is defined to be:
  (e.getKey()==null   ? 0 : e.getKey().hashCode()) ^
    (e.getValue()==null ? 0 : e.getValue().hashCode())
 

This ensures that e1.equals(e2) implies that e1.hashCode()==e2.hashCode() for any two Entries e1 and e2, as required by the general contract of Object.hashCode.

Specified by:
hashCode in interface java.util.Map.Entry<K,V>
Overrides:
hashCode in class java.lang.Object
Returns:
int The hash code value for this map entry.

Rakesh API

Copyright © 2002-2005 - Rakesh Vidyadharan