Class ExpirationAttributes

  • java.lang.Object
    • org.apache.geode.cache.ExpirationAttributes
  • All Implemented Interfaces:
    java.io.Serializable, DataSerializable

    public class ExpirationAttributes
    extends java.lang.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:
    GemFire 3.0
    See Also:
    AttributesFactory, RegionAttributes, AttributesMutator, Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static ExpirationAttributes DEFAULT
      convenience constant for a default instance
    • Constructor Summary

      Constructors 
      Constructor Description
      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

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static ExpirationAttributes createFromData​(java.io.DataInput in)  
      boolean equals​(java.lang.Object obj)  
      void fromData​(java.io.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()  
      boolean isDefault()  
      void toData​(java.io.DataOutput out)
      Writes the state of this object as primitive data to the given DataOutput.
      java.lang.String toString()
      Returns a string representation of this ExpirationAttributes.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    • 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:
        java.lang.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. If this parameter is negative, the expiration time will be set to 0, indicating no expiration.
        expirationAction - the action to take when the value expires
    • 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​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Returns a string representation of this ExpirationAttributes. If the timeout is zero, returns "NO EXPIRATION".
        Overrides:
        toString in class java.lang.Object
        Returns:
        the String representation of this expiration attribute
      • createFromData

        public static ExpirationAttributes createFromData​(java.io.DataInput in)
                                                   throws java.io.IOException,
                                                          java.lang.ClassNotFoundException
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException
      • fromData

        public void fromData​(java.io.DataInput in)
                      throws java.io.IOException,
                             java.lang.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
        Parameters:
        in - the DataInput to read from
        Throws:
        java.io.IOException - A problem occurs while reading from in
        java.lang.ClassNotFoundException - A class could not be loaded while reading from in
      • toData

        public void toData​(java.io.DataOutput out)
                    throws java.io.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
        Parameters:
        out - the DataOutput to write to
        Throws:
        java.io.IOException - A problem occurs while writing to out
      • isDefault

        public boolean isDefault()