diff --git a/src/main/java/graphql/schema/DataLoaderWithContext.java b/src/main/java/graphql/schema/DataLoaderWithContext.java index 0c6ae9e1d7..972a53d27b 100644 --- a/src/main/java/graphql/schema/DataLoaderWithContext.java +++ b/src/main/java/graphql/schema/DataLoaderWithContext.java @@ -29,11 +29,11 @@ public CompletableFuture load(@NonNull K key, @Nullable Object keyContext) { // later than the dispatch, which results in a hanging DL CompletableFuture result = super.load(key, keyContext); DataFetchingEnvironmentImpl dfeImpl = (DataFetchingEnvironmentImpl) dfe; - int level = dfe.getExecutionStepInfo().getPath().getLevel(); - String path = dfe.getExecutionStepInfo().getPath().toString(); DataFetchingEnvironmentImpl.DFEInternalState dfeInternalState = (DataFetchingEnvironmentImpl.DFEInternalState) dfeImpl.toInternal(); if (dfeInternalState.getDataLoaderDispatchStrategy() instanceof PerLevelDataLoaderDispatchStrategy) { DeferredCallContext deferredCallContext = dfeInternalState.getDeferredCallContext(); + int level = dfe.getExecutionStepInfo().getPath().getLevel(); + String path = dfe.getExecutionStepInfo().getPath().toString(); ((PerLevelDataLoaderDispatchStrategy) dfeInternalState.dataLoaderDispatchStrategy).newDataLoaderLoadCall(path, level, delegate, dataLoaderName, key, deferredCallContext); } return result;