- Revision
- 1360
- Author
- rfscholte
- Date
- 2011-10-02 15:42:47 -0500 (Sun, 02 Oct 2011)
Log Message
DefaultJavaClass changed to DefaultJavaClass<T extends JavaClass & JavaParameterizedType> so we can easily use T for the superclass and implementz
Modified Paths
- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaClass.java
- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/JavaClass.java
- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/Type.java
- trunk/qdox/src/main/java/com/thoughtworks/qdox/writer/DefaultModelWriter.java
- trunk/qdox/src/test/java/com/thoughtworks/qdox/JSR14Test.java
- trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java
Diff
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaClass.java (1359 => 1360)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaClass.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaClass.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -33,7 +33,7 @@ * @author <a href="" Walnes</a> * @author Aslak Hellesøy */ -public class DefaultJavaClass extends AbstractInheritableJavaEntity implements JavaClass { +public class DefaultJavaClass<T extends JavaClass & JavaParameterizedType> extends AbstractInheritableJavaEntity implements JavaClass { private List<JavaConstructor> constructors = new LinkedList<JavaConstructor>(); private List<JavaMethod> methods = new LinkedList<JavaMethod>(); @@ -43,8 +43,8 @@ private boolean anEnum; private boolean anAnnotation; - private Type superClass; - private List<Type> implementz = new LinkedList<Type>(); + private T superClass; + private List<T> implementz = new LinkedList<T>(); private List<TypeVariable<JavaClass>> typeParameters = new LinkedList<TypeVariable<JavaClass>>(); //sourceless class can use this property @@ -115,7 +115,7 @@ /* (non-Javadoc) * @see com.thoughtworks.qdox.model.JavaClass#getSuperClass() */ - public Type getSuperClass() { + public JavaType getSuperClass() { Type OBJECT_TYPE = getJavaClassLibrary().getJavaClass( "java.lang.Object" ).asType(); Type ENUM_TYPE = getJavaClassLibrary().getJavaClass( "java.lang.Enum" ).asType(); @@ -127,7 +127,7 @@ return OBJECT_TYPE; } - return superClass; + return (JavaType) superClass; } /** @@ -158,8 +158,8 @@ /* (non-Javadoc) * @see com.thoughtworks.qdox.model.JavaClass#getImplements() */ - public List<Type> getImplements() { - return implementz; + public List<JavaType> getImplements() { + return new LinkedList<JavaType>( implementz ); } @@ -210,7 +210,7 @@ methods.add(meth); } - public void setSuperClass(Type type) { + public void setSuperClass(T type) { if (anEnum) { throw new IllegalArgumentException("enums cannot extend other classes"); @@ -218,7 +218,7 @@ superClass = type; } - public void setImplementz(List<Type> implementz) { + public void setImplementz(List<T> implementz) { this.implementz = implementz; }
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/JavaClass.java (1359 => 1360)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/JavaClass.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/JavaClass.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -71,7 +71,7 @@ */ JavaClass getSuperJavaClass(); - List<Type> getImplements(); + List<JavaType> getImplements(); /** * @since 1.3
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/Type.java (1359 => 1360)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/Type.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/Type.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -449,7 +449,7 @@ } else { - for ( Type implement : callingClass.getImplements() ) + for ( JavaClass implement : callingClass.getInterfaces() ) { if ( fqn.equals( implement.getFullyQualifiedName() ) ) { @@ -698,7 +698,7 @@ * (non-Javadoc) * @see com.thoughtworks.qdox.model.JavaClass#getImplements() */ - public List<Type> getImplements() + public List<JavaType> getImplements() { return resolveRealClass().getImplements(); }
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/writer/DefaultModelWriter.java (1359 => 1360)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/writer/DefaultModelWriter.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/writer/DefaultModelWriter.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -34,6 +34,7 @@ import com.thoughtworks.qdox.model.JavaPackage; import com.thoughtworks.qdox.model.JavaParameter; import com.thoughtworks.qdox.model.JavaSource; +import com.thoughtworks.qdox.model.JavaType; import com.thoughtworks.qdox.model.Type; import com.thoughtworks.qdox.model._expression_.AnnotationValue; @@ -126,7 +127,7 @@ { buffer.write( cls.isInterface() ? " extends " : " implements " ); - for ( ListIterator<Type> iter = cls.getImplements().listIterator(); iter.hasNext(); ) + for ( ListIterator<JavaType> iter = cls.getImplements().listIterator(); iter.hasNext(); ) { buffer.write( iter.next().getCanonicalName() ); if ( iter.hasNext() )
Modified: trunk/qdox/src/test/java/com/thoughtworks/qdox/JSR14Test.java (1359 => 1360)
--- trunk/qdox/src/test/java/com/thoughtworks/qdox/JSR14Test.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/test/java/com/thoughtworks/qdox/JSR14Test.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -309,7 +309,7 @@ String source = "public class Something implements java.util.List<String> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List", implementsClass.getFullyQualifiedName()); assertEquals("java.util.List<java.lang.String>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.List", implementsClass.getValue()); @@ -320,7 +320,7 @@ String source = "public class Something implements java.util.Map<String, Object> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.Map", implementsClass.getFullyQualifiedName()); assertEquals("java.util.Map<java.lang.String,java.lang.Object>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.Map", implementsClass.getValue()); @@ -331,7 +331,7 @@ String source = "public class Something implements java.util.List<?>{}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List<?>", implementsClass.getGenericValue()); } @@ -339,7 +339,7 @@ String source = "public class Something implements java.util.List<? extends Number> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List", implementsClass.getFullyQualifiedName()); assertEquals("java.util.List<? extends java.lang.Number>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.List", implementsClass.getValue()); @@ -350,7 +350,7 @@ String source = "public class Something implements java.util.List<? super Integer> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List", implementsClass.getFullyQualifiedName()); assertEquals("java.util.List<? super java.lang.Integer>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.List", implementsClass.getValue()); @@ -361,7 +361,7 @@ String source = "public class Something implements java.util.List<java.util.Set<String>> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List", implementsClass.getFullyQualifiedName()); assertEquals("java.util.List<java.util.Set<java.lang.String>>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.List", implementsClass.getValue()); @@ -372,7 +372,7 @@ String source = "public class Something implements java.util.List<java.util.Set<String>> {}"; JavaSource javaSource = builder.addSource(new StringReader(source)); JavaClass javaClass = javaSource.getClasses().get(0); - Type implementsClass = javaClass.getImplements().get(0); + JavaType implementsClass = javaClass.getImplements().get(0); assertEquals("java.util.List", implementsClass.getFullyQualifiedName()); assertEquals("java.util.List<java.util.Set<java.lang.String>>", implementsClass.getGenericFullyQualifiedName()); assertEquals("java.util.List", implementsClass.getValue());
Modified: trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java (1359 => 1360)
--- trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java 2011-10-02 20:28:53 UTC (rev 1359) +++ trunk/qdox/src/test/java/com/thoughtworks/qdox/JavaProjectBuilderTest.java 2011-10-02 20:42:47 UTC (rev 1360) @@ -32,6 +32,7 @@ import com.thoughtworks.qdox.model.JavaMethod; import com.thoughtworks.qdox.model.JavaPackage; import com.thoughtworks.qdox.model.JavaSource; +import com.thoughtworks.qdox.model.JavaType; import com.thoughtworks.qdox.model.Type; import com.thoughtworks.qdox.model.util.SerializationUtils; import com.thoughtworks.qdox.parser.ParseException; @@ -316,7 +317,7 @@ assertEquals("java.util.ArrayList", returnClass.getFullyQualifiedName()); boolean foundList = false; - for (Type type : returnClass.getImplements()) { + for (JavaType type : returnClass.getImplements()) { if (type.getValue().equals("java.util.List")) { foundList = true; }
To unsubscribe from this list please visit:
