/** {@inheritdoc} */ public function get($page = 1, $booksPerPage = null) { $views = []; /** @var Book $book */ foreach ($this->repository->getAll() as $book) { $views[] = new BookView((string) $book->id(), $book->title(), $book->authors(), $book->isbn()); } if (null !== $booksPerPage) { return array_slice($views, $page * $booksPerPage - $booksPerPage, $booksPerPage); } return $views; }
/** * @param UuidInterface $bookId * @param string $title * @param string $authors * @param string $isbn */ public function add(UuidInterface $bookId, $title, $authors, $isbn) { $this->books->save(new Book($bookId, $title, $authors, $isbn)); }