From 555b621b618e4810324a2658d33315b05157e6be Mon Sep 17 00:00:00 2001 From: Joris Date: Fri, 23 Dec 2016 09:52:20 +0100 Subject: Add programs grouped by level --- src/main/scala/reading/models/Level.scala | 33 +++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/main/scala/reading/models/Level.scala (limited to 'src/main/scala/reading/models/Level.scala') diff --git a/src/main/scala/reading/models/Level.scala b/src/main/scala/reading/models/Level.scala new file mode 100644 index 0000000..1f7e153 --- /dev/null +++ b/src/main/scala/reading/models/Level.scala @@ -0,0 +1,33 @@ +package reading.models + +import enumeratum._ + +sealed trait Level extends EnumEntry with Ordered[Level] { + import Level._ + + def compare(that: Level) = { + def toInt(level: Level): Int = level match { + case Sixieme => 6 + case Cinquieme => 5 + case Quatrieme => 4 + case Troisieme => 3 + } + toInt(that) - toInt(this) + } + + override def toString(): String = this match { + case Sixieme => "6ème" + case Cinquieme => "5ème" + case Quatrieme => "4ème" + case Troisieme => "3ème" + } +} + +object Level extends Enum[Level] { + val values = findValues + + case object Sixieme extends Level + case object Cinquieme extends Level + case object Quatrieme extends Level + case object Troisieme extends Level +} -- cgit v1.2.3