From 7493e1af30936f40cf2868426c786a098c70ae7f Mon Sep 17 00:00:00 2001 From: jtsay362 Date: Sun, 20 Oct 2013 00:14:21 -0700 Subject: [PATCH] Fix Scala constructor to output "def this(...\)" instead of "public (...)" --- src/main/java/com/mysema/codegen/ScalaWriter.java | 6 ++++-- src/test/java/com/mysema/codegen/ScalaWriterTest.java | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/mysema/codegen/ScalaWriter.java b/src/main/java/com/mysema/codegen/ScalaWriter.java index db19791fd..52abc2c8c 100644 --- a/src/main/java/com/mysema/codegen/ScalaWriter.java +++ b/src/main/java/com/mysema/codegen/ScalaWriter.java @@ -74,6 +74,8 @@ public class ScalaWriter extends AbstractCodeWriter { private static final String VAL = "val "; + private static final String THIS = "this"; + private static final String TRAIT = "trait "; private final Set classes = new HashSet(); @@ -253,13 +255,13 @@ public class ScalaWriter extends AbstractCodeWriter { @Override public ScalaWriter beginConstructor(Collection parameters, Function transformer) throws IOException { - beginLine(PUBLIC + type.getSimpleName()).params(parameters, transformer).append(" {").nl(); + beginLine(DEF + THIS).params(parameters, transformer).append(" {").nl(); return goIn(); } @Override public ScalaWriter beginConstructor(Parameter... params) throws IOException { - beginLine(PUBLIC + type.getSimpleName()).params(params).append(" {").nl(); + beginLine(DEF + THIS).params(params).append(" {").nl(); return goIn(); } diff --git a/src/test/java/com/mysema/codegen/ScalaWriterTest.java b/src/test/java/com/mysema/codegen/ScalaWriterTest.java index ac326c475..5194c6232 100644 --- a/src/test/java/com/mysema/codegen/ScalaWriterTest.java +++ b/src/test/java/com/mysema/codegen/ScalaWriterTest.java @@ -377,7 +377,7 @@ public class ScalaWriterTest { System.out.println(w); - assertTrue(w.toString().contains("public JavaWriterTest(a: Int) {")); + assertTrue(w.toString().contains("def this(a: Int) {")); } @Test