graphql.execution.instrumentation.NoOpInstrumentation Maven / Gradle / Ivy
package graphql.execution.instrumentation;
import graphql.ExecutionResult;
import graphql.PublicApi;
import graphql.execution.ExecutionContext;
import graphql.execution.instrumentation.parameters.InstrumentationDataFetchParameters;
import graphql.execution.instrumentation.parameters.InstrumentationExecutionParameters;
import graphql.execution.instrumentation.parameters.InstrumentationExecutionStrategyParameters;
import graphql.execution.instrumentation.parameters.InstrumentationFieldCompleteParameters;
import graphql.execution.instrumentation.parameters.InstrumentationFieldFetchParameters;
import graphql.execution.instrumentation.parameters.InstrumentationFieldParameters;
import graphql.execution.instrumentation.parameters.InstrumentationValidationParameters;
import graphql.language.Document;
import graphql.language.Field;
import graphql.schema.DataFetcher;
import graphql.schema.GraphQLSchema;
import graphql.validation.ValidationError;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
/**
* An implementation of {@link graphql.execution.instrumentation.Instrumentation} that does nothing. It can be used
* as a base for derived classes where you only implement the methods you want to
*/
@PublicApi
public class NoOpInstrumentation implements Instrumentation {
/**
* A singleton instance of a {@link graphql.execution.instrumentation.Instrumentation} that does nothing
*/
public static final NoOpInstrumentation INSTANCE = new NoOpInstrumentation();
public NoOpInstrumentation() {
}
@Override
public InstrumentationContext beginExecution(InstrumentationExecutionParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext beginParse(InstrumentationExecutionParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext> beginValidation(InstrumentationValidationParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext> beginDataFetchDispatch(InstrumentationDataFetchParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext> beginExecutionStrategy(InstrumentationExecutionStrategyParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext beginDataFetch(InstrumentationDataFetchParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext beginField(InstrumentationFieldParameters parameters) {
return new NoOpInstrumentationContext<>();
}
@Override
public InstrumentationContext
© 2015 - 2025 Weber Informatics LLC | Privacy Policy