aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/com/drivergrp/core/database.scala
diff options
context:
space:
mode:
authorvlad <vlad@drivergrp.com>2016-07-16 04:09:40 -0400
committervlad <vlad@drivergrp.com>2016-07-16 04:09:40 -0400
commit482459a63433c281b7a576236111e6a86e4521c9 (patch)
tree7b445b56b5846bda368e1864ac43d8f860341077 /src/main/scala/com/drivergrp/core/database.scala
parent980deaf70e4e0ba906d0af534aebc839015f0581 (diff)
downloaddriver-core-482459a63433c281b7a576236111e6a86e4521c9.tar.gz
driver-core-482459a63433c281b7a576236111e6a86e4521c9.tar.bz2
driver-core-482459a63433c281b7a576236111e6a86e4521c9.zip
Default implementations for easier testing + Database implicits reorganized
Diffstat (limited to 'src/main/scala/com/drivergrp/core/database.scala')
-rw-r--r--src/main/scala/com/drivergrp/core/database.scala30
1 files changed, 21 insertions, 9 deletions
diff --git a/src/main/scala/com/drivergrp/core/database.scala b/src/main/scala/com/drivergrp/core/database.scala
index f39512c..89cfac1 100644
--- a/src/main/scala/com/drivergrp/core/database.scala
+++ b/src/main/scala/com/drivergrp/core/database.scala
@@ -11,14 +11,6 @@ object database {
trait Database {
val profile: JdbcProfile
val database: JdbcProfile#Backend#Database
-
- import profile.api._
-
- implicit def idColumnType[T] =
- MappedColumnType.base[Id[T], Long]({ id => id: Long }, { id => Id[T](id) })
-
- implicit def nameColumnType[T] =
- MappedColumnType.base[Name[T], String]({ name => name: String }, { name => Name[T](name) })
}
object Database {
@@ -33,8 +25,28 @@ object database {
}
}
- trait DatabaseObject {
+
+ trait IdColumnTypes {
+ val database: Database
+
+ import database.profile.api._
+
+ implicit def idColumnType[T] =
+ MappedColumnType.base[Id[T], Long]({ id => id: Long }, { id => Id[T](id) })
+
+ implicit def nameColumnType[T] =
+ MappedColumnType.base[Name[T], String]({ name => name: String }, { name => Name[T](name) })
+ }
+
+
+ trait DatabaseObject extends IdColumnTypes {
+
def createTables(): Future[Unit]
def disconnect(): Unit
}
+
+ abstract class DatabaseObjectAdapter extends DatabaseObject {
+ def createTables(): Future[Unit] = Future.successful(())
+ def disconnect(): Unit = {}
+ }
}