From e24135e5c64798d9eaf57c2bad0b678cbaef6be5 Mon Sep 17 00:00:00 2001 From: vlad Date: Fri, 20 Jan 2017 14:09:04 -0800 Subject: Role.fromString --- src/main/scala/xyz/driver/core/auth.scala | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/main/scala/xyz/driver/core') diff --git a/src/main/scala/xyz/driver/core/auth.scala b/src/main/scala/xyz/driver/core/auth.scala index 0b30bc0..cede122 100644 --- a/src/main/scala/xyz/driver/core/auth.scala +++ b/src/main/scala/xyz/driver/core/auth.scala @@ -31,6 +31,19 @@ object auth { def hasPermission(permission: Permission): Boolean = permissions.contains(permission) } + object Role { + def fromString(roleString: String): Option[Role] = roleString match { + case "Observer" => Some(ObserverRole) + case "Patient" => Some(PatientRole) + case "Curator" => Some(CuratorRole) + case "Pathologist" => Some(PathologistRole) + case "Administrator" => Some(AdministratorRole) + case "Physician" => Some(PhysicianRole) + case "Relative" => Some(RelativeRole) + case _ => None + } + } + case object ObserverRole extends Role { val id = Id("1") val name = Name("observer") -- cgit v1.2.3