インターフェース RSocketRequester

すべてのスーパーインターフェース:
Disposable

public interface RSocketRequester extends Disposable
流線型 API を備えた送信 RSocket の薄いラッパー。ルーティングやその他のメタデータを準備するためのメソッドとともに、入力および出力用のより高レベルのオブジェクトを受け入れて返します。
導入:
5.2
作成者:
Rossen Stoyanchev, Brian Clozel
  • メソッドの詳細

    • rsocketClient

      io.rsocket.core.RSocketClient rsocketClient()
      でリクエストを行うために使用される基になる RSocketClient を返します。
      導入:
      5.3
    • rsocket

      @Nullable io.rsocket.RSocket rsocket()
      リクエスターが wrap(RSocket, MimeType, MimeType, RSocketStrategies) または RSocketRequester ビルダーの(非推奨の)接続メソッドの 1 つを介して「ライブ」RSocket で作成された場合は、基になる RSocket を返すか、それ以外の場合は null を返します。
    • dataMimeType

      MimeType dataMimeType()
      接続時に基になる RSocket に対して選択されたデータ MimeType を返します。これはクライアント側では RSocketRequester.Builder.dataMimeType(MimeType) を介して構成され、サーバー側では ConnectionSetupPayload から取得されます。
    • metadataMimeType

      MimeType metadataMimeType()
      接続時に基になる RSocket に対して選択されたメタデータ MimeType を返します。これはクライアント側では RSocketRequester.Builder.metadataMimeType(MimeType) を介して構成され、サーバー側では ConnectionSetupPayload から取得されます。
    • strategies

      RSocketStrategies strategies()
      設定された RSocketStrategies を返します。
    • route

      RSocketRequester.RequestSpec route(StringSE route, ObjectSE... routeVars)
      リモートハンドラーへの指定されたルートで新しいリクエストを指定し始めます。

      ルートはプレースホルダー付きのテンプレートにすることができます。たとえば、"flight.{code}" の場合、指定されたルート変数は toString() によってフォーマットされ、テンプレートに展開されます。フォーマットされた変数に "." が含まれている場合は、レスポンダーによって区切り文字として扱われないように、エスケープシーケンス "%2E" に置き換えられます。

      複合メタデータを使用するように接続が設定されている場合、ルートは "message/x.rsocket.routing.v0" としてエンコードされます。それ以外の場合、ルートは接続の MIME 型に従ってエンコードされます。

      パラメーター:
      route - リモートハンドラーマッピングを表すルート
      routeVars - ルートテンプレートに展開される変数
      戻り値:
      リクエストをさらに定義して実行するための仕様
    • metadata

      指定されたメタデータ値を使用して新しいリクエストの指定を開始します。これは、具体的な値、または ReactiveAdapterRegistry を介して Publisher に適合できる単一の値の任意のプロデューサーにすることができます。
      パラメーター:
      metadata - エンコードするメタデータ値
      mimeType - メタデータを記述する MIME 型。これは、複合メタデータを使用した接続に必要です。それ以外の場合、値は接続の MIME 型に従ってエンコードされ、この引数は null のままにすることができます。
    • dispose

      default void dispose()
      基盤となるトランスポートからの接続を閉じてサブスクライバーに通知するために、基盤となる rsocketClient() で同じものに委譲するショートカットメソッド。
      次で指定:
      インターフェース Disposabledispose 
      導入:
      5.3.7
    • isDisposed

      default boolean isDisposed()
      基礎となる rsocketClient() で同じものに委譲するショートカットメソッド。
      次で指定:
      インターフェース DisposableisDisposed 
      導入:
      5.3.7
    • builder

      static RSocketRequester.Builder builder()
      RSocket サーバーに接続して、クライアント RSocketRequester を作成するビルダーを取得します。
    • wrap

      static RSocketRequester wrap(io.rsocket.RSocket rsocket, MimeType dataMimeType, MimeType metadataMimeType, RSocketStrategies strategies)
      既存の RSocket をラップします。通常、内部フレームワークで使用する場合は、リモート RSocket をクライアントまたはサーバーレスポンダーでラップしますが、任意の RSocket をラップするために使用することもできます。