diff options
author | Stewart Stewart <stewinsalot@gmail.com> | 2017-02-24 10:24:48 -0500 |
---|---|---|
committer | Stewart Stewart <stewinsalot@gmail.com> | 2017-02-24 10:25:53 -0500 |
commit | e3023da0727520129d744607a0c60979b5f21fc1 (patch) | |
tree | b1b9814b00114d6970d1d5a61f5181c8db9dbe21 /src/main/scala/NamespacedCodegen.scala | |
parent | d628c535f658cc8af9b9f280b5222eb3364e8c30 (diff) | |
download | slick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.tar.gz slick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.tar.bz2 slick-codegen-plugin-e3023da0727520129d744607a0c60979b5f21fc1.zip |
clean up main file
Diffstat (limited to 'src/main/scala/NamespacedCodegen.scala')
-rw-r--r-- | src/main/scala/NamespacedCodegen.scala | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/src/main/scala/NamespacedCodegen.scala b/src/main/scala/NamespacedCodegen.scala deleted file mode 100644 index 7ae4ac0..0000000 --- a/src/main/scala/NamespacedCodegen.scala +++ /dev/null @@ -1,100 +0,0 @@ -import java.net.URI -import java.nio.file.Paths - -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.driver.JdbcProfile -import slick.{model => sModel} -import slick.model.{Column, Model, Table, QualifiedName} - -object Generator { - - 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, - folder: String, - pkg: String, - fileName = s"${camelSchemaName}Tables.scala") - rowGen.writeRowsToFile(folder: String, - pkg: String, - fileName = s"${camelSchemaName}Rows.scala") - } - - def run(uri: URI, - pkg: String, - schemaNames: Option[List[String]], - outputPath: String, - manualForeignKeys: Map[(String, String), (String, String)], - parentType: Option[String], - idType: Option[String], - header: String, - schemaImports: List[String], - typeReplacements: Map[String, String]) = { - val dc: DatabaseConfig[JdbcProfile] = - DatabaseConfig.forURI[JdbcProfile](uri) - val parsedSchemasOpt: Option[Map[String, List[String]]] = - schemaNames.map(SchemaParser.parse) - val imports = schemaImports.map("import " + _).mkString("\n") - - try { - val dbModel: Model = Await.result( - dc.db.run(SchemaParser.createModel(dc.driver, parsedSchemasOpt)), - Duration.Inf) - - parsedSchemasOpt.getOrElse(Map.empty).foreach { - case (schemaName, tables) => - val profile = - s"""slick.backend.DatabaseConfig.forConfig[slick.driver.JdbcProfile]("${uri - .getFragment()}").driver""" - - val schemaOnlyModel = Await.result( - dc.db.run( - SchemaParser.createModel(dc.driver, - Some(Map(schemaName -> tables)))), - Duration.Inf) - - val rowGenerator = new RowSourceCodeGenerator( - schemaOnlyModel, - headerComment = header, - imports = imports, - schemaName = schemaName, - dbModel, - idType, - manualForeignKeys, - 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) - } - } finally { - dc.db.close() - } - } -} |