GraphQL by Joe McBride

<PackageReference Include="GraphQL" Version="7.0.0" />

.NET API 685,568 bytes


Default implementation for IDocumentExecuter.

Initializes a new instance with default IDocumentBuilder and IDocumentValidator instances, and without document caching.

public DocumentExecuter(IDocumentBuilder documentBuilder, IDocumentValidator documentValidator)

Initializes a new instance with specified IDocumentBuilder and IDocumentValidator.

public DocumentExecuter(IDocumentBuilder documentBuilder, IDocumentValidator documentValidator, IExecutionStrategySelector executionStrategySelector, IEnumerable<IConfigureExecution> configurations)

Initializes a new instance with the specified IDocumentBuilder, IDocumentValidator, IExecutionStrategySelector and a set of IConfigureExecution instances.

protected virtual ExecutionContext BuildExecutionContext(ExecutionOptions options, GraphQLDocument document, GraphQLOperationDefinition operation, Variables variables, Metrics metrics)

Builds a ExecutionContext instance from the provided values.

protected virtual GraphQLOperationDefinition GetOperation(string operationName, GraphQLDocument document)

Returns the selected GraphQLOperationDefinition given a specified GraphQLDocument and operation name. Returns null if an operation cannot be found that matches the given criteria. Returns the first operation from the document if no operation name was specified.

Returns an instance of an IExecutionStrategy given specified execution parameters. Typically the strategy is selected based on the type of operation. By default, the selection is handled by the IExecutionStrategySelector implementation passed to the constructor, which will select an execution strategy based on a set of ExecutionStrategyRegistration instances passed to it. For the DefaultExecutionStrategySelector without any registrations, query operations will return a ParallelExecutionStrategy while mutation operations return a SerialExecutionStrategy. Subscription operations return a SubscriptionExecutionStrategy.