aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvlad <vlad@drivergrp.com>2016-10-10 18:16:42 -0700
committervlad <vlad@drivergrp.com>2016-10-10 18:16:42 -0700
commit461d08d2caefac4798eb5ac3fa3c0c421603de60 (patch)
tree5edefa3985535d5c2cd615e2d552693bde9f958e
parent94c324e249ab3e5848191602c3549cef350e83b1 (diff)
downloaddriver-core-461d08d2caefac4798eb5ac3fa3c0c421603de60.tar.gz
driver-core-461d08d2caefac4798eb5ac3fa3c0c421603de60.tar.bz2
driver-core-461d08d2caefac4798eb5ac3fa3c0c421603de60.zip
New permissions for Review and Amendv0.9.1
-rw-r--r--src/main/scala/com/drivergrp/core/auth.scala21
-rw-r--r--src/main/scala/com/drivergrp/core/crypto.scala8
2 files changed, 15 insertions, 14 deletions
diff --git a/src/main/scala/com/drivergrp/core/auth.scala b/src/main/scala/com/drivergrp/core/auth.scala
index 6b8cdaa..e857ef0 100644
--- a/src/main/scala/com/drivergrp/core/auth.scala
+++ b/src/main/scala/com/drivergrp/core/auth.scala
@@ -15,8 +15,10 @@ object auth {
case object CanSeeReport extends Permission
case object CanCreateReport extends Permission
case object CanEditReport extends Permission
+ case object CanReviewReport extends Permission
case object CanEditReviewingReport extends Permission
case object CanSignOutReport extends Permission
+ case object CanAmendReport extends Permission
case object CanShareReportWithPatient extends Permission
case object CanAssignRoles extends Permission
@@ -43,30 +45,21 @@ object auth {
case object CuratorRole extends Role {
val id = Id(3L)
val name = Name("curator")
- val permissions = Set[Permission](CanSeeUser, CanSeeAssay, CanSeeReport, CanEditReport)
+ val permissions = ObserverRole.permissions ++ Set[Permission](CanEditReport, CanReviewReport)
}
case object PathologistRole extends Role {
val id = Id(4L)
val name = Name("pathologist")
- val permissions =
- Set[Permission](CanSeeUser, CanSeeAssay, CanSeeReport, CanEditReport, CanSignOutReport, CanEditReviewingReport)
+ val permissions = ObserverRole.permissions ++
+ Set[Permission](CanEditReport, CanSignOutReport, CanAmendReport, CanEditReviewingReport)
}
case object AdministratorRole extends Role {
val id = Id(5L)
val name = Name("administrator")
- val permissions = Set[Permission](
- CanSeeUser,
- CanSeeAssay,
- CanSeeReport,
- CanCreateReport,
- CanEditReport,
- CanEditReviewingReport,
- CanSignOutReport,
- CanShareReportWithPatient,
- CanAssignRoles
- )
+ val permissions = CuratorRole.permissions ++
+ Set[Permission](CanCreateReport, CanShareReportWithPatient, CanAssignRoles)
}
trait User {
diff --git a/src/main/scala/com/drivergrp/core/crypto.scala b/src/main/scala/com/drivergrp/core/crypto.scala
index f693fa3..5f63eb9 100644
--- a/src/main/scala/com/drivergrp/core/crypto.scala
+++ b/src/main/scala/com/drivergrp/core/crypto.scala
@@ -16,4 +16,12 @@ object crypto {
def decrypt(decryptionKey: EncryptionKey)(message: Array[Byte]): Array[Byte]
}
+
+ object NoCrypto extends Crypto {
+
+ override def keyForToken(authToken: AuthToken): EncryptionKey = EncryptionKey(authToken.value.value)
+
+ override def decrypt(decryptionKey: EncryptionKey)(message: Array[Byte]): Array[Byte] = message
+ override def encrypt(encryptionKey: EncryptionKey)(message: Array[Byte]): Array[Byte] = message
+ }
}