aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/reading/models/Book.scala
diff options
context:
space:
mode:
authorJoris2016-11-27 18:38:58 +0100
committerJoris2016-12-20 23:05:43 +0100
commitb780f6f660cc5b2ff2b1ca3884871002823256a1 (patch)
treec530166206743be1925688f8b3319c630208a695 /src/main/scala/reading/models/Book.scala
parent0aab7be2cf2cf73c62b305450902cdc3fe77cd4a (diff)
downloadreading-b780f6f660cc5b2ff2b1ca3884871002823256a1.tar.gz
reading-b780f6f660cc5b2ff2b1ca3884871002823256a1.tar.bz2
reading-b780f6f660cc5b2ff2b1ca3884871002823256a1.zip
Init
Diffstat (limited to 'src/main/scala/reading/models/Book.scala')
-rw-r--r--src/main/scala/reading/models/Book.scala21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/main/scala/reading/models/Book.scala b/src/main/scala/reading/models/Book.scala
new file mode 100644
index 0000000..1e4b81a
--- /dev/null
+++ b/src/main/scala/reading/models/Book.scala
@@ -0,0 +1,21 @@
+package reading.models
+
+case class Book(
+ title: String,
+ author: String,
+ genres: Seq[Genre],
+ themes: Seq[Theme]
+)
+
+object Book {
+ def all: Seq[Book] = Seq(
+ Book("Les dix petits nègres", "Agatha Christie", Seq(Genre.Detective), Seq(Theme.Fear)),
+ Book("Le joueur", "Fiódor Dostoyevski", Seq(Genre.Adventure), Seq(Theme.Fear)),
+ Book("Voyage au bout de la nuit", "Céline", Seq(Genre.Adventure), Seq(Theme.Fear)),
+ Book("Le petit prince", "Antoine de Saint Exupéry", Seq(Genre.Adventure), Seq(Theme.Friendship)),
+ Book("Les frères Karamazov", "Fiódor Dostoyevski", Seq(Genre.Adventure), Seq(Theme.Family))
+ )
+
+ def filter(books: Seq[Book], filters: Seq[Filter]): Seq[Book] =
+ books.filter(b => filters.forall(_.filter(b)))
+}