Class TransactionOptions


  • public final class TransactionOptions
    extends Object
    Configuration for Transaction.
    Author:
    Nikita Koksharov
    • Method Detail

      • getResponseTimeout

        public long getResponseTimeout()
      • responseTimeout

        public TransactionOptions responseTimeout​(long timeout,
                                                  TimeUnit unit)
        Defines timeout for Redis response. Starts to countdown when transaction has been successfully sent.

        Default is 3000 milliseconds

        Parameters:
        timeout - value
        unit - value
        Returns:
        self instance
      • getRetryAttempts

        public int getRetryAttempts()
      • retryAttempts

        public TransactionOptions retryAttempts​(int retryAttempts)
        Defines attempts amount to send transaction if it hasn't been sent already.

        Default is 3 attempts

        Parameters:
        retryAttempts - value
        Returns:
        self instance
      • getRetryInterval

        public long getRetryInterval()
      • retryInterval

        public TransactionOptions retryInterval​(long retryInterval,
                                                TimeUnit retryIntervalUnit)
        Defines time interval for each attempt to send transaction if it hasn't been sent already.

        Default is 1500 milliseconds

        Parameters:
        retryInterval - time interval
        retryIntervalUnit - time interval unit
        Returns:
        self instance
      • syncSlavesTimeout

        @Deprecated
        public TransactionOptions syncSlavesTimeout​(long syncTimeout,
                                                    TimeUnit syncUnit)
        Deprecated.
        Use syncSlaves method instead.
        Parameters:
        syncTimeout - synchronization timeout
        syncUnit - synchronization timeout time unit
        Returns:
        self instance
      • getSyncTimeout

        public long getSyncTimeout()
      • syncSlaves

        public TransactionOptions syncSlaves​(int slaves,
                                             long timeout,
                                             TimeUnit unit)
        Synchronize write operations execution within defined timeout across specified amount of Redis slave nodes.

        Default slaves value is 0 which means available slaves at the moment of execution and -1 means no sync at all.

        Default timeout value is 5000 milliseconds NOTE: Redis 3.0+ required

        Parameters:
        slaves - slaves amount for synchronization. Default value is 0 which means available slaves at the moment of execution and -1 means no sync at all.
        timeout - synchronization timeout
        unit - synchronization timeout time unit
        Returns:
        self instance
      • getSyncSlaves

        public int getSyncSlaves()
      • getTimeout

        public long getTimeout()
      • timeout

        public TransactionOptions timeout​(long timeout,
                                          TimeUnit timeoutUnit)
        If transaction hasn't been committed within timeout it will rollback automatically. Set -1 to disable.

        Default is 5000 milliseconds

        Parameters:
        timeout - in milliseconds
        timeoutUnit - timeout time unit
        Returns:
        self instance