Package org.redisson

Class RedissonSubList<V>

  • Type Parameters:
    V - the type of elements held in this collection
    All Implemented Interfaces:
    <V>, <V>, <V>, , <V>>, <V>>

    public class RedissonSubList<V>
    extends RedissonList<V>
    implements RList<V>
    Distributed and concurrent implementation of
    Author:
    Nikita Koksharov
    • Constructor Detail

      • RedissonSubList

        protected RedissonSubList​(Codec codec,
                                  CommandAsyncExecutor commandExecutor,
                                   name,
                                  int fromIndex,
                                  int toIndex)
    • Method Detail

      • addAsync

        public > addAsync​(V e)
        Description copied from interface: RCollectionAsync
        Adds element into this collection.
        Specified by:
        addAsync in interface RCollectionAsync<V>
        Overrides:
        addAsync in class RedissonList<V>
        Parameters:
        e - - element to add
        Returns:
        true if an element was added and false if it is already present
      • removeAsync

        public > removeAsync​( o)
        Description copied from interface: RCollectionAsync
        Removes a single instance of the specified element from this collection, if it is present.
        Specified by:
        removeAsync in interface RCollectionAsync<V>
        Overrides:
        removeAsync in class RedissonList<V>
        Parameters:
        o - element to be removed from this collection, if present
        Returns:
        true if an element was removed as a result of this call
      • containsAllAsync

        public > containsAllAsync​(<?> c)
        Description copied from interface: RCollectionAsync
        Returns true if this collection contains all of the elements in the specified collection.
        Specified by:
        containsAllAsync in interface RCollectionAsync<V>
        Overrides:
        containsAllAsync in class RedissonList<V>
        Parameters:
        c - collection to be checked for containment in this collection
        Returns:
        true if this collection contains all of the elements in the specified collection
      • addAllAsync

        public > addAllAsync​(<? extends V> c)
        Description copied from interface: RCollectionAsync
        Adds all elements contained in the specified collection
        Specified by:
        addAllAsync in interface RCollectionAsync<V>
        Overrides:
        addAllAsync in class RedissonList<V>
        Parameters:
        c - - collection of elements to add
        Returns:
        true if at least one element was added and false if all elements are already present
      • addAllAsync

        public > addAllAsync​(int index,
                                            <? extends V> coll)
        Description copied from interface: RListAsync
        Inserts elements at index. Subsequent elements are shifted.
        Specified by:
        addAllAsync in interface RListAsync<V>
        Overrides:
        addAllAsync in class RedissonList<V>
        Parameters:
        index - - index number
        coll - - elements to insert
        Returns:
        true if list changed or false if element isn't found
      • removeAllAsync

        public > removeAllAsync​(<?> c)
        Description copied from interface: RCollectionAsync
        Removes all of this collection's elements that are also contained in the specified collection.
        Specified by:
        removeAllAsync in interface RCollectionAsync<V>
        Overrides:
        removeAllAsync in class RedissonList<V>
        Parameters:
        c - collection containing elements to be removed from this collection
        Returns:
        true if this collection changed as a result of the call
      • retainAllAsync

        public > retainAllAsync​(<?> c)
        Description copied from interface: RCollectionAsync
        Retains only the elements in this collection that are contained in the specified collection.
        Specified by:
        retainAllAsync in interface RCollectionAsync<V>
        Overrides:
        retainAllAsync in class RedissonList<V>
        Parameters:
        c - collection containing elements to be retained in this collection
        Returns:
        true if this collection changed as a result of the call
      • clear

        public void clear()
        Specified by:
         in interface <V>
        Specified by:
         in interface <V>
        Overrides:
        clear in class RedissonList<V>
      • get

        public V get​(int index)
        Specified by:
         in interface <V>
        Overrides:
        get in class RedissonList<V>
      • set

        public V set​(int index,
                     V element)
        Specified by:
         in interface <V>
        Overrides:
        set in class RedissonList<V>
      • setAsync

        public RFuture<V> setAsync​(int index,
                                   V element)
        Description copied from interface: RListAsync
        Set element at index and returns previous element.
        Specified by:
        setAsync in interface RListAsync<V>
        Overrides:
        setAsync in class RedissonList<V>
        Parameters:
        index - - index of object
        element - - object
        Returns:
        previous element or null if element wasn't set.
      • fastSet

        public void fastSet​(int index,
                            V element)
        Description copied from interface: RList
        Set element at index. Works faster than but doesn't return previous element.
        Specified by:
        fastSet in interface RList<V>
        Overrides:
        fastSet in class RedissonList<V>
        Parameters:
        index - - index of object
        element - - object to set
      • add

        public void add​(int index,
                        V element)
        Specified by:
         in interface <V>
        Overrides:
        add in class RedissonList<V>
      • remove

        public V remove​(int index)
        Specified by:
         in interface <V>
        Overrides:
        remove in class RedissonList<V>
      • lastIndexOfAsync

        public > lastIndexOfAsync​( o)
        Description copied from interface: RListAsync
        Returns last index of element or -1 if element isn't found
        Specified by:
        lastIndexOfAsync in interface RListAsync<V>
        Overrides:
        lastIndexOfAsync in class RedissonList<V>
        Parameters:
        o - to find
        Returns:
        index of -1 if element isn't found
      • listIterator

        public <V> listIterator​(int fromIndex)
        Specified by:
         in interface <V>
        Overrides:
        listIterator in class RedissonList<V>
      • trimAsync

        public > trimAsync​(int fromIndex,
                                       int toIndex)
        Description copied from interface: RListAsync
        Trim list and remains elements only in specified range fromIndex, inclusive, and toIndex, inclusive.
        Specified by:
        trimAsync in interface RListAsync<V>
        Overrides:
        trimAsync in class RedissonList<V>
        Parameters:
        fromIndex - - from index
        toIndex - - to index
        Returns:
        void
      • trim

        public void trim​(int fromIndex,
                         int toIndex)
        Description copied from interface: RList
        Trim list and remains elements only in specified range fromIndex, inclusive, and toIndex, inclusive.
        Specified by:
        trim in interface RList<V>
        Overrides:
        trim in class RedissonList<V>
        Parameters:
        fromIndex - - from index
        toIndex - - to index
      • equals

        public boolean equals​( o)
        Specified by:
         in interface <V>
        Specified by:
         in interface <V>
        Overrides:
        equals in class RedissonList<V>
      • hashCode

        public int hashCode()
        Specified by:
         in interface <V>
        Specified by:
         in interface <V>
        Overrides:
        hashCode in class RedissonList<V>
      • expire

        public boolean expire​(long timeToLive,
                               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 > expireAsync​(long timeToLive,
                                             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)
        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 > expireAsync​( 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
      • expireAt

        public boolean expireAt​( timestamp)
        Description copied from interface: RExpirable
        Specified by:
        expireAt in interface RExpirable
        Parameters:
        timestamp - - 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 > 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 > 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.
      • expireAsync

        protected > expireAsync​(long timeToLive,
                                                timeUnit,
                                               ... keys)
      • expireAtAsync

        protected > expireAtAsync​(long timestamp,
                                                 ... keys)
      • clearExpireAsync

        protected > clearExpireAsync​(... keys)