Interface RMapCacheAsync<K,​V>

    • Method Detail

      • setMaxSizeAsync

        RFuture<Void> setMaxSizeAsync​(int maxSize)
        Sets max size of the map. Superfluous elements are evicted using LRU algorithm.
        Parameters:
        maxSize - - max size
        Returns:
        void
      • trySetMaxSizeAsync

        RFuture<Boolean> trySetMaxSizeAsync​(int maxSize)
        Tries to set max size of the map. Superfluous elements are evicted using LRU algorithm.
        Parameters:
        maxSize - - max size
        Returns:
        true if max size has been successfully set, otherwise false.
      • putIfAbsentAsync

        RFuture<V> putIfAbsentAsync​(K key,
                                    V value,
                                    long ttl,
                                    TimeUnit unit)
        If the specified key is not already associated with a value, associate it with the given value.

        Stores value mapped by key with specified time to live. Entry expires after specified time to live. If the map previously contained a mapping for the key, the old value is replaced by the specified value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then stores infinitely.
        unit - - time unit
        Returns:
        previous associated value
      • putIfAbsentAsync

        RFuture<V> putIfAbsentAsync​(K key,
                                    V value,
                                    long ttl,
                                    TimeUnit ttlUnit,
                                    long maxIdleTime,
                                    TimeUnit maxIdleUnit)
        If the specified key is not already associated with a value, associate it with the given value.

        Stores value mapped by key with specified time to live and max idle time. Entry expires when specified time to live or max idle time has expired.

        If the map previously contained a mapping for the key, the old value is replaced by the specified value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then time to live doesn't affect entry expiration.
        ttlUnit - - time unit
        maxIdleTime - - max idle time for key\value entry. If 0 then max idle time doesn't affect entry expiration.
        maxIdleUnit - - time unit

        if maxIdleTime and ttl params are equal to 0 then entry stores infinitely.

        Returns:
        previous associated value
      • putAsync

        RFuture<V> putAsync​(K key,
                            V value,
                            long ttl,
                            TimeUnit unit)
        Stores value mapped by key with specified time to live. Entry expires after specified time to live. If the map previously contained a mapping for the key, the old value is replaced by the specified value.
        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then stores infinitely.
        unit - - time unit
        Returns:
        previous associated value
      • putAsync

        RFuture<V> putAsync​(K key,
                            V value,
                            long ttl,
                            TimeUnit ttlUnit,
                            long maxIdleTime,
                            TimeUnit maxIdleUnit)
        Stores value mapped by key with specified time to live and max idle time. Entry expires when specified time to live or max idle time has expired.

        If the map previously contained a mapping for the key, the old value is replaced by the specified value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then time to live doesn't affect entry expiration.
        ttlUnit - - time unit
        maxIdleTime - - max idle time for key\value entry. If 0 then max idle time doesn't affect entry expiration.
        maxIdleUnit - - time unit

        if maxIdleTime and ttl params are equal to 0 then entry stores infinitely.

        Returns:
        previous associated value
      • fastPutAsync

        RFuture<Boolean> fastPutAsync​(K key,
                                      V value,
                                      long ttl,
                                      TimeUnit unit)
        Stores value mapped by key with specified time to live. Entry expires after specified time to live.

        If the map previously contained a mapping for the key, the old value is replaced by the specified value.

        Works faster than usual putAsync(Object, Object, long, TimeUnit) as it not returns previous value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then stores infinitely.
        unit - - time unit
        Returns:
        true if key is a new key in the hash and value was set. false if key already exists in the hash and the value was updated.
      • fastPutAsync

        RFuture<Boolean> fastPutAsync​(K key,
                                      V value,
                                      long ttl,
                                      TimeUnit ttlUnit,
                                      long maxIdleTime,
                                      TimeUnit maxIdleUnit)
        Stores value mapped by key with specified time to live and max idle time. Entry expires when specified time to live or max idle time has expired.

        If the map previously contained a mapping for the key, the old value is replaced by the specified value.

        Works faster than usual putAsync(Object, Object, long, TimeUnit, long, TimeUnit) as it not returns previous value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then time to live doesn't affect entry expiration.
        ttlUnit - - time unit
        maxIdleTime - - max idle time for key\value entry. If 0 then max idle time doesn't affect entry expiration.
        maxIdleUnit - - time unit

        if maxIdleTime and ttl params are equal to 0 then entry stores infinitely.

        Returns:
        true if key is a new key in the hash and value was set. false if key already exists in the hash and the value was updated.
      • fastPutIfAbsentAsync

        RFuture<Boolean> fastPutIfAbsentAsync​(K key,
                                              V value,
                                              long ttl,
                                              TimeUnit ttlUnit,
                                              long maxIdleTime,
                                              TimeUnit maxIdleUnit)
        If the specified key is not already associated with a value, associate it with the given value.

        Stores value mapped by key with specified time to live and max idle time. Entry expires when specified time to live or max idle time has expired.

        Works faster than usual putIfAbsentAsync(Object, Object, long, TimeUnit, long, TimeUnit) as it not returns previous value.

        Parameters:
        key - - map key
        value - - map value
        ttl - - time to live for key\value entry. If 0 then time to live doesn't affect entry expiration.
        ttlUnit - - time unit
        maxIdleTime - - max idle time for key\value entry. If 0 then max idle time doesn't affect entry expiration.
        maxIdleUnit - - time unit

        if maxIdleTime and ttl params are equal to 0 then entry stores infinitely.

        Returns:
        true if key is a new key in the hash and value was set. false if key already exists in the hash
      • sizeAsync

        RFuture<Integer> sizeAsync()
        Returns the number of entries in cache. This number can reflects expired entries too due to non realtime cleanup process.
        Specified by:
        sizeAsync in interface RMapAsync<K,​V>
        Returns:
        size
      • remainTimeToLiveAsync

        RFuture<Long> remainTimeToLiveAsync​(K key)
        Remaining time to live of map entry associated with a key.
        Parameters:
        key - - map key
        Returns:
        time in milliseconds -2 if the key does not exist. -1 if the key exists but has no associated expire.