From dedebf4badfd990db4506346c0d154acd3f60f44 Mon Sep 17 00:00:00 2001 From: rstoyanchev Date: Thu, 13 Apr 2023 12:54:51 +0100 Subject: [PATCH] Make CursorStrategy and default ScrollSubrange nullable See gh-597 --- .../data/query/QueryByExampleDataFetcher.java | 21 +++++++++---------- .../data/query/QuerydslDataFetcher.java | 19 +++++++++-------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/spring-graphql/src/main/java/org/springframework/graphql/data/query/QueryByExampleDataFetcher.java b/spring-graphql/src/main/java/org/springframework/graphql/data/query/QueryByExampleDataFetcher.java index 609ba085..d831d9df 100644 --- a/spring-graphql/src/main/java/org/springframework/graphql/data/query/QueryByExampleDataFetcher.java +++ b/spring-graphql/src/main/java/org/springframework/graphql/data/query/QueryByExampleDataFetcher.java @@ -195,18 +195,15 @@ public abstract class QueryByExampleDataFetcher { /** * Variation of {@link #autoRegistrationConfigurer(List, List, CursorStrategy, ScrollSubrange)} - * that defaults to the following: - * + * without a {@code CursorStrategy} and default {@link ScrollSubrange}. + * For default values, see the respective methods on {@link Builder} and + * {@link ReactiveBuilder}. */ public static RuntimeWiringConfigurer autoRegistrationConfigurer( List> executors, List> reactiveExecutors) { - return autoRegistrationConfigurer(executors, reactiveExecutors, - RepositoryUtils.defaultCursorStrategy(), RepositoryUtils.defaultScrollSubrange()); + return autoRegistrationConfigurer(executors, reactiveExecutors, null, null); } /** @@ -220,16 +217,18 @@ public abstract class QueryByExampleDataFetcher { * * @param executors repositories to consider for registration * @param reactiveExecutors reactive repositories to consider for registration - * @param cursorStrategy for decoding cursors in pagination requests - * @param defaultScrollSubrange default parameters for scrolling + * @param cursorStrategy for decoding cursors in pagination requests; + * if {@code null}, then {@link Builder#cursorStrategy} defaults apply. + * @param defaultScrollSubrange default parameters for scrolling; + * if {@code null}, then {@link Builder#defaultScrollSubrange} defaults apply. * @return the created configurer * @since 1.2 */ public static RuntimeWiringConfigurer autoRegistrationConfigurer( List> executors, List> reactiveExecutors, - CursorStrategy cursorStrategy, - ScrollSubrange defaultScrollSubrange) { + @Nullable CursorStrategy cursorStrategy, + @Nullable ScrollSubrange defaultScrollSubrange) { Map factories = new HashMap<>(); diff --git a/spring-graphql/src/main/java/org/springframework/graphql/data/query/QuerydslDataFetcher.java b/spring-graphql/src/main/java/org/springframework/graphql/data/query/QuerydslDataFetcher.java index eeec58ce..1a7eb049 100644 --- a/spring-graphql/src/main/java/org/springframework/graphql/data/query/QuerydslDataFetcher.java +++ b/spring-graphql/src/main/java/org/springframework/graphql/data/query/QuerydslDataFetcher.java @@ -219,18 +219,15 @@ public abstract class QuerydslDataFetcher { /** * Variation of {@link #autoRegistrationConfigurer(List, List, CursorStrategy, ScrollSubrange)} - * that defaults to the following: - *
    - *
  • {@link ScrollPositionCursorStrategy} with Base64 encoding. - *
  • {@link OffsetScrollPosition Offset}-based scrolling with 20 items at a time - *
+ * without a {@code CursorStrategy} and default {@link ScrollSubrange}. + * For default values, see the respective methods on {@link Builder} and + * {@link ReactiveBuilder}. */ public static RuntimeWiringConfigurer autoRegistrationConfigurer( List> executors, List> reactiveExecutors) { - return autoRegistrationConfigurer(executors, reactiveExecutors, - RepositoryUtils.defaultCursorStrategy(), RepositoryUtils.defaultScrollSubrange()); + return autoRegistrationConfigurer(executors, reactiveExecutors, null, null); } /** @@ -247,6 +244,10 @@ public abstract class QuerydslDataFetcher { * * @param executors repositories to consider for registration * @param reactiveExecutors reactive repositories to consider for registration + * @param cursorStrategy for decoding cursors in pagination requests; + * if {@code null}, then {@link Builder#cursorStrategy} defaults apply. + * @param defaultScrollSubrange default parameters for scrolling; + * if {@code null}, then {@link Builder#defaultScrollSubrange} defaults apply. * @return the created configurer * @since 1.2 */ @@ -254,8 +255,8 @@ public abstract class QuerydslDataFetcher { public static RuntimeWiringConfigurer autoRegistrationConfigurer( List> executors, List> reactiveExecutors, - CursorStrategy cursorStrategy, - ScrollSubrange defaultScrollSubrange) { + @Nullable CursorStrategy cursorStrategy, + @Nullable ScrollSubrange defaultScrollSubrange) { Map factories = new HashMap<>();