/** * {@inheritdoc} */ public final function handle(FakeElement $data) { self::$fakeElement = $data->getName() . serialize($data->getOptions()); if (array_key_exists(self::$fakeElement, self::$outputContainer)) { return $this->getOutput(self::$outputContainer[self::$fakeElement][0], self::$outputContainer[self::$fakeElement][1]); } $processed = $this->process($data); if ($processed === null) { if ($this->successor !== null) { $processed = $this->successor->handle($data); } } return $processed; }