diff options
author | vlad <vlad@driver.xyz> | 2017-07-17 19:35:53 -0700 |
---|---|---|
committer | vlad <vlad@driver.xyz> | 2017-07-17 19:35:53 -0700 |
commit | 01ead151be45774ed3fc08ef010215a5f5728498 (patch) | |
tree | 70ec5273736e67693be0d61cd2d9bb604505bfb4 /src | |
parent | 702b86748425650445b8b2278814474bab9ae27b (diff) | |
download | rest-query-01ead151be45774ed3fc08ef010215a5f5728498.tar.gz rest-query-01ead151be45774ed3fc08ef010215a5f5728498.tar.bz2 rest-query-01ead151be45774ed3fc08ef010215a5f5728498.zip |
Removing PasswordHash and jbCrypt lib from dependencies
Diffstat (limited to 'src')
7 files changed, 1 insertions, 60 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/computation/Computation.scala b/src/main/scala/xyz/driver/pdsuicommon/computation/Computation.scala index af7d051..a9430e3 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/computation/Computation.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/computation/Computation.scala @@ -75,10 +75,7 @@ final case class Computation[+R, +T](future: Future[Either[R, T]]) { def mapAll[R2, T2](onLeft: R => Computation[R2, T2])(onRight: T => Computation[R2, T2])( onFailure: () => Computation[R2, T2])(implicit ec: ExecutionContext): Computation[R2, T2] = { - Computation(future.flatMap { success => - if (success.isRight) onRight(success.right.get).future - else onLeft(success.left.get).future - } recoverWith { + Computation(future.flatMap(_.fold(onLeft, onRight).future).recoverWith { case _ => onFailure().future }) } diff --git a/src/main/scala/xyz/driver/pdsuicommon/domain/PasswordHash.scala b/src/main/scala/xyz/driver/pdsuicommon/domain/PasswordHash.scala deleted file mode 100644 index 337d925..0000000 --- a/src/main/scala/xyz/driver/pdsuicommon/domain/PasswordHash.scala +++ /dev/null @@ -1,36 +0,0 @@ -package xyz.driver.pdsuicommon.domain - -import java.nio.charset.Charset - -import org.mindrot.jbcrypt.BCrypt - -final case class PasswordHash(value: Array[Byte]) { - - lazy val hashString: String = new String(value, Charset.forName("UTF-8")) - - override def toString: String = { - s"${this.getClass.getSimpleName}($hashString)" - } - - override def equals(that: Any): Boolean = { - that match { - case thatHash: PasswordHash => java.util.Arrays.equals(this.value, thatHash.value) - case _ => false - } - } - - override def hashCode(): Int = - 42 + java.util.Arrays.hashCode(this.value) - - def is(password: String): Boolean = - BCrypt.checkpw(password, hashString) -} - -object PasswordHash { - - def apply(password: String): PasswordHash = - new PasswordHash(getHash(password)) - - private def getHash(str: String): Array[Byte] = - BCrypt.hashpw(str, BCrypt.gensalt()).getBytes(Charset.forName("UTF-8")) -} diff --git a/src/main/scala/xyz/driver/pdsuicommon/domain/User.scala b/src/main/scala/xyz/driver/pdsuicommon/domain/User.scala index 63eef85..b400a71 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/domain/User.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/domain/User.scala @@ -12,7 +12,6 @@ case class User(id: StringId[User], email: Email, name: String, roles: Set[Role], - passwordHash: PasswordHash, latestActivity: Option[LocalDateTime], deleted: Option[LocalDateTime]) { @@ -22,7 +21,6 @@ case class User(id: StringId[User], email = Email(driverUser.email.toString), name = driverUser.name.toString, roles = driverUser.roles.flatMap(User.mapRoles), - passwordHash = PasswordHash(""), latestActivity = driverUser.lastLoginTime.map(t => Instant.ofEpochMilli(t.millis).atZone(ZoneId.of("Z")).toLocalDateTime), deleted = Option.empty[LocalDateTime] diff --git a/src/main/scala/xyz/driver/pdsuicommon/json/Serialization.scala b/src/main/scala/xyz/driver/pdsuicommon/json/Serialization.scala index 9800903..8231ddb 100644 --- a/src/main/scala/xyz/driver/pdsuicommon/json/Serialization.scala +++ b/src/main/scala/xyz/driver/pdsuicommon/json/Serialization.scala @@ -40,12 +40,6 @@ object Serialization { private val emailJsonWrites: Writes[Email] = Writes(email => JsString(email.value)) implicit val emailJsonFormat: Format[Email] = Format(emailJsonReads, emailJsonWrites) - private val passwordHashJsonReads: Reads[PasswordHash] = - Reads.StringReads.map(hash => PasswordHash(hash.getBytes("UTF-8"))) - private val passwordHashJsonWrites: Writes[PasswordHash] = Writes( - passwordHash => JsString(passwordHash.value.toString)) - implicit val passwordHashJsonFormat: Format[PasswordHash] = Format(passwordHashJsonReads, passwordHashJsonWrites) - private val caseIdJsonReads: Reads[CaseId] = Reads.StringReads.map(CaseId(_)) private val caseIdJsonWrites: Writes[CaseId] = Writes(caseId => JsString(caseId.id)) implicit val caseIdJsonFormat: Format[CaseId] = Format(caseIdJsonReads, caseIdJsonWrites) diff --git a/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/ApiPartialUser.scala b/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/ApiPartialUser.scala index 05395b4..2f476e7 100644 --- a/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/ApiPartialUser.scala +++ b/src/main/scala/xyz/driver/pdsuidomain/formats/json/user/ApiPartialUser.scala @@ -9,7 +9,6 @@ import play.api.libs.json._ import scala.collection._ import scala.util.Try -import User._ import xyz.driver.pdsuicommon.json.JsonValidationException import xyz.driver.pdsuicommon.json.Serialization.seqJsonFormat import xyz.driver.pdsuicommon.validation.{AdditionalConstraints, JsonValidationErrors} @@ -50,7 +49,6 @@ final case class ApiPartialUser(email: Option[String], name: Option[String], rol email = userEmail, name = name.get, roles = roles.toSeq.flatMap(_.map(UserRole.roleFromString)).toSet, - passwordHash = PasswordHash(createPassword), latestActivity = None, deleted = None ) diff --git a/src/test/scala/xyz/driver/pdsuicommon/BaseSuite.scala b/src/test/scala/xyz/driver/pdsuicommon/BaseSuite.scala index 54c46c3..7c9d8c4 100644 --- a/src/test/scala/xyz/driver/pdsuicommon/BaseSuite.scala +++ b/src/test/scala/xyz/driver/pdsuicommon/BaseSuite.scala @@ -20,7 +20,6 @@ trait BaseSuite extends FreeSpecLike with DiffUtils with ScalaFutures { email = Email(email), name = "Test", roles = Set(role), - passwordHash = PasswordHash(password), latestActivity = Some(LocalDateTime.now(ZoneId.of("Z"))), deleted = None ) diff --git a/src/test/scala/xyz/driver/pdsuicommon/utils/DiffUtils.scala b/src/test/scala/xyz/driver/pdsuicommon/utils/DiffUtils.scala index cc2ef0a..156cb08 100644 --- a/src/test/scala/xyz/driver/pdsuicommon/utils/DiffUtils.scala +++ b/src/test/scala/xyz/driver/pdsuicommon/utils/DiffUtils.scala @@ -5,7 +5,6 @@ import java.time.{LocalDate, LocalDateTime} import ai.x.diff._ import org.scalatest.Assertions -import xyz.driver.pdsuicommon.domain.PasswordHash import xyz.driver.pdsuidomain.entities.{Document, ExtractedData, MedicalRecord} import scala.io.AnsiColor @@ -41,14 +40,6 @@ trait DiffUtils { this: Assertions => } } - implicit def passwordHashDiffShow: DiffShow[PasswordHash] = new DiffShow[PasswordHash] { - def show(x: PasswordHash): String = s"PasswordHash($x)" - def diff(left: PasswordHash, right: PasswordHash): Comparison = { - if (left.equals(right)) Identical(show(left)) - else Different(showChange(left, right)) - } - } - implicit def metaDiffShow: DiffShow[MedicalRecord.Meta] = new DiffShow[MedicalRecord.Meta] { def show(x: MedicalRecord.Meta): String = s"MedicalRecord.Meta($x)" def diff(left: MedicalRecord.Meta, right: MedicalRecord.Meta): Comparison = { |