インターフェース ReactiveRedisOperations<K,V>

すべての既知の実装クラス:
ReactiveRedisTemplateReactiveStringRedisTemplate

public interface ReactiveRedisOperations<K,V>
ReactiveRedisTemplate によって実装された Redis 操作の基本セットを指定したインターフェース。あまり使用されませんが、拡張性とテスト容易性のための便利なオプションです(簡単にモックまたはスタブできるため)。

Reactive Streams が null 値の使用を禁止しているため、RedisElementReader.read(ByteBuffer) が特定の要素に対して null を返す場合、Mono<K> または Flux<M> を返すメソッドのストリームは InvalidDataAccessApiUsageException で終了します。

導入:
2.0
作成者:
Mark Paluch, Christoph Strobl
  • メソッドの詳細

    • execute

      <T> reactor.core.publisher.Flux<T> execute(ReactiveRedisCallback<T> action)
      Redis 接続内で指定されたアクションを実行します。アクションオブジェクトによってスローされたアプリケーション例外は、可能な限り呼び出し元に伝播されます(チェックを外すことができます)。Redis 例外は、適切な DAO 例外に変換されます。結果オブジェクト、つまりドメインオブジェクトまたはドメインオブジェクトのコレクションを返すことができます。Redis ストレージに適したバイナリデータとの間で、指定されたオブジェクトの自動直列化 / 逆直列化を実行します。注: コールバックコードは、トランザクション自体を処理することは想定されていません。適切なトランザクションマネージャーを使用します。通常、コールバックコードは、テンプレートが機能するように、close などの接続ライフサイクルメソッドに触れてはなりません。
      型パラメーター:
      T - 戻りの型
      パラメーター:
      action - Redis アクションを指定するコールバックオブジェクト
      戻り値:
      アクションまたは Flux.empty() によって返される結果オブジェクト。
    • executeInSession

      <T> reactor.core.publisher.Flux<T> executeInSession(ReactiveRedisSessionCallback<K,V,T> action)
      同じ ReactiveRedisConnection を使用して、Redis セッション内で指定されたアクションを実行します。アクションオブジェクトによってスローされたアプリケーション例外は、可能な限り呼び出し元に伝播されます(チェックを外すことができます)。Redis 例外は、適切な DAO 例外に変換されます。結果オブジェクト、つまりドメインオブジェクトまたはドメインオブジェクトのコレクションを返すことができます。Redis ストレージに適したバイナリデータとの間で、指定されたオブジェクトの自動直列化 / 逆直列化を実行します。注: コールバックコードは、トランザクション自体を処理することは想定されていません。適切なトランザクションマネージャーを使用してください。一般に、コールバックコードは、テンプレートが機能するように、close などの接続ライフサイクルメソッドに触れてはなりません。
      型パラメーター:
      T - 戻りの型
      パラメーター:
      action - Redis アクションを指定するコールバックオブジェクト
      戻り値:
      アクションまたは Flux.empty() によって返される結果オブジェクト。
      導入:
      2.6
    • convertAndSend

      reactor.core.publisher.Mono<LongSE> convertAndSend(StringSE destination, V message)
      指定されたメッセージを指定されたチャネルに公開します。
      パラメーター:
      destination - 公開先のチャネルは、null でも空でもいけません。
      message - 公開するメッセージ。null であってはなりません。
      戻り値:
      メッセージを受信したクライアントの数
      導入:
      2.1
      関連事項:
    • listenToChannel

      default reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>> listenToChannel(StringSE... channels)
      指定された Redis channels をサブスクライブし、それらに対して受信した messages を発行します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      channels - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.1
      関連事項:
    • listenToPattern

      default reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>> listenToPattern(StringSE... patterns)
      指定された pattern に一致する Redis チャネルをサブスクライブし、それらに対して受信した messages を発行します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      patterns - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.1
      関連事項:
    • listenTo

      reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>> listenTo(Topic... topics)
      特定の topics の Redis チャネルをサブスクライブし、それらに対して受信した messages を発行します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      topics - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.1
      関連事項:
    • listenToChannelLater

      default reactor.core.publisher.Mono<reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>>> listenToChannelLater(StringSE... channels)
      指定された Redis channels をサブスクライブし、それらに対して受信した messages を発行します。topic サブスクリプションが登録されると、Mono が完了します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      channels - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.6
      関連事項:
    • listenToPatternLater

      default reactor.core.publisher.Mono<reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>>> listenToPatternLater(StringSE... patterns)
      指定された pattern に一致する Redis チャネルをサブスクライブし、それらに対して受信した messages を発行します。topic サブスクリプションが登録されると、Mono が完了します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      patterns - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.6
      関連事項:
    • listenToLater

      reactor.core.publisher.Mono<reactor.core.publisher.Flux<? extends ReactiveSubscription.Message<StringSE,V>>> listenToLater(Topic... topics)
      指定された topics の Redis チャネルをサブスクライブし、それらに対して受信した messages を発行します。topic サブスクリプションが登録されると、Mono が完了します。

      このメソッドは、このインターフェースの他のメソッドと同様に、新しい ReactiveRedisMessageListenerContainer を割り当て、専用の接続を使用することに注意してください。このメソッドを複数回呼び出すことは、ReactiveRedisMessageListenerContainer を直接使用する必要があることを示しています。

      パラメーター:
      topics - null であってはなりません。
      戻り値:
      messages のホットシーケンス。
      導入:
      2.6
      関連事項:
    • copy

      reactor.core.publisher.Mono<BooleanSE> copy(K sourceKey, K targetKey, boolean replace)
      指定された sourceKey を targetKey にコピーします。
      パラメーター:
      sourceKey - null であってはなりません。
      targetKey - null であってはなりません。
      戻り値:
      導入:
      2.6
      関連事項:
    • hasKey

      reactor.core.publisher.Mono<BooleanSE> hasKey(K key)
      指定された key が存在するかどうかを判別します。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      関連事項:
    • type

      reactor.core.publisher.Mono<DataType> type(K key)
      key に保存されている型を判別します。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      関連事項:
    • keys

      reactor.core.publisher.Flux<K> keys(K pattern)
      指定された pattern に一致するすべてのキーを検索します。
      重要 : keys(Object) は中断不可能でコストのかかる Redis 操作であるため、scan() を使用してキースペースを反復処理することをお勧めします。
      パラメーター:
      pattern - null であってはなりません。
      戻り値:
      Flux は一致するキーを 1 つずつ発行します。
      例外:
      IllegalArgumentExceptionSE - パターンが null の場合。
      関連事項:
    • scan

      default reactor.core.publisher.Flux<K> scan()
      Flux を使用して、キーを繰り返し処理します。結果の Flux はカーソルとして機能し、サブスクライバーが要求を通知する限り、SCAN コマンド自体を発行します。
      戻り値:
      キーを 1 つずつ発行する Flux、または存在しない場合は empty flux
      導入:
      2.1
      関連事項:
    • scan

      reactor.core.publisher.Flux<K> scan(ScanOptions options)
      Flux を使用して、キーを繰り返し処理します。結果の Flux はカーソルとして機能し、サブスクライバーが要求を通知する限り、SCAN コマンド自体を発行します。
      パラメーター:
      options - null であってはなりません。代わりに ScanOptions.NONE を使用してください。
      戻り値:
      キーを 1 つずつ発行する Flux、または存在しない場合は empty flux
      例外:
      IllegalArgumentExceptionSE - 指定された options が null の場合。
      導入:
      2.1
      関連事項:
    • randomKey

      reactor.core.publisher.Mono<K> randomKey()
      キースペースからランダムなキーを返します。
      戻り値:
      関連事項:
    • rename

      reactor.core.publisher.Mono<BooleanSE> rename(K oldKey, K newKey)
      キー oldKey の名前を newKey に変更します。
      パラメーター:
      oldKey - null であってはなりません。
      newKey - null であってはなりません。
      関連事項:
    • renameIfAbsent

      reactor.core.publisher.Mono<BooleanSE> renameIfAbsent(K oldKey, K newKey)
      newKey が存在しない場合にのみ、キー oldKey の名前を newKey に変更します。
      パラメーター:
      oldKey - null であってはなりません。
      newKey - null であってはなりません。
      戻り値:
      関連事項:
    • delete

      reactor.core.publisher.Mono<LongSE> delete(K... key)
      指定された key を削除します。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      削除されたキーの数。
      関連事項:
    • delete

      reactor.core.publisher.Mono<LongSE> delete(org.reactivestreams.Publisher<K> keys)
      指定された keys を削除します。このコマンドは、Publisher から受信したキーを 128 個のキーのチャンクにバッファーして削除し、発行される DEL コマンドの数を減らします。
      パラメーター:
      keys - null であってはなりません。
      戻り値:
      削除されたキーの数。
      関連事項:
    • unlink

      reactor.core.publisher.Mono<LongSE> unlink(K... key)
      キースペースから key のリンクを解除します。delete(Object[]) とは異なり、ここでの実際のメモリの再利用は非同期で行われます。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      削除されたキーの数。パイプライン / トランザクションで使用される場合は null。
      導入:
      2.1
      関連事項:
    • unlink

      reactor.core.publisher.Mono<LongSE> unlink(org.reactivestreams.Publisher<K> keys)
      キースペースから keys のリンクを解除します。delete(Publisher) とは異なり、ここでの実際のメモリの再利用は非同期で行われます。このコマンドは、Publisher から受信したキーを 128 個のキーのチャンクにバッファーして削除し、発行される UNLINK コマンドの数を減らします。
      パラメーター:
      keys - null であってはなりません。
      戻り値:
      削除されたキーの数。パイプライン / トランザクションで使用される場合は null。
      導入:
      2.1
      関連事項:
    • expire

      reactor.core.publisher.Mono<BooleanSE> expire(K key, DurationSE timeout)
      指定された key の存続時間を設定します。
      パラメーター:
      key - null であってはなりません。
      timeout - null であってはなりません。
      戻り値:
    • expireAt

      reactor.core.publisher.Mono<BooleanSE> expireAt(K key, InstantSE expireAt)
      指定された key の有効期限を expireAt タイムスタンプとして設定します。
      パラメーター:
      key - null であってはなりません。
      expireAt - null であってはなりません。
      戻り値:
    • persist

      reactor.core.publisher.Mono<BooleanSE> persist(K key)
      指定された key から有効期限を削除します。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      関連事項:
    • move

      reactor.core.publisher.Mono<BooleanSE> move(K key, int dbIndex)
      指定された key を index を使用してデータベースに移動します。
      パラメーター:
      key - null であってはなりません。
      dbIndex -
      戻り値:
      関連事項:
    • getExpire

      reactor.core.publisher.Mono<DurationSE> getExpire(K key)
      key のために生きる時間を取得します。
      パラメーター:
      key - null であってはなりません。
      戻り値:
      関連するキーの DurationSE。タイムアウトが関連付けられていない場合は Duration.ZEROSE、キーが存在しない場合は空の Mono
      関連事項:
    • execute

      default <T> reactor.core.publisher.Flux<T> execute(RedisScript<T> script)
      指定された RedisScript を実行します。
      パラメーター:
      script - null であってはなりません。
      戻り値:
      RedisScript.getResultType() が null の場合、スクリプト Flux.empty() の結果値。おそらく、スローアウェイステータス応答(つまり、"OK" )を示します。
    • execute

      default <T> reactor.core.publisher.Flux<T> execute(RedisScript<T> script, ListSE<K> keys)
      指定された RedisScript を実行します。
      パラメーター:
      script - null であってはなりません。
      keys - null であってはなりません。
      戻り値:
      RedisScript.getResultType() が null の場合、スクリプト Flux.empty() の結果値。おそらく、スローアウェイステータス応答(つまり、"OK" )を示します。
    • execute

      <T> reactor.core.publisher.Flux<T> execute(RedisScript<T> script, ListSE<K> keys, ListSE<?> args)
      指定された RedisScript を実行します
      パラメーター:
      script - 実行するスクリプト。null であってはなりません。
      keys - スクリプトに渡す必要のあるキー。null であってはなりません。
      args - スクリプトに渡す必要のある引数。null であってはなりません。
      戻り値:
      RedisScript.getResultType() が null の場合、スクリプト Flux.empty() の結果値。おそらく、スローアウェイステータス応答(つまり、"OK" )を示します。
    • execute

      <T> reactor.core.publisher.Flux<T> execute(RedisScript<T> script, ListSE<K> keys, ListSE<?> args, RedisElementWriter<?> argsWriter, RedisElementReader<T> resultReader)
      指定された RedisSerializer を使用して、指定された RedisScript を実行し、スクリプトの引数と結果を直列化します。
      パラメーター:
      script - 実行するスクリプト
      argsWriter - 引数の直列化に使用する RedisElementWriter
      resultReader - スクリプトの戻り値の直列化に使用する RedisElementReader
      keys - スクリプトに渡す必要のあるキー。
      args - スクリプトに渡す必要のある引数。
      戻り値:
      RedisScript.getResultType() が null の場合、スクリプト Flux.empty() の結果値。おそらく、スローアウェイステータス応答(つまり、"OK" )を示します。
    • opsForGeo

      ReactiveGeoOperations<K,V> opsForGeo()
      地理空間固有の操作インターフェースを返します。
      戻り値:
      地理空間固有の操作。
    • opsForGeo

      <K, V> ReactiveGeoOperations<K,V> opsForGeo(RedisSerializationContext<K,V> serializationContext)
      地理空間固有の操作インターフェースを返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      地理空間固有の操作。
    • opsForHash

      <HK, HV> ReactiveHashOperations<K,HK,HV> opsForHash()
      ハッシュ値に対して実行された操作を返します。
      型パラメーター:
      HK - ハッシュキー(またはフィールド)型。
      HV - ハッシュ値型。
      戻り値:
      ハッシュ演算。
    • opsForHash

      <K, HK, HV> ReactiveHashOperations<K,HK,HV> opsForHash(RedisSerializationContext<K,?> serializationContext)
      RedisSerializationContext を指定してハッシュ値に対して実行された操作を返します。
      型パラメーター:
      HK - ハッシュキー(またはフィールド)型。
      HV - ハッシュ値型。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      ハッシュ演算。
    • opsForHyperLogLog

      ReactiveHyperLogLogOperations<K,V> opsForHyperLogLog()
      HyperLogLog を使用してマルチセットで実行された操作を返します。
      戻り値:
      決して null にはなりません。
    • opsForHyperLogLog

      <K, V> ReactiveHyperLogLogOperations<K,V> opsForHyperLogLog(RedisSerializationContext<K,V> serializationContext)
      RedisSerializationContext を指定して HyperLogLog を使用してマルチセットで実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      決して null にはなりません。
    • opsForList

      ReactiveListOperations<K,V> opsForList()
      リスト値に対して実行された操作を返します。
      戻り値:
      リスト操作。
    • opsForList

      <K, V> ReactiveListOperations<K,V> opsForList(RedisSerializationContext<K,V> serializationContext)
      RedisSerializationContext を指定してリスト値に対して実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      リスト操作。
    • opsForSet

      ReactiveSetOperations<K,V> opsForSet()
      設定値に対して実行された操作を返します。
      戻り値:
      セット操作。
    • opsForSet

      <K, V> ReactiveSetOperations<K,V> opsForSet(RedisSerializationContext<K,V> serializationContext)
      RedisSerializationContext を指定して設定値に対して実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      セット操作。
    • opsForStream

      <HK, HV> ReactiveStreamOperations<K,HK,HV> opsForStream()
      ストリームで実行された操作を返します。
      戻り値:
      ストリーム操作。
      導入:
      2.2
    • opsForStream

      <HK, HV> ReactiveStreamOperations<K,HK,HV> opsForStream(HashMapper<? super K,? super HK,? super HV> hashMapper)
      ストリームで実行された操作を返します。
      パラメーター:
      hashMapper - 複雑なオブジェクトをマッピングするときに使用する HashMapper
      戻り値:
      ストリーム操作。
      導入:
      2.2
    • opsForStream

      <HK, HV> ReactiveStreamOperations<K,HK,HV> opsForStream(RedisSerializationContext<K,?> serializationContext)
      RedisSerializationContext が指定されたストリームで実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      ストリーム操作。
      導入:
      2.2
    • opsForValue

      ReactiveValueOperations<K,V> opsForValue()
      単純な値(または Redis 用語では文字列)に対して実行された操作を返します。
      戻り値:
      バリューオペレーション
    • opsForValue

      <K, V> ReactiveValueOperations<K,V> opsForValue(RedisSerializationContext<K,V> serializationContext)
      RedisSerializationContext を指定して、単純な値(または Redis 用語では文字列)に対して実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      バリューオペレーション。
    • opsForZSet

      ReactiveZSetOperations<K,V> opsForZSet()
      zset 値(ソートされたセットとも呼ばれます)に対して実行された操作を返します。
      戻り値:
      zset 操作。
    • opsForZSet

      <K, V> ReactiveZSetOperations<K,V> opsForZSet(RedisSerializationContext<K,V> serializationContext)
      RedisSerializationContext を指定して、zset 値(ソート済みセットとも呼ばれます)に対して実行された操作を返します。
      パラメーター:
      serializationContext - 返された操作で使用されるシリアライザーは、null であってはなりません。
      戻り値:
      zset 操作。
    • getSerializationContext

      RedisSerializationContext<K,V> getSerializationContext()
      戻り値:
      RedisSerializationContext