diff options
Diffstat (limited to 'src/main/scala/xyz/driver/pdsuicommon/domain')
-rw-r--r-- | src/main/scala/xyz/driver/pdsuicommon/domain/Id.scala | 51 | ||||
-rw-r--r-- | src/main/scala/xyz/driver/pdsuicommon/domain/TextJson.scala | 14 |
2 files changed, 0 insertions, 65 deletions
diff --git a/src/main/scala/xyz/driver/pdsuicommon/domain/Id.scala b/src/main/scala/xyz/driver/pdsuicommon/domain/Id.scala deleted file mode 100644 index e238245..0000000 --- a/src/main/scala/xyz/driver/pdsuicommon/domain/Id.scala +++ /dev/null @@ -1,51 +0,0 @@ -package xyz.driver.pdsuicommon.domain - -import java.util.UUID - -import xyz.driver.pdsuicommon.logging._ - -sealed trait Id[+T] - -final case class CompoundId[Id1 <: Id[_], Id2 <: Id[_]](part1: Id1, part2: Id2) extends Id[(Id1, Id2)] - -final case class LongId[+T](id: Long) extends Id[T] { - override def toString: String = id.toString - - def is(longId: Long): Boolean = { - id == longId - } -} - -object LongId { - implicit def toPhiString[T](x: LongId[T]): PhiString = Unsafe(s"LongId(${x.id})") -} - -final case class StringId[+T](id: String) extends Id[T] { - override def toString: String = id - - def is(stringId: String): Boolean = { - id == stringId - } -} - -object StringId { - implicit def toPhiString[T](x: StringId[T]): PhiString = Unsafe(s"StringId(${x.id})") -} - -final case class UuidId[+T](id: UUID) extends Id[T] { - override def toString: String = id.toString -} - -object UuidId { - - /** - * @note May fail, if `string` is invalid UUID. - */ - def apply[T](string: String): UuidId[T] = new UuidId[T](UUID.fromString(string)) - - def apply[T](): UuidId[T] = new UuidId[T](UUID.randomUUID()) - - implicit def ordering[T] = Ordering.by[UuidId[T], String](_.toString) - - implicit def toPhiString[T](x: UuidId[T]): PhiString = Unsafe(s"UuidId(${x.id})") -} diff --git a/src/main/scala/xyz/driver/pdsuicommon/domain/TextJson.scala b/src/main/scala/xyz/driver/pdsuicommon/domain/TextJson.scala deleted file mode 100644 index ee4d884..0000000 --- a/src/main/scala/xyz/driver/pdsuicommon/domain/TextJson.scala +++ /dev/null @@ -1,14 +0,0 @@ -package xyz.driver.pdsuicommon.domain - -import xyz.driver.pdsuicommon.logging._ - -final case class TextJson[+T](content: T) { - def map[U](f: T => U): TextJson[U] = copy(f(content)) -} - -object TextJson { - - implicit def toPhiString[T](x: TextJson[T])(implicit inner: T => PhiString): PhiString = { - phi"TextJson(${x.content})" - } -} |