Skip to content

Commit e7a031a

Browse files
committed
feat: use Optional.empty() in GraphQLJpaExecutorContext default implementation
1 parent 48d5cb7 commit e7a031a

File tree

2 files changed

+15
-12
lines changed

2 files changed

+15
-12
lines changed

graphql-jpa-query-schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaExecutor.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,16 @@ public ExecutionResult execute(String query, Map<String, Object> arguments) {
8282

8383
GraphQLJpaExecutorContext executorContext = contextFactory.create();
8484

85-
GraphQLSchema schema = graphQLSchema.transform(builder ->
86-
builder.fieldVisibility(executorContext.graphQLFieldVisibility()));
85+
GraphQLSchema schema = executorContext.graphQLFieldVisibility()
86+
.map(graphQLFieldVisibility ->
87+
graphQLSchema.transform(builder ->
88+
builder.fieldVisibility(graphQLFieldVisibility)))
89+
.orElse(graphQLSchema);
8790

88-
GraphQL graphQL = GraphQL.newGraphQL(schema)
89-
.instrumentation(executorContext.getInstrumentation())
90-
.build();
91+
GraphQL.Builder graphQL = GraphQL.newGraphQL(schema);
92+
93+
executorContext.getInstrumentation()
94+
.ifPresent(graphQL::instrumentation);
9195

9296
ExecutionInput.Builder executionInput = ExecutionInput.newExecutionInput()
9397
.query(query)
@@ -98,7 +102,8 @@ public ExecutionResult execute(String query, Map<String, Object> arguments) {
98102
executorContext.getExecutionRoot()
99103
.ifPresent(executionInput::root);
100104

101-
return graphQL.execute(executionInput);
105+
return graphQL.build()
106+
.execute(executionInput);
102107
}
103108

104109
}

graphql-jpa-query-schema/src/main/java/com/introproventures/graphql/jpa/query/schema/impl/GraphQLJpaExecutorContext.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,12 @@
33
import java.util.Optional;
44

55
import graphql.execution.instrumentation.Instrumentation;
6-
import graphql.execution.instrumentation.SimpleInstrumentation;
7-
import graphql.schema.visibility.DefaultGraphqlFieldVisibility;
86
import graphql.schema.visibility.GraphqlFieldVisibility;
97

108
public interface GraphQLJpaExecutorContext {
119

12-
default GraphqlFieldVisibility graphQLFieldVisibility() {
13-
return new DefaultGraphqlFieldVisibility();
10+
default Optional<GraphqlFieldVisibility> graphQLFieldVisibility() {
11+
return Optional.empty();
1412
};
1513

1614
default Optional<Object> getExecutionContext() {
@@ -21,8 +19,8 @@ default Optional<Object> getExecutionRoot() {
2119
return Optional.empty();
2220
}
2321

24-
default Instrumentation getInstrumentation() {
25-
return new SimpleInstrumentation();
22+
default Optional<Instrumentation> getInstrumentation() {
23+
return Optional.empty();
2624
}
2725

2826
}

0 commit comments

Comments
 (0)