パッケージ org.springframework.core

クラス ReactiveAdapterRegistry

java.lang.ObjectSE
org.springframework.core.ReactiveAdapterRegistry

public class ReactiveAdapterRegistry extends ObjectSE
Reactive Streams Publisher を CompletableFuture、RxJava Flowable などのさまざまな非同期 / リアクティブ型に / から適応させるアダプターのレジストリ。これは、Spring の Reactor Mono/Flux サポートを補完するように設計されていますが、Reactor なしでも使用できます。org.reactivestreams ブリッジ専用。

デフォルトでは、クラスパスの可用性に応じて、アダプターは Reactor (CompletableFuture および Flow.Publisher アダプターを含む)、RxJava 3、Kotlin コルーチンの Deferred (Reactor 経由でブリッジ)、および SmallRye Mutiny 1.x/2.x に登録されます。Reactor が存在しない場合は、単純な Flow.Publisher ブリッジが登録されます。

導入:
5.0
作成者:
Rossen Stoyanchev, Sebastien Deleuze, Juergen Hoeller
  • コンストラクターの詳細

    • ReactiveAdapterRegistry

      public ReactiveAdapterRegistry()
      レジストリを作成し、デフォルトのアダプターを自動登録します。
      関連事項:
  • メソッドの詳細

    • registerReactiveType

      public void registerReactiveType(ReactiveTypeDescriptor descriptor, FunctionSE<ObjectSE,Publisher<?>> toAdapter, FunctionSE<Publisher<?>,ObjectSE> fromAdapter)
      Reactive Streams Publisher に適合したり、Reactive Streams Publisher から適合したりする関数とともにリアクティブ型を登録します。関数の引数は、入力が null でも OptionalSE でもないことを前提としています。

      このバリアントは、既存のアダプターの後に新しいアダプターを登録します。以前のアダプターが特定の型に登録されていない場合は、正確なリアクティブ型と照合され、以前のアダプターに以前に割り当て可能な型がなかった場合は、2 番目のパスで割り当て可能性について照合されます。

      関連事項:
    • registerReactiveTypeOverride

      public void registerReactiveTypeOverride(ReactiveTypeDescriptor descriptor, FunctionSE<ObjectSE,Publisher<?>> toAdapter, FunctionSE<Publisher<?>,ObjectSE> fromAdapter)
      Reactive Streams Publisher に適合したり、Reactive Streams Publisher から適合したりする関数とともにリアクティブ型を登録します。関数の引数は、入力が null でも OptionalSE でもないことを前提としています。

      このバリアントは、最初に新しいアダプターを登録し、同じリアクティブ型に対して以前に登録されたアダプターを効果的にオーバーライドします。これにより、既存のアダプター、特にデフォルトのアダプターをオーバーライドできます。

      割り当て可能性が新しいアダプターと一致する前に、特定の型の既存のアダプターが一致することに注意してください。既存のすべての一致をオーバーライドするには、サブ型の割り当て可能性の一致に依存せず、特定の型ごとに新しいリアクティブ型 アダプターを登録する必要があります。

      導入:
      5.3.30
      関連事項:
    • hasAdapters

      public boolean hasAdapters()
      レジストリにアダプターがあるかどうかを返します。
    • getAdapter

      @Nullable public ReactiveAdapter getAdapter(ClassSE<?> reactiveType)
      指定されたリアクティブ型のアダプターを取得します。
      戻り値:
      対応するアダプター、または使用可能なものがなければ null 
    • getAdapter

      @Nullable public ReactiveAdapter getAdapter(@Nullable ClassSE<?> reactiveType, @Nullable ObjectSE source)
      指定されたリアクティブ型のアダプターを取得します。または、「ソース」オブジェクトが指定されている場合は、実際の型が代わりに使用されます。
      パラメーター:
      reactiveType - リアクティブ型 (具体的なソースオブジェクトが指定されている場合、null になる可能性があります)
      source - リアクティブ型のインスタンス (つまり、適応する ; リアクティブ型が指定されている場合、null になる場合があります)
      戻り値:
      対応するアダプター、または使用可能なものがなければ null 
    • getSharedInstance

      public static ReactiveAdapterRegistry getSharedInstance()
      共有のデフォルト ReactiveAdapterRegistry インスタンスを返し、必要に応じて遅延ビルドします。

      注意 : カスタマイズを目的として、長期間有効な事前構成済みの ReactiveAdapterRegistry インスタンスを渡すことを強くお勧めします。このアクセサーは、提供されていない場合にデフォルトのインスタンスにフォールバックしたいコードパスのフォールバックとしてのみ意図されています。

      戻り値:
      共有された ReactiveAdapterRegistry インスタンス
      導入:
      5.0.2