44import graphql .DirectivesUtil ;
55import graphql .PublicApi ;
66import graphql .PublicSpi ;
7+ import graphql .collect .ImmutableKit ;
78import graphql .execution .ValuesResolver ;
89import graphql .language .AstPrinter ;
910import graphql .language .Node ;
4142import static graphql .schema .GraphQLNonNull .nonNull ;
4243import static graphql .schema .GraphQLObjectType .newObject ;
4344import static graphql .util .TraversalControl .CONTINUE ;
44- import static java .util .stream .Collectors .toList ;
4545
4646/**
4747 * The graphql specification does not allow you to retrieve the directives and their argument values that
@@ -171,9 +171,9 @@ private GraphQLObjectType mkAppliedDirectiveType(String name, GraphQLType direct
171171 }
172172
173173 private GraphQLSchema addDirectiveDefinitionFilter (GraphQLSchema schema ) {
174- DataFetcher <?> df = env -> {
174+ DataFetcher <?> df = env -> {
175175 List <GraphQLDirective > definedDirectives = env .getGraphQLSchema ().getDirectives ();
176- return filterDirectives (schema ,true , null , definedDirectives );
176+ return filterDirectives (schema , true , null , definedDirectives );
177177 };
178178 GraphQLCodeRegistry codeRegistry = schema .getCodeRegistry ().transform (bld ->
179179 bld .dataFetcher (coordinates (__Schema , "directives" ), df ));
@@ -199,8 +199,8 @@ private GraphQLObjectType addAppliedDirectives(GraphQLObjectType originalType, G
199199 DataFetcher <?> argsDF = env -> {
200200 final GraphQLAppliedDirective directive = env .getSource ();
201201 // we only show directive arguments that have values set on them
202- return directive .getArguments (). stream ()
203- . filter ( arg -> arg .getArgumentValue ().isSet ());
202+ return ImmutableKit . filter ( directive .getArguments (),
203+ arg -> arg .getArgumentValue ().isSet ());
204204 };
205205 DataFetcher <?> argValueDF = env -> {
206206 final GraphQLAppliedDirectiveArgument argument = env .getSource ();
@@ -225,17 +225,19 @@ private GraphQLObjectType addAppliedDirectives(GraphQLObjectType originalType, G
225225 }
226226
227227 private List <GraphQLDirective > filterDirectives (GraphQLSchema schema , boolean isDefinedDirective , GraphQLDirectiveContainer container , List <GraphQLDirective > directives ) {
228- return directives .stream ().filter (directive -> {
229- DirectivePredicateEnvironment env = buildDirectivePredicateEnv (schema , isDefinedDirective , container , directive .getName ());
230- return directivePredicate .isDirectiveIncluded (env );
231- }).collect (toList ());
228+ return ImmutableKit .filter (directives ,
229+ directive -> {
230+ DirectivePredicateEnvironment env = buildDirectivePredicateEnv (schema , isDefinedDirective , container , directive .getName ());
231+ return directivePredicate .isDirectiveIncluded (env );
232+ });
232233 }
233234
234235 private List <GraphQLAppliedDirective > filterAppliedDirectives (GraphQLSchema schema , boolean isDefinedDirective , GraphQLDirectiveContainer container , List <GraphQLAppliedDirective > directives ) {
235- return directives .stream ().filter (directive -> {
236- DirectivePredicateEnvironment env = buildDirectivePredicateEnv (schema , isDefinedDirective , container , directive .getName ());
237- return directivePredicate .isDirectiveIncluded (env );
238- }).collect (toList ());
236+ return ImmutableKit .filter (directives ,
237+ directive -> {
238+ DirectivePredicateEnvironment env = buildDirectivePredicateEnv (schema , isDefinedDirective , container , directive .getName ());
239+ return directivePredicate .isDirectiveIncluded (env );
240+ });
239241 }
240242
241243 @ NonNull
0 commit comments