Class ReactiveBitMapCommandsImpl<K>

All Implemented Interfaces:
ReactiveBitMapCommands<K>, ReactiveRedisCommands

public class ReactiveBitMapCommandsImpl<K> extends AbstractBitMapCommands<K> implements ReactiveBitMapCommands<K>, ReactiveRedisCommands
  • Constructor Details

  • Method Details

    • getDataSource

      public ReactiveRedisDataSource getDataSource()
      Specified by:
      getDataSource in interface ReactiveRedisCommands
      Returns:
      the data source.
    • bitcount

      public io.smallrye.mutiny.Uni<Long> bitcount(K key)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITCOUNT. Summary: Count set bits in a string Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitcount in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      Returns:
      the number of bits set to 1 in the stored string.
    • bitcount

      public io.smallrye.mutiny.Uni<Long> bitcount(K key, long start, long end)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITCOUNT. Summary: Count set bits in a string Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitcount in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      start - the start index
      end - the end index
      Returns:
      the number of bits set to 1 in the stored string.
    • bitfield

      public io.smallrye.mutiny.Uni<List<Long>> bitfield(K key, BitFieldArgs bitFieldArgs)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITFIELD. Summary: Perform arbitrary bitfield integer operations on strings Group: bitmap Requires Redis 3.2.0
      Specified by:
      bitfield in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      Returns:
      the results from the bitfield commands as described on https://redis.io/commands/bitfield/.
    • bitpos

      public io.smallrye.mutiny.Uni<Long> bitpos(K key, int bit)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITPOS. Summary: Find first bit set or clear in a string Group: bitmap Requires Redis 2.8.7
      Specified by:
      bitpos in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      bit - 1 to look for 1, 0 to look for 0
      Returns:
      the position of the first bit set to 1 or 0 according to the request. If we look for set bits (the bit argument is 1) and the string is empty or composed of just zero ints, -1 is returned. If we look for clear bits (the bit argument is 0) and the string only contains bit set to 1, the function returns the first bit not part of the string on the right. So if the string is three ints set to the value 0xff the command BITPOS key 0 will return 24, since up to bit 23 all the bits are 1. Basically, the function considers the right of the string as padded with zeros if you look for clear bits and specify no range or the start argument only. However, this behavior changes if you are looking for clear bits and specify a range with both start and end. If no clear bit is found in the specified range, the function returns -1 as the user specified a clear range and there are no 0 bits in that range.
    • bitpos

      public io.smallrye.mutiny.Uni<Long> bitpos(K key, int bit, long start)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITPOS. Summary: Find first bit set or clear in a string Group: bitmap Requires Redis 2.8.7
      Specified by:
      bitpos in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      bit - 1 to look for 1, 0 to look for 0
      start - the start position
      Returns:
      the position of the first bit set to 1 or 0 according to the request. If we look for set bits (the bit argument is 1) and the string is empty or composed of just zero ints, -1 is returned. If we look for clear bits (the bit argument is 0) and the string only contains bit set to 1, the function returns the first bit not part of the string on the right. So if the string is three ints set to the value 0xff the command BITPOS key 0 will return 24, since up to bit 23 all the bits are 1. Basically, the function considers the right of the string as padded with zeros if you look for clear bits and specify no range or the start argument only. However, this behavior changes if you are looking for clear bits and specify a range with both start and end. If no clear bit is found in the specified range, the function returns -1 as the user specified a clear range and there are no 0 bits in that range.
    • bitpos

      public io.smallrye.mutiny.Uni<Long> bitpos(K key, int bit, long start, long end)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITPOS. Summary: Find first bit set or clear in a string Group: bitmap Requires Redis 2.8.7
      Specified by:
      bitpos in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key
      bit - 1 to look for 1, 0 to look for 0
      start - the start position
      end - the end position
      Returns:
      the position of the first bit set to 1 or 0 according to the request. If we look for set bits (the bit argument is 1) and the string is empty or composed of just zero ints, -1 is returned. If we look for clear bits (the bit argument is 0) and the string only contains bit set to 1, the function returns the first bit not part of the string on the right. So if the string is three ints set to the value 0xff the command BITPOS key 0 will return 24, since up to bit 23 all the bits are 1. Basically, the function considers the right of the string as padded with zeros if you look for clear bits and specify no range or the start argument only. However, this behavior changes if you are looking for clear bits and specify a range with both start and end. If no clear bit is found in the specified range, the function returns -1 as the user specified a clear range and there are no 0 bits in that range.
    • bitopAnd

      @SafeVarargs public final io.smallrye.mutiny.Uni<Long> bitopAnd(K destination, K... keys)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITOP. Summary: Perform a bitwise AND operation between strings Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitopAnd in interface ReactiveBitMapCommands<K>
      Parameters:
      destination - the destination key
      keys - the keys
      Returns:
      The size of the string stored in the destination key, that is equal to the size of the longest input string.
    • bitopNot

      public io.smallrye.mutiny.Uni<Long> bitopNot(K destination, K source)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITOP. Summary: Perform a bitwise NOT operation between strings Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitopNot in interface ReactiveBitMapCommands<K>
      Parameters:
      destination - the destination key
      source - the source key
      Returns:
      The size of the string stored in the destination key, that is equal to the size of the longest input string.
    • bitopOr

      @SafeVarargs public final io.smallrye.mutiny.Uni<Long> bitopOr(K destination, K... keys)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITOP. Summary: Perform a bitwise OR operation between strings Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitopOr in interface ReactiveBitMapCommands<K>
      Parameters:
      destination - the destination key
      keys - the keys
      Returns:
      The size of the string stored in the destination key, that is equal to the size of the longest input string.
    • bitopXor

      @SafeVarargs public final io.smallrye.mutiny.Uni<Long> bitopXor(K destination, K... keys)
      Description copied from interface: ReactiveBitMapCommands
      Execute the command BITOP. Summary: Perform a bitwise XOR operation between strings Group: bitmap Requires Redis 2.6.0
      Specified by:
      bitopXor in interface ReactiveBitMapCommands<K>
      Parameters:
      destination - the destination key
      keys - the keys
      Returns:
      The size of the string stored in the destination key, that is equal to the size of the longest input string.
    • setbit

      public io.smallrye.mutiny.Uni<Integer> setbit(K key, long offset, int value)
      Description copied from interface: ReactiveBitMapCommands
      Sets or clears the bit at offset in the string value stored at key.
      Specified by:
      setbit in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key.
      offset - the offset
      value - the value (O or 1)
      Returns:
      the original bit value stored at offset, 0 or 1.
    • getbit

      public io.smallrye.mutiny.Uni<Integer> getbit(K key, long offset)
      Description copied from interface: ReactiveBitMapCommands
      Returns the bit value at offset in the string value stored at key.
      Specified by:
      getbit in interface ReactiveBitMapCommands<K>
      Parameters:
      key - the key.
      offset - the offset
      Returns:
      the bit value stored at offset (0 or 1).