public class ExecutedEvent extends AbstractGraphQLRequestEvent
JFR Event fired when GQL request is full executed and its response sent to client.
Author:
Lukáš Hornych, FG Forrest a.s. (c) 2024
  • Constructor Details

  • Method Details

    • provideOperationType

      @Nonnull public ExecutedEvent provideOperationType(@Nonnull graphql.language.OperationDefinition.Operation operationType)
      Provide operation type for this event. Can be called only once.
      Returns:
      this
    • provideCatalogName

      @Nonnull public ExecutedEvent provideCatalogName(@Nonnull String catalogName)
      Provide catalog name for this event. Can be called only once.
      Returns:
      this
    • provideOperationName

      @Nonnull public ExecutedEvent provideOperationName(@Nonnull String operationName)
      Provide operation name for this event. Can be called only once.
      Returns:
      this
    • provideResponseStatus

      @Nonnull public ExecutedEvent provideResponseStatus(@Nonnull ExecutedEvent.ResponseStatus responseStatus)
      Provide response status for this event. Can be called only once. Default is ExecutedEvent.ResponseStatus.OK
      Returns:
      this
    • provideRootFieldsProcessed

      @Nonnull public ExecutedEvent provideRootFieldsProcessed(int rootFieldsProcessed)
    • finishInputDeserialization

      @Nonnull public ExecutedEvent finishInputDeserialization()
      Measures duration of request deserialization from previous state. Should be called only once.
      Returns:
      this
    • finishPreparation

      @Nonnull public ExecutedEvent finishPreparation()
      Measures duration of preparation from previous state. Should be called only once.
      Returns:
      this
    • finishParse

      @Nonnull public ExecutedEvent finishParse()
      Measures duration of parsing from previous state. Should be called only once.
      Returns:
      this
    • finishValidation

      @Nonnull public ExecutedEvent finishValidation()
      Measures duration of validation deserialization from previous state. Should be called only once.
      Returns:
      this
    • measureInternalEvitaDBInputReconstruction

      public <T> T measureInternalEvitaDBInputReconstruction(@Nonnull Supplier<T> supplier)
      Measures duration of evitaDB input reconstruction within the supplier. Can be called mutliple times, all durations are summed.
      Returns:
      this
    • measureInternalEvitaDBExecution

      public <T> T measureInternalEvitaDBExecution(@Nonnull Supplier<T> supplier)
      Measures duration of evitaDB execution within the supplier. Can be called mutliple times, all durations are summed.
      Returns:
      this
    • finishOperationExecution

      @Nonnull public ExecutedEvent finishOperationExecution()
      Measures duration of operation execution from previous state. Should be called only once.
      Returns:
      this
    • finishResultSerialization

      @Nonnull public ExecutedEvent finishResultSerialization()
      Measures duration of result serialization from previous state. Should be called only once. If not called, it is assumed that no result serialization was done and thus it took 0 seconds.
      Returns:
      this
    • finish

      @Nonnull public ExecutedEvent finish()
      Finish the event.
      Returns:
      this