From a868331c4f7d7c531503c5800121f54432509131 Mon Sep 17 00:00:00 2001 From: rstoyanchev Date: Fri, 21 Apr 2023 08:55:00 +0100 Subject: [PATCH] Polishing --- .../AnnotatedControllerConfigurer.java | 10 +-- .../data/query/QueryByExampleDataFetcher.java | 74 ++++++++++--------- .../data/query/QuerydslDataFetcher.java | 64 ++++++++-------- 3 files changed, 80 insertions(+), 68 deletions(-) diff --git a/spring-graphql/src/main/java/org/springframework/graphql/data/method/annotation/support/AnnotatedControllerConfigurer.java b/spring-graphql/src/main/java/org/springframework/graphql/data/method/annotation/support/AnnotatedControllerConfigurer.java index 4193f778..a87cd83b 100644 --- a/spring-graphql/src/main/java/org/springframework/graphql/data/method/annotation/support/AnnotatedControllerConfigurer.java +++ b/spring-graphql/src/main/java/org/springframework/graphql/data/method/annotation/support/AnnotatedControllerConfigurer.java @@ -640,6 +640,11 @@ public class AnnotatedControllerConfigurer implements ApplicationContextAware, I this.subscription = this.info.getCoordinates().getTypeName().equalsIgnoreCase("Subscription"); } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forMethodReturnType(this.info.getHandlerMethod().getMethod()); + } + /** * Return the {@link HandlerMethod} used to fetch data. */ @@ -697,11 +702,6 @@ public class AnnotatedControllerConfigurer implements ApplicationContextAware, I .switchIfEmpty(Mono.error(ex)); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forMethodReturnType(this.info.getHandlerMethod().getMethod()); - } - } 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 0b992e2d..fb62e905 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 @@ -640,7 +640,8 @@ public abstract class QueryByExampleDataFetcher { } - private static class SingleEntityFetcher extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher { + private static class SingleEntityFetcher + extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher { private final QueryByExampleExecutor executor; @@ -657,6 +658,11 @@ public abstract class QueryByExampleDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClass(this.resultType); + } + @Override @SuppressWarnings({"ConstantConditions", "unchecked"}) public R get(DataFetchingEnvironment env) throws BindException { @@ -679,14 +685,11 @@ public abstract class QueryByExampleDataFetcher { }).orElse(null); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClass(this.resultType); - } } - private static class ManyEntityFetcher extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { + private static class ManyEntityFetcher + extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { private final QueryByExampleExecutor executor; @@ -704,6 +707,11 @@ public abstract class QueryByExampleDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Iterable.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Iterable get(DataFetchingEnvironment env) throws BindException { @@ -729,11 +737,6 @@ public abstract class QueryByExampleDataFetcher { return queryToUse.all(); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Iterable.class, this.resultType); - } - } @@ -760,6 +763,11 @@ public abstract class QueryByExampleDataFetcher { this.scrollableResultType = ResolvableType.forClassWithGenerics(Window.class, resultType); } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Iterable.class, this.scrollableResultType); + } + @SuppressWarnings("OptionalGetWithoutIsPresent") @Override protected Iterable getResult(FluentQuery.FetchableFluentQuery queryToUse, DataFetchingEnvironment env) { @@ -769,15 +777,11 @@ public abstract class QueryByExampleDataFetcher { return queryToUse.limit(limit).scroll(position); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Iterable.class, this.scrollableResultType); - } - } - private static class ReactiveSingleEntityFetcher extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { + private static class ReactiveSingleEntityFetcher + extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { private final ReactiveQueryByExampleExecutor executor; @@ -795,6 +799,11 @@ public abstract class QueryByExampleDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Mono.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Mono get(DataFetchingEnvironment env) throws BindException { @@ -816,15 +825,11 @@ public abstract class QueryByExampleDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Mono.class, this.resultType); - } - } - private static class ReactiveManyEntityFetcher extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { + private static class ReactiveManyEntityFetcher + extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher> { private final ReactiveQueryByExampleExecutor executor; @@ -842,6 +847,11 @@ public abstract class QueryByExampleDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Flux.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Flux get(DataFetchingEnvironment env) throws BindException { @@ -863,15 +873,11 @@ public abstract class QueryByExampleDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Flux.class, this.resultType); - } - } - private static class ReactiveScrollableEntityFetcher extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher>> { + private static class ReactiveScrollableEntityFetcher + extends QueryByExampleDataFetcher implements SelfDescribingDataFetcher>> { private final ReactiveQueryByExampleExecutor executor; @@ -901,6 +907,11 @@ public abstract class QueryByExampleDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Mono.class, this.scrollableResultType); + } + @Override @SuppressWarnings({"unchecked", "OptionalGetWithoutIsPresent"}) public Mono> get(DataFetchingEnvironment env) throws BindException { @@ -926,11 +937,6 @@ public abstract class QueryByExampleDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Mono.class, this.scrollableResultType); - } - } } 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 282b3695..7ef76c95 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 @@ -734,7 +734,8 @@ public abstract class QuerydslDataFetcher { } - private static class SingleEntityFetcher extends QuerydslDataFetcher implements SelfDescribingDataFetcher { + private static class SingleEntityFetcher + extends QuerydslDataFetcher implements SelfDescribingDataFetcher { private final QuerydslPredicateExecutor executor; @@ -755,6 +756,11 @@ public abstract class QuerydslDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClass(this.resultType); + } + @Override @SuppressWarnings({"ConstantConditions", "unchecked"}) public R get(DataFetchingEnvironment env) { @@ -777,14 +783,11 @@ public abstract class QuerydslDataFetcher { }).orElse(null); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClass(this.resultType); - } } - private static class ManyEntityFetcher extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { + private static class ManyEntityFetcher + extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { private final QuerydslPredicateExecutor executor; @@ -805,6 +808,11 @@ public abstract class QuerydslDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Iterable.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Iterable get(DataFetchingEnvironment env) { @@ -830,11 +838,6 @@ public abstract class QuerydslDataFetcher { return queryToUse.all(); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Iterable.class, this.resultType); - } - } @@ -872,7 +875,8 @@ public abstract class QuerydslDataFetcher { } - private static class ReactiveSingleEntityFetcher extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { + private static class ReactiveSingleEntityFetcher + extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { private final ReactiveQuerydslPredicateExecutor executor; @@ -893,6 +897,11 @@ public abstract class QuerydslDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Mono.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Mono get(DataFetchingEnvironment env) { @@ -914,15 +923,11 @@ public abstract class QuerydslDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Mono.class, this.resultType); - } - } - private static class ReactiveManyEntityFetcher extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { + private static class ReactiveManyEntityFetcher + extends QuerydslDataFetcher implements SelfDescribingDataFetcher> { private final ReactiveQuerydslPredicateExecutor executor; @@ -943,6 +948,11 @@ public abstract class QuerydslDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Flux.class, this.resultType); + } + @Override @SuppressWarnings("unchecked") public Flux get(DataFetchingEnvironment env) { @@ -964,15 +974,11 @@ public abstract class QuerydslDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Flux.class, this.resultType); - } - } - private static class ReactiveScrollableEntityFetcher extends QuerydslDataFetcher implements SelfDescribingDataFetcher>> { + private static class ReactiveScrollableEntityFetcher + extends QuerydslDataFetcher implements SelfDescribingDataFetcher>> { private final ReactiveQuerydslPredicateExecutor executor; @@ -1006,6 +1012,11 @@ public abstract class QuerydslDataFetcher { this.sort = sort; } + @Override + public ResolvableType getReturnType() { + return ResolvableType.forClassWithGenerics(Mono.class, this.scrollableResultType); + } + @Override @SuppressWarnings({"unchecked", "OptionalGetWithoutIsPresent"}) public Mono> get(DataFetchingEnvironment env) { @@ -1031,11 +1042,6 @@ public abstract class QuerydslDataFetcher { }); } - @Override - public ResolvableType getReturnType() { - return ResolvableType.forClassWithGenerics(Mono.class, this.scrollableResultType); - } - } }