Module: GraphQL::Execution::Batching::SchemaExtension

Defined in:
lib/graphql/execution/batching.rb

Instance Method Summary collapse

Instance Method Details

#execute_batching(query_str = nil, context: nil, document: nil, variables: nil, root_value: nil, validate: true, visibility_profile: nil) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/graphql/execution/batching.rb', line 11

def execute_batching(query_str = nil, context: nil, document: nil, variables: nil, root_value: nil, validate: true, visibility_profile: nil)
  multiplex_context = if context
    {
      backtrace: context[:backtrace],
      tracers: context[:tracers],
      trace: context[:trace],
      dataloader: context[:dataloader],
      trace_mode: context[:trace_mode],
    }
  else
    {}
  end
  query_opts = {
    query: query_str,
    document: document,
    context: context,
    validate: validate,
    variables: variables,
    root_value: root_value,
    visibility_profile: visibility_profile,
  }
  m_results = multiplex_batching([query_opts], context: multiplex_context, max_complexity: nil)
  m_results[0]
end

#multiplex_batching(query_options, context: {}, max_complexity: self.max_complexity) ⇒ Object



36
37
38
# File 'lib/graphql/execution/batching.rb', line 36

def multiplex_batching(query_options, context: {}, max_complexity: self.max_complexity)
  Batching.run_all(self, query_options, context: context, max_complexity: max_complexity)
end