lib/graphql/batch/mutation_execution_strategy.rb in graphql-batch-0.2.5 vs lib/graphql/batch/mutation_execution_strategy.rb in graphql-batch-0.3.0

- old
+ new

@@ -1,19 +1,18 @@ module GraphQL::Batch class MutationExecutionStrategy < GraphQL::Batch::ExecutionStrategy + attr_accessor :enable_batching + class FieldResolution < GraphQL::Batch::ExecutionStrategy::FieldResolution def get_finished_value(raw_value) - return super if execution_context.strategy.disable_batching + strategy = execution_context.strategy + return super if strategy.enable_batching - raw_value = GraphQL::Batch::Promise.resolve(raw_value).sync - - execution_context.strategy.disable_batching = true begin - result = super(raw_value) - GraphQL::Batch::Executor.current.wait_all - result + strategy.enable_batching = true + strategy.deep_sync(Promise.sync(super)) ensure - execution_context.strategy.disable_batching = false + strategy.enable_batching = false end end end end end