container = $container; } /** * {@inheritdoc} */ public function registerHandler(int $direction, string $typeName, string $format, $handler): void { parent::registerHandler($direction, $typeName, $format, $handler); unset($this->initializedHandlers[$direction][$typeName][$format]); } /** * {@inheritdoc} */ public function getHandler(int $direction, string $typeName, string $format) { if (isset($this->initializedHandlers[$direction][$typeName][$format])) { return $this->initializedHandlers[$direction][$typeName][$format]; } if (!isset($this->handlers[$direction][$typeName][$format])) { return null; } $handler = $this->handlers[$direction][$typeName][$format]; if (\is_array($handler) && \is_string($handler[0]) && $this->container->has($handler[0])) { $handler[0] = $this->container->get($handler[0]); } return $this->initializedHandlers[$direction][$typeName][$format] = $handler; } }