session->get($this->sessionKey); if ($orderBuilder !== null && ! ($orderBuilder instanceof OrderBuilder)) { throw new \UnexpectedValueException('Invalid session data for order builder'); } return $orderBuilder; } public function save(OrderBuilder $builder): void { $this->session->put($this->sessionKey, $builder); } public function clear(): void { $this->session->forget($this->sessionKey); } }