Package graphql.execution.incremental
Interface DeferredExecutionSupport
-
- All Known Implementing Classes:
DeferredExecutionSupport.DeferredExecutionSupportImpl
,DeferredExecutionSupport.NoOp
public interface DeferredExecutionSupport
The purpose of this class hierarchy is to encapsulate most of the logic for deferring field execution, thus keeping the main execution strategy code clean and focused on the main execution logic.The
DeferredExecutionSupport.NoOp
instance should be used when incremental support is not enabled for the current execution. The methods in this class will return empty or no-op results, that should not impact the main execution.DeferredExecutionSupport.DeferredExecutionSupportImpl
is the actual implementation that will be used when incremental support is enabled.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
DeferredExecutionSupport.DeferredExecutionSupportImpl
An implementation that actually executes the deferred fields.static class
DeferredExecutionSupport.NoOp
A no-op implementation that should be used when incremental support is not enabled for the current execution.
-
Field Summary
Fields Modifier and Type Field Description static DeferredExecutionSupport
NOOP
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Set<IncrementalCall<? extends IncrementalPayload>>
createCalls(ExecutionStrategyParameters executionStrategyParameters)
int
deferredFieldsCount()
java.util.List<java.lang.String>
getNonDeferredFieldNames(java.util.List<java.lang.String> allFieldNames)
boolean
isDeferredField(MergedField mergedField)
-
-
-
Field Detail
-
NOOP
static final DeferredExecutionSupport NOOP
-
-
Method Detail
-
isDeferredField
boolean isDeferredField(MergedField mergedField)
-
deferredFieldsCount
int deferredFieldsCount()
-
getNonDeferredFieldNames
java.util.List<java.lang.String> getNonDeferredFieldNames(java.util.List<java.lang.String> allFieldNames)
-
createCalls
java.util.Set<IncrementalCall<? extends IncrementalPayload>> createCalls(ExecutionStrategyParameters executionStrategyParameters)
-
-