/** * @param ReflectionClass $reflectionClass * @param Annotation $annotation * @return array */ public function build(ReflectionClass $reflectionClass, $annotation) { /** @var Definition $definition */ list($serviceId, $definition) = parent::build($reflectionClass, $annotation); $definition->addTag(MiddlewareCompilerPass::TAG); $definition->setPublic(false); return [$serviceId, $definition]; }
/** * @param ReflectionClass $reflectionClass * @param Annotation $annotation * @return array */ public function build(ReflectionClass $reflectionClass, $annotation) { /** @var Definition $definition */ list($serviceId, $definition) = parent::build($reflectionClass, $annotation); $definition->addTag(GlobalCompilerPass::TAG, ['priority' => $annotation->priority]); $definition->setPublic(false); return [$serviceId, $definition]; }
/** * {@inheritdoc} */ public function build(ReflectionClass $reflectionClass, $annotation) { /** @var Definition $definition */ list($serviceId, $definition) = parent::build($reflectionClass, $annotation); $definition->addTag(ConsoleCompilerPass::TAG); $definition->setPublic(true); $definition->setShared(false); $serviceId = sprintf('__console.%s', $serviceId); return [$serviceId, $definition]; }
/** * @param ReflectionClass $reflectionClass * @param ControllerAnnotation|Service $annotation * @return array */ public function build(ReflectionClass $reflectionClass, $annotation) { /** @var Definition $definition */ list($serviceId, $definition) = parent::build($reflectionClass, $annotation); $serviceId = sprintf('__controller.%s', $serviceId); $definition->addTag(ControllerCompilerPass::CONTROLLER_TAG); $definition->setPublic(true); $definition->setShared(false); foreach ($reflectionClass->getMethods() as $method) { /** @var Route $routeAnnotation */ $routeAnnotation = $this->reader->getMethodAnnotation($method, Route::class); if ($routeAnnotation) { $this->handleRouteAnnotation($annotation, $method, $routeAnnotation, $serviceId, $definition); } } return [$serviceId, $definition]; }