Class LeaseMap<T>

  • All Implemented Interfaces:
    java.io.Serializable, java.util.concurrent.ConcurrentMap<T,​Lease<T>>, java.util.Map<T,​Lease<T>>

    public class LeaseMap<T>
    extends java.util.concurrent.ConcurrentHashMap<T,​Lease<T>>
    The LeaseMap object is used to map lease keys to the lease objects managing those objects. This allows components that are using the leasing framework to associate an object with its lease and vice versa. Such a capability enables lease renewals to be performed without the need for a direct handle on the lease.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class java.util.concurrent.ConcurrentHashMap

        java.util.concurrent.ConcurrentHashMap.KeySetView<K extends java.lang.Object,​V extends java.lang.Object>
      • 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>
    • Constructor Summary

      Constructors 
      Constructor Description
      LeaseMap()
      Constructor for the LeaseMap object.
      LeaseMap​(int capacity)
      Constructor for the LeaseMap object.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      Lease<T> get​(java.lang.Object key)
      This is used to acquire the Lease object that is mapped to the specified key.
      Lease<T> remove​(java.lang.Object key)
      This is used to remove the Lease object that is mapped to the specified key.
      • Methods inherited from class java.util.concurrent.ConcurrentHashMap

        clear, compute, computeIfAbsent, computeIfPresent, contains, containsKey, containsValue, elements, entrySet, equals, forEach, forEach, forEach, forEachEntry, forEachEntry, forEachKey, forEachKey, forEachValue, forEachValue, getOrDefault, hashCode, isEmpty, keys, keySet, keySet, mappingCount, merge, newKeySet, newKeySet, put, putAll, putIfAbsent, reduce, reduceEntries, reduceEntries, reduceEntriesToDouble, reduceEntriesToInt, reduceEntriesToLong, reduceKeys, reduceKeys, reduceKeysToDouble, reduceKeysToInt, reduceKeysToLong, reduceToDouble, reduceToInt, reduceToLong, reduceValues, reduceValues, reduceValuesToDouble, reduceValuesToInt, reduceValuesToLong, remove, replace, replace, replaceAll, search, searchEntries, searchKeys, searchValues, size, toString, values
      • Methods inherited from class java.util.AbstractMap

        clone
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • LeaseMap

        public LeaseMap()
        Constructor for the LeaseMap object. This will create a map for mapping leased resource keys to the leases that manage them. Having such a map allows leases to be maintained without having a direct handle on the lease.
      • LeaseMap

        public LeaseMap​(int capacity)
        Constructor for the LeaseMap object. This will create a map for mapping leased resource keys to the leases that manage them. Having such a map allows leases to be maintained without having a direct handle on the lease.
        Parameters:
        capacity - this is the initial capacity of the map
    • Method Detail

      • get

        public Lease<T> get​(java.lang.Object key)
        This is used to acquire the Lease object that is mapped to the specified key. Overriding this method ensures that even without generic parameters a type safe method for acquiring the registered lease objects can be used.
        Specified by:
        get in interface java.util.Map<T,​Lease<T>>
        Overrides:
        get in class java.util.concurrent.ConcurrentHashMap<T,​Lease<T>>
        Parameters:
        key - this is the key used to acquire the lease object
        Returns:
        this is the lease that is associated with the key
      • remove

        public Lease<T> remove​(java.lang.Object key)
        This is used to remove the Lease object that is mapped to the specified key. Overriding this method ensures that even without generic parameters a type safe method for removing the registered lease objects can be used.
        Specified by:
        remove in interface java.util.Map<T,​Lease<T>>
        Overrides:
        remove in class java.util.concurrent.ConcurrentHashMap<T,​Lease<T>>
        Parameters:
        key - this is the key used to remove the lease object
        Returns:
        this is the lease that is associated with the key