aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStewart Stewart <stewinsalot@gmail.com>2017-02-15 15:27:27 -0800
committerStewart Stewart <stewinsalot@gmail.com>2017-02-15 15:27:27 -0800
commit79a89bc5c8142ce7eba24acd6582dc7f7049b2a6 (patch)
tree72b0e56fb625c7b2b8cc0bcf9af3ba8f6d035b79 /src
parent3e52c71c1b099c16e9005c95afa3e3870711cb97 (diff)
downloadslick-codegen-plugin-79a89bc5c8142ce7eba24acd6582dc7f7049b2a6.tar.gz
slick-codegen-plugin-79a89bc5c8142ce7eba24acd6582dc7f7049b2a6.tar.bz2
slick-codegen-plugin-79a89bc5c8142ce7eba24acd6582dc7f7049b2a6.zip
remove needless baseClass parameter
Diffstat (limited to 'src')
-rw-r--r--src/main/scala/CodegenPlugin.scala15
-rw-r--r--src/main/scala/NamespacedCodegen.scala25
2 files changed, 19 insertions, 21 deletions
diff --git a/src/main/scala/CodegenPlugin.scala b/src/main/scala/CodegenPlugin.scala
index 55d4089..0c8020f 100644
--- a/src/main/scala/CodegenPlugin.scala
+++ b/src/main/scala/CodegenPlugin.scala
@@ -67,13 +67,14 @@ object CodegenPlugin extends AutoPlugin {
config.outputPackage,
Some(config.schemaWhitelist).filter(_.nonEmpty),
config.outputPath,
- config.foreignKeys,
- (if (codegenIdType.value.isEmpty)
- codegenSchemaBaseClassParts.value :+ "DefaultIdTypeMapper"
- else
- codegenSchemaBaseClassParts.value) match {
- case Nil => "AnyRef"
- case parts => parts.mkString(" with ")
+ config.foreignKeys, {
+ val parts =
+ (if (codegenIdType.value.isEmpty)
+ codegenSchemaBaseClassParts.value :+ "DefaultIdTypeMapper"
+ else
+ codegenSchemaBaseClassParts.value)
+
+ Some(parts).filter(_.nonEmpty).map(_.mkString(" with "))
},
codegenIdType.value,
codegenSchemaImports.value,
diff --git a/src/main/scala/NamespacedCodegen.scala b/src/main/scala/NamespacedCodegen.scala
index 5487b41..52b4c62 100644
--- a/src/main/scala/NamespacedCodegen.scala
+++ b/src/main/scala/NamespacedCodegen.scala
@@ -23,7 +23,7 @@ object Generator {
schemaNames: Option[List[String]],
outputPath: String,
manualForeignKeys: Map[(String, String), (String, String)],
- schemaBaseClass: String, // TODO: Keep it optional?
+ parentType: Option[String],
idType: Option[String],
schemaImports: List[String],
typeReplacements: Map[String, String]) = {
@@ -49,21 +49,19 @@ object Generator {
Some(Map(schemaName -> tables)))),
Duration.Inf)
- val generator = new Generator(
- pkg, // still necessary
- dbModel,
- schemaName, // still necessary?
- schemaOnlyModel,
- manualForeignKeys,
- schemaBaseClass, //still necessary if we use parentType below?
- idType,
- schemaImports,
- typeReplacements)
+ val generator = new Generator(pkg, // still necessary
+ dbModel,
+ schemaName, // still necessary?
+ schemaOnlyModel,
+ manualForeignKeys,
+ idType,
+ schemaImports,
+ typeReplacements)
generator.writeStringToFile(content = generator.packageCode(
profile = profile,
pkg = pkg,
container = schemaName,
- parentType = Some(schemaBaseClass)),
+ parentType = parentType),
folder = outputPath,
pkg = pkg,
fileName = s"${schemaName}.scala")
@@ -94,7 +92,6 @@ class Generator(pkg: String,
schemaName: String,
schemaOnlyModel: Model,
manualForeignKeys: Map[(String, String), (String, String)],
- schemaBaseClass: String,
idType: Option[String],
schemaImports: List[String],
typeReplacements: Map[String, String])
@@ -121,7 +118,7 @@ class Generator(pkg: String,
|$allImports
|object ${container} extends {
| val profile = $profile
- |} with $schemaBaseClass {
+ |} with ${parentType.getOrElse("AnyRef")} {
| import profile.api._
| ${code}
|}""".stripMargin