Skip to content
This repository was archived by the owner on Dec 19, 2023. It is now read-only.

Commit 89ed1d7

Browse files
committed
Fix data loader customer example
1 parent d62b46d commit 89ed1d7

File tree

1 file changed

+8
-5
lines changed
  • example-request-scoped-dataloader/src/main/java/graphql/servlet/examples/dataloader/requestscope

1 file changed

+8
-5
lines changed

example-request-scoped-dataloader/src/main/java/graphql/servlet/examples/dataloader/requestscope/CustomerResolver.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,19 +3,22 @@
33
import graphql.kickstart.tools.GraphQLResolver;
44
import graphql.kickstart.execution.context.GraphQLContext;
55
import graphql.schema.DataFetchingEnvironment;
6+
import java.util.Optional;
67
import java.util.concurrent.CompletableFuture;
78
import org.dataloader.DataLoader;
9+
import org.dataloader.DataLoaderRegistry;
810
import org.springframework.stereotype.Component;
911

1012
@Component
1113
public class CustomerResolver implements GraphQLResolver<Customer> {
1214

1315
public CompletableFuture<String> getName(Customer customer, DataFetchingEnvironment dfe) {
14-
final DataLoader<Integer, String> dataloader = ((GraphQLContext) dfe.getContext())
15-
.getDataLoaderRegistry()
16-
.map(it -> it.getDataLoader("customerDataLoader"))
17-
.map(it -> it.load(customer.getCustomerId()))
18-
.orElse(null);
16+
Optional<DataLoaderRegistry> registry = ((GraphQLContext) dfe.getContext()).getDataLoaderRegistry();
17+
if (registry.isPresent()) {
18+
DataLoader<Integer, String> customerLoader = registry.get().getDataLoader("customerDataLoader");
19+
return customerLoader.load(customer.getCustomerId());
20+
}
21+
throw new IllegalStateException("No customer data loader found");
1922
}
2023

2124
}

0 commit comments

Comments
 (0)