diff options
author | Stewart Stewart <stewinsalot@gmail.com> | 2016-11-18 18:53:06 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-18 18:53:06 -0500 |
commit | f0f7e46b9aa22545abaa777f79f0de7fb8ee7e9d (patch) | |
tree | 13ef35f56c9031d5aeda6e2d066f44956cb7e7b7 /src | |
parent | 69ccaf3dddf800735f693a097815a1e1a32cda44 (diff) | |
parent | 792f2401e29c728ce6730f54da15382bb567bd04 (diff) | |
download | slick-codegen-plugin-f0f7e46b9aa22545abaa777f79f0de7fb8ee7e9d.tar.gz slick-codegen-plugin-f0f7e46b9aa22545abaa777f79f0de7fb8ee7e9d.tar.bz2 slick-codegen-plugin-f0f7e46b9aa22545abaa777f79f0de7fb8ee7e9d.zip |
Merge pull request #10 from drivergroup/inject-into-project-settings
Auto inject task and default settings
Diffstat (limited to 'src')
-rw-r--r-- | src/main/scala/CodegenPlugin.scala | 40 |
1 files changed, 23 insertions, 17 deletions
diff --git a/src/main/scala/CodegenPlugin.scala b/src/main/scala/CodegenPlugin.scala index 8bde45d..d74eda7 100644 --- a/src/main/scala/CodegenPlugin.scala +++ b/src/main/scala/CodegenPlugin.scala @@ -7,28 +7,34 @@ object CodegenPlugin extends AutoPlugin { type TableColumn = (String, String) object autoImport { - lazy val codegen = TaskKey[Unit]("gen-tables", "generate slick database schema") - lazy val codegenURI = SettingKey[String]("codegen-uri", "uri for the database configuration") lazy val codegenPackage = SettingKey[String]("codegen-package", "package in which to place generated code") lazy val codegenOutputPath = SettingKey[String]("codegen-output-path", "directory to with the generated code will be written") lazy val codegenSchemaWhitelist = SettingKey[List[String]]("codegen-schema-whitelist", "schemas and tables to process") lazy val codegenForeignKeys = SettingKey[Map[TableColumn, TableColumn]]("codegen-foreign-keys", "foreign key references to data models add manually") - lazy val slickCodeGenTask = Def.task { - Generator.run( - new java.net.URI(codegenURI.value), - codegenPackage.value, - Some(codegenSchemaWhitelist.value).filter(_.nonEmpty), - codegenOutputPath.value, - codegenForeignKeys.value - ) - } - - lazy val baseCodegenSettings: Seq[Def.Setting[_]] = Seq( - codegen := slickCodeGenTask.value, - codegenSchemaWhitelist := List.empty, - codegenForeignKeys := Map.empty - ) + lazy val slickCodeGenTask = TaskKey[Unit]("gen-tables", "generate the table definitions") + } + + import autoImport._ + + override lazy val projectSettings = Seq( + codegenSchemaWhitelist := List.empty, + codegenForeignKeys := Map.empty, + slickCodeGenTask := Def.taskDyn { + Def.task { + Generator.run( + new java.net.URI(codegenURI.value), + codegenPackage.value, + Some(codegenSchemaWhitelist.value).filter(_.nonEmpty), + codegenOutputPath.value, + codegenForeignKeys.value + ) + } + }.value + + ) + + } |