Class AbstractGraphQlHttpHandler

java.lang.Object
org.springframework.graphql.server.webmvc.AbstractGraphQlHttpHandler
Direct Known Subclasses:
GraphQlHttpHandler, GraphQlSseHandler

public abstract class AbstractGraphQlHttpHandler extends Object
Abstract base class for GraphQL over HTTP handlers.
Since:
1.3.0
Author:
Brian Clozel, Rossen Stoyanchev
  • Field Details

    • logger

      protected final Log logger
  • Constructor Details

  • Method Details

    • getWriteFunction

      @Nullable protected ServerResponse.HeadersBuilder.WriteFunction getWriteFunction(Map<String,Object> resultMap, MediaType contentType)
      Exposes a ServerResponse.HeadersBuilder.WriteFunction that writes with the HttpMessageConverter provided to the constructor.
      Parameters:
      resultMap - the result map to write
      contentType - to set the response content type to
      Returns:
      the write function, or null if a HttpMessageConverter was not provided to the constructor
    • handleRequest

      public ServerResponse handleRequest(ServerRequest request) throws jakarta.servlet.ServletException
      Handle GraphQL over HTTP requests.
      Parameters:
      request - the current request
      Returns:
      the resulting response
      Throws:
      jakarta.servlet.ServletException - may be raised when reading the request body, e.g. HttpMediaTypeNotSupportedException.
    • prepareResponse

      protected abstract ServerResponse prepareResponse(ServerRequest request, reactor.core.publisher.Mono<WebGraphQlResponse> responseMono) throws jakarta.servlet.ServletException
      Prepare the ServerResponse for the given GraphQL response.
      Parameters:
      request - the current request
      responseMono - the GraphQL response
      Returns:
      the server response
      Throws:
      jakarta.servlet.ServletException