aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala')
-rw-r--r--src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala
new file mode 100644
index 0000000..74acb81
--- /dev/null
+++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/UserRole.scala
@@ -0,0 +1,33 @@
+package xyz.driver.pdsuidomain.formats.json.user
+
+import xyz.driver.pdsuicommon.domain.User.Role
+
+object UserRole {
+
+ val roleFromString: PartialFunction[String, Role] = {
+ case "Cleaner" => Role.RecordCleaner
+ case "Organizer" => Role.RecordOrganizer
+ case "Extractor" => Role.DocumentExtractor
+ case "RecordAdmin" => Role.RecordAdmin
+ case "TrialSummarizer" => Role.TrialSummarizer
+ case "CriteriaCurator" => Role.CriteriaCurator
+ case "TrialAdmin" => Role.TrialAdmin
+ case "EligibilityVerifier" => Role.EligibilityVerifier
+ case "TreatmentMatchingAdmin" => Role.TreatmentMatchingAdmin
+ case "RoutesCurator" => Role.RoutesCurator
+ // No Mixed at this time
+ }
+
+ def roleToString(x: Role): String = x match {
+ case Role.RecordCleaner => "Cleaner"
+ case Role.RecordOrganizer => "Organizer"
+ case Role.DocumentExtractor => "Extractor"
+ case Role.RecordAdmin => "RecordAdmin"
+ case Role.TrialSummarizer => "TrialSummarizer"
+ case Role.CriteriaCurator => "CriteriaCurator"
+ case Role.TrialAdmin => "TrialAdmin"
+ case Role.EligibilityVerifier => "EligibilityVerifier"
+ case Role.TreatmentMatchingAdmin => "TreatmentMatchingAdmin"
+ case Role.RoutesCurator => "RoutesCurator"
+ }
+}