Interface CuckooCommands<K,V>

Type Parameters:
K - the type of the key
V - the type of the value stored in the filter
All Superinterfaces:
RedisCommands
All Known Implementing Classes:
BlockingCuckooCommandsImpl

public interface CuckooCommands<K,V> extends RedisCommands
Allows executing commands from the cuckoo group. These commands require the Redis Bloom module (this modules also include Cuckoo filters) to be installed in the Redis server.

See the cuckoo command list for further information about these commands.

  • Method Details

    • cfadd

      void cfadd(K key, V value)
      Execute the command CF.ADD. Summary: Adds the specified element to the specified Cuckoo filter. Group: cuckoo

      If the cuckoo filter does not exist, it creates a new one.

      Parameters:
      key - the key
      value - the value, must not be null
    • cfaddnx

      boolean cfaddnx(K key, V value)
      Execute the command CF.ADDNX. Summary: Adds an item to a cuckoo filter if the item did not exist previously. Group: cuckoo

      If the cuckoo filter does not exist, it creates a new one.

      Parameters:
      key - the key
      value - the value, must not be null
      Returns:
      true if the value was added to the filter, false otherwise
    • cfcount

      long cfcount(K key, V value)
      Execute the command CF.COUNT. Summary: Returns the number of times an item may be in the filter. Because this is a probabilistic data structure, this may not necessarily be accurate. Group: cuckoo

      Parameters:
      key - the key
      value - the value, must not be null
      Returns:
      a Uni producing the count of possible matching copies of the value in the filter
    • cfdel

      boolean cfdel(K key, V value)
      Execute the command CF.DEL. Summary: Deletes an item once from the filter. If the item exists only once, it will be removed from the filter. If the item was added multiple times, it will still be present. Group: cuckoo

      Parameters:
      key - the key
      value - the value, must not be null
      Returns:
      a Uni producing true if the value was removed from the filter, false otherwise (the value was not found in the filter)
    • cfexists

      boolean cfexists(K key, V value)
      Execute the command CF.EXISTS. Summary: Check if an item exists in a Cuckoo filter Group: cuckoo

      Parameters:
      key - the key
      value - the value, must not be null
      Returns:
      a Uni producing true if the value was found in the filter, false otherwise.
    • cfinsert

      void cfinsert(K key, V... values)
      Execute the command CF.INSERT. Summary: Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Group: cuckoo

      Parameters:
      key - the key
      values - the values, must not be null, must not be empty, must not contain null
    • cfinsert

      void cfinsert(K key, CfInsertArgs args, V... values)
      Execute the command CF.INSERT. Summary: Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Group: cuckoo

      Parameters:
      key - the key
      args - the extra arguments
      values - the values, must not be null, must not be empty, must not contain null
    • cfinsertnx

      List<Boolean> cfinsertnx(K key, V... values)
      Execute the command CF.INSERTNX. Summary: Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Group: cuckoo

      Parameters:
      key - the key
      values - the values, must not be null, must not be empty, must not contain null
      Returns:
      a list of boolean. For each added value, the corresponding boolean is true if the value has been added (non-existing) or false if the value was already present in the filter.
    • cfinsertnx

      List<Boolean> cfinsertnx(K key, CfInsertArgs args, V... values)
      Execute the command CF.INSERTNX. Summary: Adds one or more items to a cuckoo filter, allowing the filter to be created with a custom capacity if it does not exist yet. Group: cuckoo

      Parameters:
      key - the key
      args - the extra arguments
      values - the values, must not be null, must not be empty, must not contain null
      Returns:
      a list of boolean. For each added value, the corresponding boolean is true if the value has been added (non-existing) or false if the value was already present in the filter.
    • cfmexists

      List<Boolean> cfmexists(K key, V... values)
      Execute the command CF.MEXISTS. Summary: Check if an item exists in a Cuckoo filter Group: cuckoo

      Parameters:
      key - the key
      values - the values, must not be null, must not contain null, must not be empty
      Returns:
      a list of boolean indicating, for each corresponding value, if the value exists in the filter or not.
    • cfreserve

      void cfreserve(K key, long capacity)
      Execute the command CF.RESERVE. Summary: Create a Cuckoo Filter as key with a single sub-filter for the initial amount of capacity for items. Group: cuckoo

      Parameters:
      key - the key
      capacity - the capacity
    • cfreserve

      void cfreserve(K key, long capacity, CfReserveArgs args)
      Execute the command CF.RESERVE. Summary: Create a Cuckoo Filter as key with a single sub-filter for the initial amount of capacity for items. Group: cuckoo

      Parameters:
      key - the key
      capacity - the capacity
      args - the extra parameters