feature: add initDB on migration

This commit is contained in:
2019-07-01 16:58:59 +02:00
parent 0a6c38661a
commit 551a6c11cd

View File

@@ -65,7 +65,20 @@ class Migrations(directory: File, private val connection: Connection): Migration
return this return this
} }
private fun initDB() {
if (!initialized) {
File(this::class.java.getResource("/sql/migration/createHistoryShema.sql").toURI()).let {
connection.connect().sendQuery(it.readText()).join()
}
File(this::class.java.getResource("/sql/migration/createFunctionShema.sql").toURI()).let {
connection.connect().sendQuery(it.readText()).join()
}
initialized = true
}
}
override fun up(): Int { override fun up(): Int {
initDB()
var count = 0 var count = 0
queries.forEach { queries.forEach {
it.up() it.up()
@@ -76,6 +89,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
} }
override fun down(): Int { override fun down(): Int {
initDB()
var count = 0 var count = 0
queries.forEach { queries.forEach {
it.down() it.down()
@@ -86,6 +100,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
} }
override fun test(): Int { override fun test(): Int {
initDB()
var count = 0 var count = 0
connection.inTransaction { connection.inTransaction {
count += up() count += up()
@@ -97,6 +112,7 @@ class Migrations(directory: File, private val connection: Connection): Migration
} }
override fun status(): Int { override fun status(): Int {
initDB()
TODO("not implemented") TODO("not implemented")
} }
} }