aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStewart Stewart <stewinsalot@gmail.com>2017-05-30 17:36:12 -0700
committerStewart Stewart <stewinsalot@gmail.com>2017-05-30 17:36:12 -0700
commit5c0454a10fe09582fe72efe5b5392d02eb517325 (patch)
tree6539f832ec411285a272839f0bef0bcdd54c289a
parent793c81dd4678c7594189ebf6912890232c6e9112 (diff)
downloadslick-codegen-plugin-5c0454a10fe09582fe72efe5b5392d02eb517325.tar.gz
slick-codegen-plugin-5c0454a10fe09582fe72efe5b5392d02eb517325.tar.bz2
slick-codegen-plugin-5c0454a10fe09582fe72efe5b5392d02eb517325.zip
reorganize model transformation code
-rw-r--r--src/main/scala/Main.scala10
-rw-r--r--src/main/scala/SchemaParser.scala5
-rw-r--r--src/main/scala/TypedIdTable.scala2
3 files changed, 9 insertions, 8 deletions
diff --git a/src/main/scala/Main.scala b/src/main/scala/Main.scala
index 5bd84d1..2602103 100644
--- a/src/main/scala/Main.scala
+++ b/src/main/scala/Main.scala
@@ -51,12 +51,13 @@ object Generator {
val dc: DatabaseConfig[JdbcProfile] =
DatabaseConfig.forURI[JdbcProfile](uri)
val parsedSchemasOpt: Option[Map[String, List[String]]] =
- schemaNames.map(SchemaParser.parse)
+ schemaNames.map(ModelTransformation.parseSchemaList)
val imports = schemaImports.map("import " + _).mkString("\n")
try {
val dbModel: slick.model.Model = Await.result(
- dc.db.run(SchemaParser.createModel(dc.driver, parsedSchemasOpt)),
+ dc.db.run(
+ ModelTransformation.createModel(dc.driver, parsedSchemasOpt)),
Duration.Inf)
parsedSchemasOpt.getOrElse(Map.empty).foreach {
@@ -66,9 +67,8 @@ object Generator {
.getFragment()}").driver"""
val schemaOnlyModel = Await.result(
- dc.db.run(
- SchemaParser.createModel(dc.driver,
- Some(Map(schemaName -> tables)))),
+ dc.db.run(ModelTransformation
+ .createModel(dc.driver, Some(Map(schemaName -> tables)))),
Duration.Inf)
val rowGenerator = new RowSourceCodeGenerator(
diff --git a/src/main/scala/SchemaParser.scala b/src/main/scala/SchemaParser.scala
index b86990f..6c3dd8c 100644
--- a/src/main/scala/SchemaParser.scala
+++ b/src/main/scala/SchemaParser.scala
@@ -7,7 +7,7 @@ import slick.profile.RelationalProfile.ColumnOption.Length
import slick.profile.SqlProfile.ColumnOption.SqlType
import slick.{model => m}
-object SchemaParser {
+object ModelTransformation {
def citextNoLength(dbModel: m.Model): m.Model =
dbModel.copy(tables = dbModel.tables.map(table =>
@@ -39,7 +39,8 @@ object SchemaParser {
}
}
- def parse(schemaTableNames: List[String]): Map[String, List[String]] =
+ def parseSchemaList(
+ schemaTableNames: List[String]): Map[String, List[String]] =
schemaTableNames
.map(_.split('.'))
.groupBy(_.head)
diff --git a/src/main/scala/TypedIdTable.scala b/src/main/scala/TypedIdTable.scala
index 2e58cd5..a0f3b57 100644
--- a/src/main/scala/TypedIdTable.scala
+++ b/src/main/scala/TypedIdTable.scala
@@ -8,7 +8,7 @@ class TypedIdSourceCodeGenerator(
manualForeignKeys: Map[(String, String), (String, String)]
) extends SourceCodeGenerator(singleSchemaModel) {
val manualReferences =
- SchemaParser.references(databaseModel, manualForeignKeys)
+ ModelTransformation.references(databaseModel, manualForeignKeys)
val modelTypeToColumnMaper = Map(
"java.util.UUID" -> "uuidKeyMapper",