Interface LeaseMap

All Superinterfaces:
Map
All Known Implementing Classes:
AbstractLeaseMap, ConstrainableLandlordLeaseMap, LandlordLeaseMap, LeaseMapProxy, SpaceLeaseMap

public interface LeaseMap extends Map
An unsynchronized Map from Lease to Long (the duration to use when renewing the lease). For all methods of LeaseMap except canContainKey, an IllegalArgumentException is thrown if a key is not a Lease or a value is not a Long. Null keys and values are not supported.
Since:
1.0
Author:
Sun Microsystems, Inc.
  • Method Details

    • canContainKey

      boolean canContainKey(Object key)
      Returns true if the given object is a Lease which can be renewed and cancelled in a batch with other leases in the map. Whether or not two Lease objects can be batched is an implementation detail determined by the objects.
      Parameters:
      key - an object that should be a lease
      Returns:
      true if the lease can be renewed and cancelled in a a batch with other leases
      See Also:
    • renewAll

      void renewAll() throws LeaseMapException, RemoteException
      Renews all leases in the LeaseMap, using their current values as the renewal durations. If all renewals are successful, returns normally. Otherwise, removes all leases that failed to renew from the LeaseMap, and throws LeaseMapException.
      Throws:
      LeaseMapException
      RemoteException
    • cancelAll

      void cancelAll() throws LeaseMapException, RemoteException
      Cancels all leases in the LeaseMap. If all cancels are successful, returns normally (leaving all leases in the map). Otherwise, removes all leases that failed to cancel from the LeaseMap, and throws LeaseMapException.
      Throws:
      LeaseMapException
      RemoteException