aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/database/database.scala
diff options
context:
space:
mode:
authorvlad <vlad@driver.xyz>2017-05-25 17:05:41 -0700
committervlad <vlad@driver.xyz>2017-05-25 17:05:41 -0700
commite7534f298cd58dba276943a6367d22c6fd1f8101 (patch)
treeb7a424e379c843316b154214e17e3b03831b660e /src/main/scala/xyz/driver/core/database/database.scala
parent9a7e3688e407febec5c5ab05d3c7ff432c4f9025 (diff)
parent0a3438068e4b853e4c42f83a4eb304ae53382e51 (diff)
downloaddriver-core-e7534f298cd58dba276943a6367d22c6fd1f8101.tar.gz
driver-core-e7534f298cd58dba276943a6367d22c6fd1f8101.tar.bz2
driver-core-e7534f298cd58dba276943a6367d22c6fd1f8101.zip
Merge branch 'master' of https://github.com/drivergroup/driver-core into service-dependencies
Diffstat (limited to 'src/main/scala/xyz/driver/core/database/database.scala')
-rw-r--r--src/main/scala/xyz/driver/core/database/database.scala17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/core/database/database.scala b/src/main/scala/xyz/driver/core/database/database.scala
index b7a4165..8426309 100644
--- a/src/main/scala/xyz/driver/core/database/database.scala
+++ b/src/main/scala/xyz/driver/core/database/database.scala
@@ -121,6 +121,23 @@ package database {
def naturalKeyMapper[T] = MappedColumnType.base[Id[T], String](_.value, Id[T](_))
}
+ trait CreateAndDropSchema {
+ val slickDal: xyz.driver.core.database.SlickDal
+ val tables: GeneratedTables
+
+ import tables.profile.api._
+ import scala.concurrent.Await
+ import scala.concurrent.duration.Duration
+
+ def createSchema(): Unit = {
+ Await.result(slickDal.execute(tables.createNamespaceSchema >> tables.schema.create), Duration.Inf)
+ }
+
+ def dropSchema(): Unit = {
+ Await.result(slickDal.execute(tables.schema.drop >> tables.dropNamespaceSchema), Duration.Inf)
+ }
+ }
+
trait DatabaseObject extends ColumnTypes {
def createTables(): Future[Unit]
def disconnect(): Unit