Class FieldLevelTrackingApproach
- java.lang.Object
-
- graphql.execution.instrumentation.dataloader.FieldLevelTrackingApproach
-
public class FieldLevelTrackingApproach extends java.lang.ObjectThis approach uses field level tracking to achieve its aims of making the data loader more efficient
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classFieldLevelTrackingApproach.CallStack
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.Supplier<org.dataloader.DataLoaderRegistry>dataLoaderRegistrySupplierprivate org.slf4j.Loggerlog
-
Constructor Summary
Constructors Constructor Description FieldLevelTrackingApproach(org.slf4j.Logger log, java.util.function.Supplier<org.dataloader.DataLoaderRegistry> dataLoaderRegistrySupplier)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) ExecutionStrategyInstrumentationContextbeginExecutionStrategy(InstrumentationExecutionStrategyParameters parameters, InstrumentationState rawState)InstrumentationContext<java.lang.Object>beginFieldFetch(InstrumentationFieldFetchParameters parameters, InstrumentationState rawState)InstrumentationStatecreateState()(package private) voiddispatch()private booleandispatchIfNeeded(FieldLevelTrackingApproach.CallStack callStack, int level)private intgetCountForList(java.util.List<FieldValueInfo> fieldValueInfos)private org.dataloader.DataLoaderRegistrygetDataLoaderRegistry()private booleanhandleOnFieldValuesInfo(java.util.List<FieldValueInfo> fieldValueInfos, FieldLevelTrackingApproach.CallStack callStack, int curLevel)private booleanlevelReady(FieldLevelTrackingApproach.CallStack callStack, int level)
-
-
-
Method Detail
-
createState
public InstrumentationState createState()
-
beginExecutionStrategy
ExecutionStrategyInstrumentationContext beginExecutionStrategy(InstrumentationExecutionStrategyParameters parameters, InstrumentationState rawState)
-
handleOnFieldValuesInfo
private boolean handleOnFieldValuesInfo(java.util.List<FieldValueInfo> fieldValueInfos, FieldLevelTrackingApproach.CallStack callStack, int curLevel)
-
getCountForList
private int getCountForList(java.util.List<FieldValueInfo> fieldValueInfos)
-
beginFieldFetch
public InstrumentationContext<java.lang.Object> beginFieldFetch(InstrumentationFieldFetchParameters parameters, InstrumentationState rawState)
-
dispatchIfNeeded
private boolean dispatchIfNeeded(FieldLevelTrackingApproach.CallStack callStack, int level)
-
levelReady
private boolean levelReady(FieldLevelTrackingApproach.CallStack callStack, int level)
-
dispatch
void dispatch()
-
getDataLoaderRegistry
private org.dataloader.DataLoaderRegistry getDataLoaderRegistry()
-
-