diff options
author | Stewart Stewart <stewinsalot@gmail.com> | 2016-08-23 11:16:19 -0700 |
---|---|---|
committer | Stewart Stewart <stewinsalot@gmail.com> | 2016-08-23 11:40:01 -0700 |
commit | 47f22231c4b67aa450b5edeed08495a4457f3054 (patch) | |
tree | 4b4ed4791d652d061cc4a15475155c8998f87937 /src | |
parent | 29691456b69fb0e2f81f503530b315c5f9a0275e (diff) | |
download | slick-codegen-plugin-47f22231c4b67aa450b5edeed08495a4457f3054.tar.gz slick-codegen-plugin-47f22231c4b67aa450b5edeed08495a4457f3054.tar.bz2 slick-codegen-plugin-47f22231c4b67aa450b5edeed08495a4457f3054.zip |
turn codegen into publish-able plugin
Diffstat (limited to 'src')
-rw-r--r-- | src/main/scala/CodegenPlugin.scala | 76 |
1 files changed, 44 insertions, 32 deletions
diff --git a/src/main/scala/CodegenPlugin.scala b/src/main/scala/CodegenPlugin.scala index 36f92a3..a401632 100644 --- a/src/main/scala/CodegenPlugin.scala +++ b/src/main/scala/CodegenPlugin.scala @@ -1,39 +1,51 @@ -/* import sbt._ import sbt.Keys._ import complete.DefaultParsers._ object CodegenPlugin extends AutoPlugin { - lazy val slick = TaskKey[Seq[File]]("gen-tables") - lazy val slickCodeGenTask = (baseDirectory, //sourceManaged in Compile, - dependencyClasspath in Compile, - runner in Compile, streams) map { - (dir, cp, r, s) => - val url = "jdbc:postgresql://postgres/ctig" - val jdbcDriver = "org.postgresql.Driver" - val slickDriver = "slick.driver.PostgresDriver" - val pkg = "dbmodels" - val outputDir = (dir / "app" / pkg).getPath - val fname = outputDir + "/Tables.scala" - val typesfname = (file(sharedSrcDir) / "src" / "main" / "scala" / pkg / "rows" / "TableTypes.scala").getPath - val schemas = "patients,portal,work_queues,confidential,case_accessioning,samples.samples,samples.subsamples,samples.shipment_preps,samples.collection_methods,experiments.experiments,experiments.exp_types,experiments.somatic_snvs_indels_filtered,samples.basic_diagnosis,samples.molecular_tests,samples.sample_pathology,samples.path_molecular_tests" - val user = "ctig_portal" - val password = "coolnurseconspiracyhandbook" - toError(r.run( - "codegen.NamespacedCodegen", - cp.files, - Array( - slickDriver, - jdbcDriver, - url, - pkg, - schemas, - fname, - typesfname, - user, - password), - s.log)) - Seq(file(fname)) + object autoImport { + lazy val genTables = TaskKey[Seq[File]]("gen-tables") + lazy val slickCodeGenTask = (baseDirectory, //sourceManaged in Compile, + dependencyClasspath in Compile, + runner in Compile, streams) map { + (dir, cp, r, s) => + val url = "jdbc:postgresql://postgres/ctig" + val jdbcDriver = "org.postgresql.Driver" + val slickDriver = "slick.driver.PostgresDriver" + val pkg = "dbmodels" + val outputDir = (dir / "app" / pkg).getPath + val fname = outputDir + "/Tables.scala" + // TODO: typesfname should be a parameter + val typesfname = (file("shared") / "src" / "main" / "scala" / pkg / "rows" / "TableTypes.scala").getPath + val schemas = "patients,portal,work_queues,confidential,case_accessioning,samples.samples,samples.subsamples,samples.shipment_preps,samples.collection_methods,experiments.experiments,experiments.exp_types,experiments.somatic_snvs_indels_filtered,samples.basic_diagnosis,samples.molecular_tests,samples.sample_pathology,samples.path_molecular_tests" + val user = "ctig_portal" + val password = "coolnurseconspiracyhandbook" + codegen.NamespacedCodegen.main( + Array( + slickDriver, + jdbcDriver, + url, + pkg, + schemas, + fname, + typesfname, + user, + password)) + /*toError(r.run( + "codegen.NamespacedCodegen", + cp.files, + Array( + slickDriver, + jdbcDriver, + url, + pkg, + schemas, + fname, + typesfname, + user, + password), + s.log))*/ + Seq(file(fname)) + } } } -*/ |