diff --git a/src/main/java/com/mysema/codegen/JavaWriter.java b/src/main/java/com/mysema/codegen/JavaWriter.java index 71d105b21..dfcafdb60 100644 --- a/src/main/java/com/mysema/codegen/JavaWriter.java +++ b/src/main/java/com/mysema/codegen/JavaWriter.java @@ -185,7 +185,7 @@ public final class JavaWriter extends AbstractCodeWriter{ @Override public JavaWriter beginClass(Type type, Type superClass, Type... interfaces) throws IOException{ packages.add(type.getPackageName()); - beginLine(PUBLIC_CLASS + type.getSimpleName()); + beginLine(PUBLIC_CLASS + type.getGenericName(false, packages, classes)); if (superClass != null){ append(EXTENDS + superClass.getGenericName(false, packages, classes)); } diff --git a/src/main/java/com/mysema/codegen/ScalaWriter.java b/src/main/java/com/mysema/codegen/ScalaWriter.java index 2ee24c667..e62ea35aa 100644 --- a/src/main/java/com/mysema/codegen/ScalaWriter.java +++ b/src/main/java/com/mysema/codegen/ScalaWriter.java @@ -200,7 +200,7 @@ public class ScalaWriter extends AbstractCodeWriter{ @Override public ScalaWriter beginClass(Type type, Type superClass, Type... interfaces) throws IOException { packages.add(type.getPackageName()); - beginLine(PUBLIC_CLASS, type.getSimpleName()); + beginLine(PUBLIC_CLASS, getGenericName(false, type)); if (superClass != null){ append(EXTENDS + getGenericName(false, superClass)); } diff --git a/src/test/java/com/mysema/codegen/InnerClassesTest.java b/src/test/java/com/mysema/codegen/InnerClassesTest.java new file mode 100644 index 000000000..502d1f298 --- /dev/null +++ b/src/test/java/com/mysema/codegen/InnerClassesTest.java @@ -0,0 +1,31 @@ +package com.mysema.codegen; + +import java.io.IOException; +import java.io.StringWriter; + +import org.junit.Test; + +import com.mysema.codegen.model.ClassType; +import com.mysema.codegen.model.SimpleType; +import com.mysema.codegen.model.Type; + +public class InnerClassesTest { + + public static class Entity { + + } + + @Test + public void DirectParameter() throws IOException { + Type entityType = new ClassType(Entity.class); + Type type = new SimpleType("com.mysema.codegen.gen.QEntity", "com.mysema.codegen.gen", "QEntity", entityType); + + StringWriter str = new StringWriter(); + JavaWriter writer = new JavaWriter(str); + writer.beginClass(type); + writer.end(); + + System.err.println(str.toString()); + } + +}