Package org.redisson

Class RedissonBucket<V>

    • Method Detail

      • compareAndSet

        public boolean compareAndSet​(V expect,
                                     V update)
        Description copied from interface: RBucket
        Atomically sets the value to the given updated value only if serialized state of the current value equals to serialized state of the expected value.
        Specified by:
        compareAndSet in interface RBucket<V>
        Parameters:
        expect - the expected value
        update - the new value
        Returns:
        true if successful; or false if the actual value was not equal to the expected value.
      • compareAndSetAsync

        public RFuture<Boolean> compareAndSetAsync​(V expect,
                                                   V update)
        Description copied from interface: RBucketAsync
        Atomically sets the value to the given updated value only if serialized state of the current value equals to serialized state of the expected value.
        Specified by:
        compareAndSetAsync in interface RBucketAsync<V>
        Parameters:
        expect - the expected value
        update - the new value
        Returns:
        true if successful; or false if the actual value was not equal to the expected value.
      • getAndSet

        public V getAndSet​(V newValue)
        Description copied from interface: RBucket
        Retrieves current element in the holder and replaces it with newValue.
        Specified by:
        getAndSet in interface RBucket<V>
        Parameters:
        newValue - - value to set
        Returns:
        previous value
      • getAndSetAsync

        public RFuture<V> getAndSetAsync​(V newValue)
        Description copied from interface: RBucketAsync
        Retrieves current element in the holder and replaces it with newValue.
        Specified by:
        getAndSetAsync in interface RBucketAsync<V>
        Parameters:
        newValue - - value to set
        Returns:
        previous value
      • get

        public V get()
        Description copied from interface: RBucket
        Retrieves element stored in the holder.
        Specified by:
        get in interface RBucket<V>
        Returns:
        element
      • getAndDelete

        public V getAndDelete()
        Description copied from interface: RBucket
        Retrieves element in the holder and removes it.
        Specified by:
        getAndDelete in interface RBucket<V>
        Returns:
        element
      • size

        public long size()
        Description copied from interface: RBucket
        Returns size of object in bytes.
        Specified by:
        size in interface RBucket<V>
        Returns:
        object size
      • set

        public void set​(V value)
        Description copied from interface: RBucket
        Stores element into the holder.
        Specified by:
        set in interface RBucket<V>
        Parameters:
        value - - value to set
      • setAsync

        public RFuture<Void> setAsync​(V value)
        Description copied from interface: RBucketAsync
        Stores element into the holder.
        Specified by:
        setAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        Returns:
        void
      • set

        public void set​(V value,
                        long timeToLive,
                        TimeUnit timeUnit)
        Description copied from interface: RBucket
        Stores element into the holder with defined timeToLive interval.
        Specified by:
        set in interface RBucket<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
      • setAsync

        public RFuture<Void> setAsync​(V value,
                                      long timeToLive,
                                      TimeUnit timeUnit)
        Description copied from interface: RBucketAsync
        Stores element into the holder with defined timeToLive interval.
        Specified by:
        setAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        void
      • trySetAsync

        public RFuture<Boolean> trySetAsync​(V value)
        Description copied from interface: RBucketAsync
        Tries to set element atomically into empty holder.
        Specified by:
        trySetAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        Returns:
        true if successful, or false if element was already set
      • trySetAsync

        public RFuture<Boolean> trySetAsync​(V value,
                                            long timeToLive,
                                            TimeUnit timeUnit)
        Description copied from interface: RBucketAsync
        Tries to set element atomically into empty holder with defined timeToLive interval.
        Specified by:
        trySetAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        true if successful, or false if element was already set
      • trySet

        public boolean trySet​(V value,
                              long timeToLive,
                              TimeUnit timeUnit)
        Description copied from interface: RBucket
        Tries to set element atomically into empty holder with defined timeToLive interval.
        Specified by:
        trySet in interface RBucket<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        true if successful, or false if element was already set
      • trySet

        public boolean trySet​(V value)
        Description copied from interface: RBucket
        Tries to set element atomically into empty holder.
        Specified by:
        trySet in interface RBucket<V>
        Parameters:
        value - - value to set
        Returns:
        true if successful, or false if element was already set
      • setIfExists

        public boolean setIfExists​(V value)
        Description copied from interface: RBucket
        Sets value only if it's already exists.
        Specified by:
        setIfExists in interface RBucket<V>
        Parameters:
        value - - value to set
        Returns:
        true if successful, or false if element wasn't set
      • setIfExistsAsync

        public RFuture<Boolean> setIfExistsAsync​(V value)
        Description copied from interface: RBucketAsync
        Sets value only if it's already exists.
        Specified by:
        setIfExistsAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        Returns:
        true if successful, or false if element wasn't set
      • setAndKeepTTL

        public void setAndKeepTTL​(V value)
        Description copied from interface: RBucket
        Set value and keep existing TTL.

        Requires Redis 6.0.0 and higher.

        Specified by:
        setAndKeepTTL in interface RBucket<V>
        Parameters:
        value - - value to set
      • setAndKeepTTLAsync

        public RFuture<Void> setAndKeepTTLAsync​(V value)
        Description copied from interface: RBucketAsync
        Set value and keep existing TTL.

        Requires Redis 6.0.0 and higher.

        Specified by:
        setAndKeepTTLAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        Returns:
        void
      • setIfExists

        public boolean setIfExists​(V value,
                                   long timeToLive,
                                   TimeUnit timeUnit)
        Description copied from interface: RBucket
        Sets value only if it's already exists.
        Specified by:
        setIfExists in interface RBucket<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        true if successful, or false if element wasn't set
      • setIfExistsAsync

        public RFuture<Boolean> setIfExistsAsync​(V value,
                                                 long timeToLive,
                                                 TimeUnit timeUnit)
        Description copied from interface: RBucketAsync
        Sets value only if it's already exists.
        Specified by:
        setIfExistsAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        true if successful, or false if element wasn't set
      • getAndSetAsync

        public RFuture<V> getAndSetAsync​(V value,
                                         long timeToLive,
                                         TimeUnit timeUnit)
        Description copied from interface: RBucketAsync
        Retrieves current element in the holder and replaces it with newValue with defined timeToLive interval.
        Specified by:
        getAndSetAsync in interface RBucketAsync<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        previous value
      • getAndSet

        public V getAndSet​(V value,
                           long timeToLive,
                           TimeUnit timeUnit)
        Description copied from interface: RBucket
        Retrieves current element in the holder and replaces it with newValue with defined timeToLive interval.
        Specified by:
        getAndSet in interface RBucket<V>
        Parameters:
        value - - value to set
        timeToLive - - time to live interval
        timeUnit - - unit of time to live interval
        Returns:
        previous value
      • removeListener

        public void removeListener​(int listenerId)
        Description copied from interface: RObject
        Removes object event listener
        Specified by:
        removeListener in interface RObject
        Overrides:
        removeListener in class RedissonObject
        Parameters:
        listenerId - - listener id
      • expire

        public boolean expire​(long timeToLive,
                              TimeUnit timeUnit)
        Description copied from interface: RExpirable
        Set a timeout for object. After the timeout has expired, the key will automatically be deleted.
        Specified by:
        expire in interface RExpirable
        Parameters:
        timeToLive - - timeout before object will be deleted
        timeUnit - - timeout time unit
        Returns:
        true if the timeout was set and false if not
      • expireAsync

        public RFuture<Boolean> expireAsync​(long timeToLive,
                                            TimeUnit timeUnit)
        Description copied from interface: RExpirableAsync
        Set a timeout for object in async mode. After the timeout has expired, the key will automatically be deleted.
        Specified by:
        expireAsync in interface RExpirableAsync
        Parameters:
        timeToLive - - timeout before object will be deleted
        timeUnit - - timeout time unit
        Returns:
        true if the timeout was set and false if not
      • expireAt

        public boolean expireAt​(long timestamp)
        Description copied from interface: RExpirable
        Specified by:
        expireAt in interface RExpirable
        Parameters:
        timestamp - - expire date in milliseconds (Unix timestamp)
        Returns:
        true if the timeout was set and false if not
      • expire

        public boolean expire​(Instant instant)
        Description copied from interface: RExpirable
        Set an expire date for object. When expire date comes the key will automatically be deleted.
        Specified by:
        expire in interface RExpirable
        Parameters:
        instant - - expire date
        Returns:
        true if the timeout was set and false if not
      • expireAsync

        public RFuture<Boolean> expireAsync​(Instant instant)
        Description copied from interface: RExpirableAsync
        Set an expire date for object. When expire date comes the key will automatically be deleted.
        Specified by:
        expireAsync in interface RExpirableAsync
        Parameters:
        instant - - expire date
        Returns:
        true if the timeout was set and false if not
      • clearExpire

        public boolean clearExpire()
        Description copied from interface: RExpirable
        Clear an expire timeout or expire date for object.
        Specified by:
        clearExpire in interface RExpirable
        Returns:
        true if timeout was removed false if object does not exist or does not have an associated timeout
      • clearExpireAsync

        public RFuture<Boolean> clearExpireAsync()
        Description copied from interface: RExpirableAsync
        Clear an expire timeout or expire date for object in async mode. Object will not be deleted.
        Specified by:
        clearExpireAsync in interface RExpirableAsync
        Returns:
        true if the timeout was cleared and false if not
      • remainTimeToLive

        public long remainTimeToLive()
        Description copied from interface: RExpirable
        Remaining time to live of Redisson object that has a timeout
        Specified by:
        remainTimeToLive in interface RExpirable
        Returns:
        time in milliseconds -2 if the key does not exist. -1 if the key exists but has no associated expire.
      • remainTimeToLiveAsync

        public RFuture<Long> remainTimeToLiveAsync()
        Description copied from interface: RExpirableAsync
        Remaining time to live of Redisson object that has a timeout
        Specified by:
        remainTimeToLiveAsync in interface RExpirableAsync
        Returns:
        time in milliseconds -2 if the key does not exist. -1 if the key exists but has no associated expire.