mirror of
https://github.com/querydsl/querydsl.git
synced 2026-07-03 21:07:49 +08:00
fixed array handling
updated version to 0.2.9
This commit is contained in:
parent
549ca2fe00
commit
518ef2d45f
2
pom.xml
2
pom.xml
@ -4,7 +4,7 @@
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>com.mysema.codegen</groupId>
|
||||
<artifactId>codegen</artifactId>
|
||||
<version>0.2.8-SNAPSHOT</version>
|
||||
<version>0.2.9</version>
|
||||
<name>Codegen</name>
|
||||
<description>Code generation and compilation for Java</description>
|
||||
<parent>
|
||||
|
||||
@ -145,11 +145,7 @@ public class ClassType implements Type {
|
||||
|
||||
@Override
|
||||
public String getPackageName() {
|
||||
if (javaClass.getPackage() != null){
|
||||
return javaClass.getPackage().getName();
|
||||
}else{
|
||||
return "";
|
||||
}
|
||||
return ClassUtils.getPackageName(javaClass);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -30,6 +30,16 @@ public final class ClassUtils {
|
||||
}
|
||||
}
|
||||
|
||||
public static String getPackageName(Class<?> cl){
|
||||
if (cl.isArray()){
|
||||
return getPackageName(cl.getComponentType());
|
||||
}else if (cl.getPackage() != null){
|
||||
return cl.getPackage().getName();
|
||||
}else{
|
||||
return "";
|
||||
}
|
||||
}
|
||||
|
||||
public static String getName(Class<?> cl, Set<String> packages, Set<String> classes) {
|
||||
if (cl.isArray()) {
|
||||
return getName(cl.getComponentType(), packages, classes) + "[]";
|
||||
|
||||
@ -19,6 +19,7 @@ import com.mysema.codegen.model.ClassType;
|
||||
import com.mysema.codegen.model.Parameter;
|
||||
import com.mysema.codegen.model.SimpleType;
|
||||
import com.mysema.codegen.model.Type;
|
||||
import com.mysema.codegen.model.TypeCategory;
|
||||
import com.mysema.codegen.model.Types;
|
||||
|
||||
public class ScalaWriterTest {
|
||||
@ -85,11 +86,15 @@ public class ScalaWriterTest {
|
||||
writer.beginPublicMethod(Types.VOID, "main", new Parameter("args",Types.STRING.asArrayType()));
|
||||
writer.line("//");
|
||||
writer.end();
|
||||
writer.beginPublicMethod(Types.VOID, "main2", new Parameter("args",new ClassType(TypeCategory.ARRAY,String[].class)));
|
||||
writer.line("//");
|
||||
writer.end();
|
||||
writer.end();
|
||||
|
||||
System.out.println(w);
|
||||
assertTrue(w.toString().contains("var stringArray: Array[String];"));
|
||||
assertTrue(w.toString().contains("def main(args: Array[String])"));
|
||||
assertTrue(w.toString().contains("def main2(args: Array[String])"));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@ -23,6 +23,12 @@ public class ClassTypeTest {
|
||||
// assertEquals(stringType, stringType.asArrayType().getParameter(0));
|
||||
// }
|
||||
|
||||
@Test
|
||||
public void ArrayType(){
|
||||
Type type = new ClassType(TypeCategory.ARRAY,String[].class);
|
||||
assertEquals("java.lang", type.getPackageName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void As(){
|
||||
assertEquals(TypeCategory.COMPARABLE, stringType.as(TypeCategory.COMPARABLE).getCategory());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user