aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.sbt14
-rw-r--r--src/main/scala/CodegenPlugin.scala76
2 files changed, 54 insertions, 36 deletions
diff --git a/build.sbt b/build.sbt
index f583d50..b4e1cd9 100644
--- a/build.sbt
+++ b/build.sbt
@@ -1,12 +1,18 @@
-// sbtPlugin := true
+sbtPlugin := true
-val scalaVersionValue = "2.11.8"
+organization := "com.drivergrp"
+
+name := "slick-codegen-plugin"
+
+version := "0.1"
+
+val scalaVersionValue = "2.10.6"
scalaVersion := scalaVersionValue
libraryDependencies ++= Seq(
"com.typesafe.slick" %% "slick" % "3.1.1",
"com.typesafe.slick" %% "slick-codegen" % "3.1.1",
- "org.scala-lang" % "scala-reflect" % scalaVersionValue,
- "org.postgresql" % "postgresql" % "9.3-1102-jdbc41"
+ "org.postgresql" % "postgresql" % "9.3-1102-jdbc41",
+ "org.scala-lang" % "scala-reflect" % scalaVersionValue
)
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))
+ }
}
}
-*/