GemFire 6.0.1

com.gemstone.gemfire.cache
Class ExpirationAttributes

java.lang.Object
  extended by com.gemstone.gemfire.cache.ExpirationAttributes
All Implemented Interfaces:
DataSerializable, Serializable

public class ExpirationAttributes
extends Object
implements DataSerializable

Immutable parameter object for accessing and setting the attributes associated with timeToLive and idleTimeout. If the expiration action is not specified, it defaults to ExpirationAction.INVALIDATE. If the timeout is not specified, it defaults to zero (which means to never timeout).

Since:
3.0
See Also:
AttributesFactory, RegionAttributes, AttributesMutator, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.gemstone.gemfire.DataSerializable
DataSerializable.Replaceable
 
Field Summary
static ExpirationAttributes DEFAULT
          convenience constant for a default instance
 
Constructor Summary
ExpirationAttributes()
          Constructs a default ExpirationAttributes, which indicates no expiration will take place.
ExpirationAttributes(int expirationTime)
          Constructs an ExpirationAttributes with the specified expiration time and the default expiration action ExpirationAction.INVALIDATE.
ExpirationAttributes(int expirationTime, ExpirationAction expirationAction)
          Constructs an ExpirationAttributes with the specified expiration time and expiration action.
 
Method Summary
static ExpirationAttributes createFromData(DataInput in)
           
 boolean equals(Object obj)
           
 void fromData(DataInput in)
          Reads the state of this object as primitive data from the given DataInput.
 ExpirationAction getAction()
          Returns the action that should take place when this value or region expires.
 int getTimeout()
          Returns the number of seconds before a region or value expires.
 int hashCode()
           
 void toData(DataOutput out)
          Writes the state of this object as primitive data to the given DataOutput.
 String toString()
          Returns a string representation of this ExpirationAttributes.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

DEFAULT

public static final ExpirationAttributes DEFAULT
convenience constant for a default instance

Constructor Detail

ExpirationAttributes

public ExpirationAttributes()
Constructs a default ExpirationAttributes, which indicates no expiration will take place.


ExpirationAttributes

public ExpirationAttributes(int expirationTime)
Constructs an ExpirationAttributes with the specified expiration time and the default expiration action ExpirationAction.INVALIDATE.

Parameters:
expirationTime - The number of seconds before expiration
Throws:
IllegalArgumentException - if expirationTime is nonpositive

ExpirationAttributes

public ExpirationAttributes(int expirationTime,
                            ExpirationAction expirationAction)
Constructs an ExpirationAttributes with the specified expiration time and expiration action.

Parameters:
expirationTime - The number of seconds for a value to live before it expires
expirationAction - the action to take when the value expires
Throws:
IllegalArgumentException - if expirationTime is nonpositive
Method Detail

getTimeout

public int getTimeout()
Returns the number of seconds before a region or value expires.

Returns:
the relative number of seconds before a region or value expires or zero if it will never expire

getAction

public ExpirationAction getAction()
Returns the action that should take place when this value or region expires.

Returns:
the action to take when expiring

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toString

public String toString()
Returns a string representation of this ExpirationAttributes. If the timeout is zero, returns "NO EXPIRATION".

Overrides:
toString in class Object
Returns:
the String representation of this expiration attribute

createFromData

public static ExpirationAttributes createFromData(DataInput in)
                                           throws IOException,
                                                  ClassNotFoundException
Throws:
IOException
ClassNotFoundException

fromData

public void fromData(DataInput in)
              throws IOException,
                     ClassNotFoundException
Description copied from interface: DataSerializable
Reads the state of this object as primitive data from the given DataInput.

Specified by:
fromData in interface DataSerializable
Throws:
IOException - A problem occurs while reading from in
ClassNotFoundException - A class could not be loaded while reading from in

toData

public void toData(DataOutput out)
            throws IOException
Description copied from interface: DataSerializable
Writes the state of this object as primitive data to the given DataOutput.

Since 5.7 it is possible for any method call to the specified DataOutput to throw GemFireRethrowable. It should not be caught by user code. If it is it must be rethrown.

Specified by:
toData in interface DataSerializable
Throws:
IOException - A problem occurs while writing to out

GemFire 6.0.1

Copyright © 2002-2009 GemStone Systems, Inc. All Rights Reserved.