Что вы подразумеваете под "получить". Ожидаете ли вы, чтобы все главы были в памяти? Или мы ищем базу данных?
Какую информацию идентифицирует Глава?
Предположим, что все главы (или, возможно, если не полный текст главы, а затем дескриптор главы) находятся в памяти. У вас есть коллекция глав с ключом ChapterIdentity (возможно, BookId + ChapterNumber).
Итак, это просто
ChapterCollection.getById(aChapterId);
Когда вы добавляете книгу, вам нужно добавить все ее главы в коллекцию.
Скорее всего, это исходит из базы данных. Таким образом, вы хотите возможность получить главы по идентификатору. Это все зависит от того, как вы делаете постоянство, но в принципе может выглядеть как пример в памяти с точки зрения ретривера.