org.apache.commons.collections4.map
Class PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy<K,V>

java.lang.Object
  extended by org.apache.commons.collections4.map.PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy<K,V>
Type Parameters:
K - the type of the keys in the map
V - the type of the values in the map
All Implemented Interfaces:
Serializable, PassiveExpiringMap.ExpirationPolicy<K,V>
Enclosing class:
PassiveExpiringMap<K,V>

public static class PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy<K,V>
extends Object
implements PassiveExpiringMap.ExpirationPolicy<K,V>

A ExpirationPolicy that returns a expiration time that is a constant about of time in the future from the current time.

Since:
4.0
Version:
$Id: PassiveExpiringMap.java 1481598 2013-05-12 16:28:28Z tn $
See Also:
Serialized Form

Constructor Summary
PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy()
          Default constructor.
PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy(long timeToLiveMillis)
          Construct a policy with the given time-to-live constant measured in milliseconds.
PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy(long timeToLive, TimeUnit timeUnit)
          Construct a policy with the given time-to-live constant measured in the given time unit of measure.
 
Method Summary
 long expirationTime(K key, V value)
          Determine the expiration time for the given key-value entry.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy

public PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy()
Default constructor. Constructs a policy using a negative time-to-live value that results in entries never expiring.


PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy

public PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy(long timeToLiveMillis)
Construct a policy with the given time-to-live constant measured in milliseconds. A negative time-to-live value indicates entries never expire. A zero time-to-live value indicates entries expire (nearly) immediately.

Parameters:
timeToLiveMillis - the constant amount of time (in milliseconds) an entry is available before it expires. A negative value results in entries that NEVER expire. A zero value results in entries that ALWAYS expire.

PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy

public PassiveExpiringMap.ConstantTimeToLiveExpirationPolicy(long timeToLive,
                                                             TimeUnit timeUnit)
Construct a policy with the given time-to-live constant measured in the given time unit of measure.

Parameters:
timeToLive - the constant amount of time an entry is available before it expires. A negative value results in entries that NEVER expire. A zero value results in entries that ALWAYS expire.
timeUnit - the unit of time for the timeToLive parameter, must not be null.
Throws:
IllegalArgumentException - if the time unit is null.
Method Detail

expirationTime

public long expirationTime(K key,
                           V value)
Determine the expiration time for the given key-value entry.

Specified by:
expirationTime in interface PassiveExpiringMap.ExpirationPolicy<K,V>
Parameters:
key - the key for the entry (ignored).
value - the value for the entry (ignored).
Returns:
if timeToLiveMillis ≥ 0, an expiration time of timeToLiveMillis + System.currentTimeMillis() is returned. Otherwise, -1 is returned indicating the entry never expires.


Copyright © 2001–2013 The Apache Software Foundation. All rights reserved.