mitSortOrder($this->provider->maxSortOrder() + 1); return $this->processor->create($mahlzeit); } public function update(Mahlzeit $mahlzeit): Mahlzeit { return $this->processor->save($mahlzeit); } public function delete(int $id): void { $this->find($id); $mahlzeit = $this->provider->find($id); if ($mahlzeit !== null) { $this->processor->delete($mahlzeit); } } public function find(int $id): Mahlzeit { return $this->provider->find($id) ?? throw new MahlzeitNotFoundException($id); } /** @return list */ public function list(?MahlzeitStatus $status = null): array { return $this->provider->list($status); } }