diff options
author | vlad <vlad@drivergrp.com> | 2016-07-16 04:09:40 -0400 |
---|---|---|
committer | vlad <vlad@drivergrp.com> | 2016-07-16 04:09:40 -0400 |
commit | 482459a63433c281b7a576236111e6a86e4521c9 (patch) | |
tree | 7b445b56b5846bda368e1864ac43d8f860341077 /src/main/scala/com/drivergrp/core/database.scala | |
parent | 980deaf70e4e0ba906d0af534aebc839015f0581 (diff) | |
download | driver-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.scala | 30 |
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 = {} + } } |