Skip to content

Commit b8b2e26

Browse files
committed
Use a singleton PropertyFetcher by default - now with SchemaGeneratorHelper that does NOT put in an entry for defaulted values- DFF tweaked
1 parent 70bac09 commit b8b2e26

File tree

2 files changed

+21
-1
lines changed

2 files changed

+21
-1
lines changed

src/main/java/graphql/schema/DataFetcherFactories.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,17 @@ public class DataFetcherFactories {
2020
* @return a data fetcher factory that always returns the provided data fetcher
2121
*/
2222
public static <T> DataFetcherFactory<T> useDataFetcher(DataFetcher<T> dataFetcher) {
23-
return fieldDefinition -> dataFetcher;
23+
return new DataFetcherFactory<T>() {
24+
@Override
25+
public DataFetcher<T> get(DataFetcherFactoryEnvironment environment) {
26+
return dataFetcher;
27+
}
28+
29+
@Override
30+
public DataFetcher<T> getViaField(GraphQLFieldDefinition fieldDefinition) {
31+
return dataFetcher;
32+
}
33+
};
2434
}
2535

2636
/**

src/test/groovy/graphql/schema/DataFetcherFactoriesTest.groovy

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,14 @@ class DataFetcherFactoriesTest extends Specification {
3737
then:
3838
value == "goodbye"
3939
}
40+
41+
def "will use given df via field"() {
42+
def fetcherFactory = DataFetcherFactories.useDataFetcher(pojoDF)
43+
44+
when:
45+
def value = fetcherFactory.getViaField(null).get(null)
46+
47+
then:
48+
value == "goodbye"
49+
}
4050
}

0 commit comments

Comments
 (0)