in graphql-dgs-spring-boot-micrometer/src/main/kotlin/com/netflix/graphql/dgs/metrics/micrometer/DgsGraphQLMetricsInstrumentation.kt [200:217]
override fun beginValidation(
parameters: InstrumentationValidationParameters,
state: InstrumentationState,
): InstrumentationContext<List<ValidationError>> {
require(state is MetricsInstrumentationState)
val document =
parameters.document
?: return noOp()
val querySignatureRepository =
optQuerySignatureRepository.getOrNull()
?: return noOp()
return SimpleInstrumentationContext.whenCompleted { errors, throwable ->
if (errors.isNullOrEmpty() && throwable == null) {
state.querySignatureValue = querySignatureRepository.get(document, parameters).getOrNull()
}
}
}