Interface PreparsedDocumentProvider

All Known Implementing Classes:
ApolloPersistedQuerySupport, NoOpPreparsedDocumentProvider, PersistedQuerySupport

@PublicSpi public interface PreparsedDocumentProvider
Interface that allows clients to hook in Document caching and/or the whitelisting of queries.
  • Method Details

    • getDocumentAsync

      CompletableFuture<PreparsedDocumentEntry> getDocumentAsync(ExecutionInput executionInput, Function<ExecutionInput,PreparsedDocumentEntry> parseAndValidateFunction)
      This is called to get a "cached" pre-parsed query and if it's not present, then the "parseAndValidateFunction" can be called to parse and validate the query.

      Note - the "parseAndValidateFunction" MUST be called if you don't have a per parsed version of the query because it not only parses and validates the query, it invokes Instrumentation calls as well for parsing and validation. if you don't make a call back on this then these won't happen.

      Parameters:
      executionInput - The ExecutionInput containing the query
      parseAndValidateFunction - If the query has not be pre-parsed, this function MUST be called to parse and validate it
      Returns:
      a promise to an PreparsedDocumentEntry