aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStewart Stewart <stewinsalot@gmail.com>2017-02-24 10:24:48 -0500
committerStewart Stewart <stewinsalot@gmail.com>2017-02-24 10:25:53 -0500
commite3023da0727520129d744607a0c60979b5f21fc1 (patch)
treeb1b9814b00114d6970d1d5a61f5181c8db9dbe21
parentd628c535f658cc8af9b9f280b5222eb3364e8c30 (diff)
downloadslick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.tar.gz
slick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.tar.bz2
slick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.zip
clean up main file
-rw-r--r--src/main/scala/Main.scala (renamed from src/main/scala/NamespacedCodegen.scala)64
-rw-r--r--src/main/scala/OutputHelpers.scala11
2 files changed, 36 insertions, 39 deletions
diff --git a/src/main/scala/NamespacedCodegen.scala b/src/main/scala/Main.scala
index 7ae4ac0..55275a3 100644
--- a/src/main/scala/NamespacedCodegen.scala
+++ b/src/main/scala/Main.scala
@@ -5,19 +5,28 @@ import scala.concurrent.Await
import scala.concurrent.duration.Duration
import scala.concurrent.ExecutionContext.Implicits.global
import slick.backend.DatabaseConfig
-import slick.codegen.{SourceCodeGenerator, StringGeneratorHelpers}
+import slick.codegen.SourceCodeGenerator
import slick.driver.JdbcProfile
-import slick.{model => sModel}
-import slick.model.{Column, Model, Table, QualifiedName}
+
+trait TableFileGenerator { self: SourceCodeGenerator =>
+ def writeTablesToFile(profile: String,
+ folder: String,
+ pkg: String,
+ fileName: String): Unit
+}
+
+trait RowFileGenerator { self: SourceCodeGenerator =>
+ def writeRowsToFile(folder: String, pkg: String, fileName: String): Unit
+}
object Generator {
- def outputSchemaCode(schemaName: String,
- profile: String,
- folder: String,
- pkg: String,
- tableGen: TableFileGenerator,
- rowGen: RowFileGenerator): Unit = {
+ private def outputSchemaCode(schemaName: String,
+ profile: String,
+ folder: String,
+ pkg: String,
+ tableGen: TableFileGenerator,
+ rowGen: RowFileGenerator): Unit = {
val camelSchemaName = schemaName.split('_').map(_.capitalize).mkString("")
tableGen.writeTablesToFile(profile: String,
@@ -46,7 +55,7 @@ object Generator {
val imports = schemaImports.map("import " + _).mkString("\n")
try {
- val dbModel: Model = Await.result(
+ val dbModel: slick.model.Model = Await.result(
dc.db.run(SchemaParser.createModel(dc.driver, parsedSchemasOpt)),
Duration.Inf)
@@ -73,25 +82,24 @@ object Generator {
typeReplacements
)
- val tableGenerator = new TableSourceCodeGenerator(
- schemaOnlyModel = schemaOnlyModel,
- headerComment = header,
- imports = imports,
- schemaName = schemaName,
- fullDatabaseModel = dbModel,
- pkg = pkg,
- manualForeignKeys,
- parentType = parentType,
- idType,
- typeReplacements)
+ val tableGenerator =
+ new TableSourceCodeGenerator(schemaOnlyModel = schemaOnlyModel,
+ headerComment = header,
+ imports = imports,
+ schemaName = schemaName,
+ fullDatabaseModel = dbModel,
+ pkg = pkg,
+ manualForeignKeys,
+ parentType = parentType,
+ idType,
+ typeReplacements)
- outputSchemaCode(
- schemaName = schemaName,
- profile = profile,
- folder = outputPath,
- pkg = pkg,
- tableGen = tableGenerator,
- rowGen = rowGenerator)
+ outputSchemaCode(schemaName = schemaName,
+ profile = profile,
+ folder = outputPath,
+ pkg = pkg,
+ tableGen = tableGenerator,
+ rowGen = rowGenerator)
}
} finally {
dc.db.close()
diff --git a/src/main/scala/OutputHelpers.scala b/src/main/scala/OutputHelpers.scala
index b68af8c..852c2ff 100644
--- a/src/main/scala/OutputHelpers.scala
+++ b/src/main/scala/OutputHelpers.scala
@@ -1,16 +1,5 @@
import slick.codegen.{SourceCodeGenerator, OutputHelpers}
-trait TableFileGenerator { self: SourceCodeGenerator =>
- def writeTablesToFile(profile: String,
- folder: String,
- pkg: String,
- fileName: String): Unit
-}
-
-trait RowFileGenerator { self: SourceCodeGenerator =>
- def writeRowsToFile(folder: String, pkg: String, fileName: String): Unit
-}
-
trait TableOutputHelpers extends TableFileGenerator with OutputHelpers {
self: SourceCodeGenerator =>