graphql.kickstart.execution.input.PerRequestBatchedInvocationInput Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of graphql-java-kickstart Show documentation
Show all versions of graphql-java-kickstart Show documentation
relay.js-compatible GraphQL servlet
package graphql.kickstart.execution.input;
import graphql.kickstart.execution.GraphQLRequest;
import graphql.kickstart.execution.context.ContextSetting;
import graphql.kickstart.execution.context.GraphQLContext;
import graphql.schema.GraphQLSchema;
import java.util.List;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import lombok.Getter;
/**
* A collection of GraphQLSingleInvocationInputs that share a context object.
*/
@Getter
public class PerRequestBatchedInvocationInput implements GraphQLBatchedInvocationInput {
private final List invocationInputs;
private final ContextSetting contextSetting;
public PerRequestBatchedInvocationInput(List requests, GraphQLSchema schema,
Supplier contextSupplier, Object root, ContextSetting contextSetting) {
GraphQLContext context = contextSupplier.get();
invocationInputs = requests.stream().map(request -> new GraphQLSingleInvocationInput(request, schema, context, root))
.collect(Collectors.toList());
this.contextSetting = contextSetting;
}
}