procedure = $this->database->prepare($query); } public function getResponse(Request $request): Response { $messages = $this->procedure->processAll() ->selectAll()->cast(Message::class) ->collectAll(); $messages[] = new Message(0, 'Additional fortune added at request time.'); usort($messages, function (Message $a, Message $b): int { return $a->message() <=> $b->message(); }); return new SimpleOKResponse(new FortuneEntity($messages)); } }