Class RetryOptions

  • All Implemented Interfaces:
    Serializable

    public final class RetryOptions
    extends Object
    implements Serializable
    Contains various options for a task's retry strategy. Calls to RetryOptions methods may be chained to specify multiple options in the one RetryOptions object.

    Notes on usage:
    The recommended way to instantiate a RetryOptions object is to statically import RetryOptions.Builder.* and invoke a static creation method followed by an instance mutator (if needed):

    
     import static com.google.appengine.api.taskqueue.RetryOptions.Builder.*;
    
     ...
     RetryOptions retry = withTaskRetryLimit(10).taskAgeLimitSeconds("4d")
         .minBackoffSeconds(120).maxBackoffSeconds(3600).maxDoublings(5);
     {@link QueueFactory#getDefaultQueue()}.add(retryOptions(retry));
     
    See Also:
    Serialized Form
    • Constructor Detail

      • RetryOptions

        public RetryOptions​(RetryOptions options)
    • Method Detail

      • taskRetryLimit

        public RetryOptions taskRetryLimit​(int taskRetryLimit)
        Sets the number of retries allowed before a task can fail permanently. If both taskRetryLimit and taskAgeLimitSeconds are specified, then both limits must be exceeded before a task can fail permanently.
      • taskAgeLimitSeconds

        public RetryOptions taskAgeLimitSeconds​(long taskAgeLimitSeconds)
        Sets the maximum age from the first attempt to execute a task after which any new task failure can be permanent. If both taskRetryLimit and taskAgeLimitSeconds are specified, then both limits must be exceeded before a task can fail permanently.
        Parameters:
        taskAgeLimitSeconds - The age limit in seconds. Must not be negative.
        Returns:
        the RetryOptions object for chaining.
      • minBackoffSeconds

        public RetryOptions minBackoffSeconds​(double minBackoffSeconds)
        Sets the minimum retry backoff interval, in seconds.
        Parameters:
        minBackoffSeconds - Seconds value for the minimum backoff interval.
        Returns:
        the RetryOptions object for chaining.
      • maxBackoffSeconds

        public RetryOptions maxBackoffSeconds​(double maxBackoffSeconds)
        Sets the maximum retry backoff interval, in seconds.
        Parameters:
        maxBackoffSeconds - Seconds value for the maximum backoff interval.
        Returns:
        the RetryOptions object for chaining.
      • maxDoublings

        public RetryOptions maxDoublings​(int maxDoublings)
        Sets the maximum times the retry backoff interval should double before rising linearly to the maximum.
        Parameters:
        maxDoublings - The number of allowed doublings. Must not be negative.
        Returns:
        the RetryOptions object for chaining.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object