クラス AbstractGraphQlClientBuilder<B extends AbstractGraphQlClientBuilder<B>>

java.lang.ObjectSE
org.springframework.graphql.client.AbstractGraphQlClientBuilder<B>
型パラメーター:
B - ビルダーの種類
実装済みのインターフェース一覧:
GraphQlClient.BaseBuilder<B>GraphQlClient.Builder<B>

public abstract class AbstractGraphQlClientBuilder<B extends AbstractGraphQlClientBuilder<B>> extends ObjectSE implements GraphQlClient.Builder<B>
トランスポート固有の GraphQlClient.Builder 実装の抽象基本クラス。

サブクラスは GraphQlClient.BaseBuilder.build() を実装し、buildGraphQlClient(GraphQlTransport) を呼び出すことで、トランスポートに依存しないデフォルトの GraphQlClient を取得する必要があります。トランスポート固有の拡張機能は、AbstractDelegatingGraphQlClient を継承することで、このデフォルトのテスターをラップできます。

導入:
1.0.0
作成者:
Rossen Stoyanchev
関連事項:
  • フィールドの詳細

    • jacksonPresent

      protected static final boolean jacksonPresent
    • jackson2Present

      protected static final boolean jackson2Present
  • コンストラクターの詳細

    • AbstractGraphQlClientBuilder

      protected AbstractGraphQlClientBuilder()
      サブクラスから使用するデフォルトのコンストラクター。

      サブクラスは、GraphQlClient.BaseBuilder.build() をオーバーライドして、GraphQlClient.BaseBuilder.build() の前または最中に使用するトランスポートを設定する必要があります。

  • メソッドの詳細

    • interceptor

      public B interceptor(GraphQlClientInterceptor... interceptors)
      インターフェースからコピーされた説明: GraphQlClient.Builder
      リクエストを実行するために GraphQlTransport に委譲する前に、インターセプターが呼び出されるように構成します。
      次で指定:
      インターフェース GraphQlClient.Builder<B extends AbstractGraphQlClientBuilder<B>>interceptor 
      パラメーター:
      interceptors - 追加するインターセプター
      戻り値:
      このビルダー
    • interceptors

      public B interceptors(ConsumerSE<ListSE<GraphQlClientInterceptor>> interceptorsConsumer)
      インターフェースからコピーされた説明: GraphQlClient.Builder
      インターセプターのリストをカスタマイズします。提供されたリストは「ライブ」であるため、コンシューマーはそれに応じてインターセプターをインスペクションおよび挿入できます。
      次で指定:
      インターフェース GraphQlClient.Builder<B extends AbstractGraphQlClientBuilder<B>>interceptors 
      パラメーター:
      interceptorsConsumer - インターセプターをカスタマイズするコンシューマー
      戻り値:
      このビルダー
    • documentSource

      public B documentSource(DocumentSource documentSource)
      インターフェースからコピーされた説明: GraphQlClient.BaseBuilder
      ドキュメントを名前で解決するための DocumentSource 戦略を構成します。GraphQlClient.documentName(String) 内で使用します。

      デフォルトでは、これはクラスパスの場所 "graphql-documents/" および ResourceDocumentSource.FILE_EXTENSIONS を拡張子として持つ ResourceDocumentSource に設定されています。

      次で指定:
      インターフェース GraphQlClient.BaseBuilder<B extends AbstractGraphQlClientBuilder<B>>documentSource 
      パラメーター:
      documentSource - ドキュメントを名前で解決する戦略
    • blockingTimeout

      public B blockingTimeout(@Nullable DurationSE blockingTimeout)
      インターフェースからコピーされた説明: GraphQlClient.BaseBuilder
      実行をブロックするために使用するタイムアウトを構成します。

      デフォルトではこれは設定されていません。その場合、動作は基礎となるトランスポートの接続およびリクエストのタイムアウト設定に依存します。可能であれば、HTTP クライアントライブラリなどの基礎となるトランスポートライブラリでタイムアウト値を直接構成することをお勧めします。これにより、このような設定をより細かく制御できます。

      次で指定:
      インターフェース GraphQlClient.BaseBuilder<B extends AbstractGraphQlClientBuilder<B>>blockingTimeout 
      パラメーター:
      blockingTimeout - 使用するタイムアウト
    • setJsonCodecs

      protected void setJsonCodecs(Encoder<?> encoder, Decoder<?> decoder)
      トランスポート固有のサブクラスは、クライアントレベルで使用する JSON Encoder および Decoder を提供して、レスポンスデータを何らかのターゲットエンティティ型にマッピングできます。
      パラメーター:
      encoder - JSON エンコーダ
      decoder - JSON デコーダー
    • setJsonEncoder

      protected void setJsonEncoder(Encoder<?> encoder)
      各コーデックを個別に設定するための setJsonCodecs(org.springframework.core.codec.Encoder<?>, org.springframework.core.codec.Decoder<?>) のバリアント。
      パラメーター:
      encoder - JSON エンコーダ
    • getJsonEncoder

      protected Encoder<?> getJsonEncoder()
      構成された JSON エンコーダーへのアクセス。
    • setJsonDecoder

      protected void setJsonDecoder(Decoder<?> decoder)
      各コーデックを個別に設定するための setJsonCodecs(org.springframework.core.codec.Encoder<?>, org.springframework.core.codec.Decoder<?>) のバリアント。
      パラメーター:
      decoder - JSON デコーダー
    • getJsonDecoder

      protected Decoder<?> getJsonDecoder()
      構成された JSON エンコーダーへのアクセス。
    • getInterceptors

      protected ListSE<GraphQlClientInterceptor> getInterceptors()
      構成されたインターセプターを返します。トランスポート固有のインターセプター拡張を探すサブクラス用。
    • buildGraphQlClient

      protected GraphQlClient buildGraphQlClient(GraphQlTransport transport)
      サブクラスが AbstractDelegatingGraphQlClient でラップできるデフォルトのトランスポートに依存しないクライアントを構築します。
      パラメーター:
      transport - クライアントが使用する GraphQL トランスポート
    • getBuilderInitializer

      protected ConsumerSE<AbstractGraphQlClientBuilder<?>> getBuilderInitializer()
      "this" ビルダーから新しいビルダーを初期化するために Consumer を返します。