Skip to content

Commit 5f192e7

Browse files
authored
Merge pull request #78 from Pirokiko/master
Support for Symfony 4.3 EventDispatcher->dispatch definition
2 parents e74a544 + f89b4be commit 5f192e7

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

Execution/Processor.php

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
use Psr\Log\LoggerInterface;
66
use Symfony\Component\DependencyInjection\ContainerAwareInterface;
7+
use Symfony\Component\HttpKernel\Kernel;
78
use Youshido\GraphQL\Execution\Context\ExecutionContextInterface;
89
use Youshido\GraphQL\Execution\Processor as BaseProcessor;
910
use Youshido\GraphQL\Execution\ResolveInfo;
@@ -74,14 +75,25 @@ protected function resolveQuery(Query $query)
7475
return parent::resolveQuery($query);
7576
}
7677

78+
private function dispatchResolveEvent(ResolveEvent $event, $name){
79+
$major = Kernel::MAJOR_VERSION;
80+
$minor = Kernel::MINOR_VERSION;
81+
82+
if($major > 4 || ($major === 4 && $minor >= 3)){
83+
$this->eventDispatcher->dispatch($event, $name);
84+
}else{
85+
$this->eventDispatcher->dispatch($name, $event);
86+
}
87+
}
88+
7789
protected function doResolve(FieldInterface $field, AstFieldInterface $ast, $parentValue = null)
7890
{
7991
/** @var AstQuery|AstField $ast */
8092
$arguments = $this->parseArgumentsValues($field, $ast);
8193
$astFields = $ast instanceof AstQuery ? $ast->getFields() : [];
8294

8395
$event = new ResolveEvent($field, $astFields);
84-
$this->eventDispatcher->dispatch('graphql.pre_resolve', $event);
96+
$this->dispatchResolveEvent($event, 'graphql.pre_resolve');
8597

8698
$resolveInfo = $this->createResolveInfo($field, $astFields);
8799
$this->assertClientHasFieldAccess($resolveInfo);
@@ -116,7 +128,7 @@ protected function doResolve(FieldInterface $field, AstFieldInterface $ast, $par
116128
}
117129

118130
$event = new ResolveEvent($field, $astFields, $result);
119-
$this->eventDispatcher->dispatch('graphql.post_resolve', $event);
131+
$this->dispatchResolveEvent($event, 'graphql.post_resolve');
120132
return $event->getResolvedValue();
121133
}
122134

0 commit comments

Comments
 (0)