クラス QueryByExampleDataFetcher<T>

java.lang.ObjectSE
org.springframework.graphql.data.query.QueryByExampleDataFetcher<T>
型パラメーター:
T - 返される結果の型

public abstract class QueryByExampleDataFetcher<T> extends ObjectSE
Query By Example リポジトリから DataFetcher を作成するためのメインクラスです。インスタンスを作成するには、次のいずれかを使用します。

例:

 interface BookRepository extends
         Repository<Book, String>, QueryByExampleExecutor<Book>{}

 TypeRuntimeWiring wiring = … ;
 BookRepository repository = … ;

 DataFetcher<?> forMany =
         wiring.dataFetcher("books", QueryByExampleDataFetcher.builder(repository).many());

 DataFetcher<?> forSingle =
         wiring.dataFetcher("book", QueryByExampleDataFetcher.builder(repository).single());
 

結果の射影と並べ替えに関するその他のオプションについては、QueryByExampleDataFetcher.BuilderQueryByExampleDataFetcher.ReactiveBuilder のメソッドを参照してください。

QueryByExampleDataFetcher exposes @GraphQlRepository でアノテーションが付けられたリポジトリを自動登録できる RuntimeWiringConfigurer

導入:
1.0.0
作成者:
Greg Turnquist, Rossen Stoyanchev
関連事項:
  • メソッドの詳細

    • getDescription

      public StringSE getDescription()
      すべてのサブクラスに SelfDescribingDataFetcher.getDescription() の共有実装を提供します。
      導入:
      1.2.0
    • buildExample

      protected org.springframework.data.domain.Example<T> buildExample(graphql.schema.DataFetchingEnvironment environment) throws BindException
      GraphQL リクエスト引数から Example を準備します。
      パラメーター:
      environment - GraphQL リクエストのコンテキスト情報
      戻り値:
      結果の例
      例外:
      BindException
    • requiresProjection

      protected boolean requiresProjection(ClassSE<?> resultType)
    • buildPropertyPaths

      protected CollectionSE<StringSE> buildPropertyPaths(graphql.schema.DataFetchingFieldSelectionSet selection, ClassSE<?> resultType)
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ObjectSEtoString 
    • builder

      public static <T> QueryByExampleDataFetcher.Builder<T,T> builder(org.springframework.data.repository.query.QueryByExampleExecutor<T> executor)
      QueryByExampleExecutor を受け入れて DataFetcher を構築する新しい QueryByExampleDataFetcher.Builder を作成します。
      型パラメーター:
      T - リポジトリのドメイン型
      パラメーター:
      executor - 使用する QBE リポジトリオブジェクト
      戻り値:
      新しいビルダー
    • builder

      public static <T> QueryByExampleDataFetcher.ReactiveBuilder<T,T> builder(org.springframework.data.repository.query.ReactiveQueryByExampleExecutor<T> executor)
      ReactiveQueryByExampleExecutor を受け入れて DataFetcher を構築する新しい QueryByExampleDataFetcher.ReactiveBuilder を作成します。
      型パラメーター:
      T - リポジトリのドメイン型
      パラメーター:
      executor - 使用する QBE リポジトリオブジェクト
      戻り値:
      新しいビルダー
    • autoRegistrationConfigurer

      public static RuntimeWiringConfigurer autoRegistrationConfigurer(ListSE<org.springframework.data.repository.query.QueryByExampleExecutor<?>> executors, ListSE<org.springframework.data.repository.query.ReactiveQueryByExampleExecutor<?>> reactiveExecutors)
      CursorStrategy のない autoRegistrationConfigurer(List, List, CursorStrategy, ScrollSubrange) とデフォルトの ScrollSubrange のバリエーション。デフォルト値については、QueryByExampleDataFetcher.Builder および QueryByExampleDataFetcher.ReactiveBuilder のそれぞれのメソッドを参照してください。
      パラメーター:
      executors - 登録を検討するリポジトリ
      reactiveExecutors - 登録を検討するリアクティブリポジトリ
    • autoRegistrationConfigurer

      public static RuntimeWiringConfigurer autoRegistrationConfigurer(ListSE<org.springframework.data.repository.query.QueryByExampleExecutor<?>> executors, ListSE<org.springframework.data.repository.query.ReactiveQueryByExampleExecutor<?>> reactiveExecutors, @Nullable CursorStrategy<org.springframework.data.domain.ScrollPosition> cursorStrategy, @Nullable ScrollSubrange defaultScrollSubrange)
      指定されたリポジトリのドメイン型名と一致する名前の戻り値の型を持つクエリを見つけるために WiringFactory をインストールし、それらの DataFetcher を登録する RuntimeWiringConfigurer を返します。

      注意 : これは、@GraphQlRepository でアノテーションが付けられたトップレベルのクエリとリポジトリにのみ適用されます。

      パラメーター:
      executors - 登録を検討するリポジトリ
      reactiveExecutors - 登録を検討するリアクティブリポジトリ
      cursorStrategy - ページネーションリクエストのカーソルをデコードするため。null の場合は、QueryByExampleDataFetcher.Builder.cursorStrategy のデフォルトが適用されます。
      defaultScrollSubrange - スクロール用のデフォルトパラメーター。null の場合、QueryByExampleDataFetcher.Builder.defaultScrollSubrange(int, java.util.function.Function<java.lang.Boolean, org.springframework.data.domain.ScrollPosition>) のデフォルトが適用されます。
      戻り値:
      作成された設定者
      導入:
      1.2.0