- Revision
- 1393
- Author
- rfscholte
- Date
- 2011-10-09 14:39:42 -0500 (Sun, 09 Oct 2011)
Log Message
Move AbstractBaseMethod to separate package
Modified Paths
- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaConstructor.java
- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaMethod.java
- trunk/qdox/src/test/java/com/thoughtworks/qdox/traversal/TraversalTest.java
Added Paths
Removed Paths
Diff
Deleted: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/AbstractBaseMethod.java (1392 => 1393)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/AbstractBaseMethod.java 2011-10-09 19:38:18 UTC (rev 1392) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/AbstractBaseMethod.java 2011-10-09 19:39:42 UTC (rev 1393) @@ -1,142 +0,0 @@ -package com.thoughtworks.qdox.model; - -import java.util.Collections; -import java.util.LinkedList; -import java.util.List; - -/** - * The BaseMethod contains all methods used by both JavaMethod and JavaConstructor - * - * @author Robert Scholte - * - */ -public abstract class AbstractBaseMethod<T extends JavaClass & JavaParameterizedType> - extends AbstractInheritableJavaEntity -{ - - private List<JavaParameter> parameters = Collections.emptyList(); - private List<T> exceptions = Collections.emptyList(); - private boolean varArgs; - private String sourceCode; - - public List<JavaParameter> getParameters() - { - return parameters; - } - - public JavaParameter getParameterByName( String name ) - { - for (JavaParameter parameter : getParameters()) { - if (parameter.getName().equals(name)) { - return parameter; - } - } - return null; - } - - public List<JavaClass> getExceptions() - { - return new LinkedList<JavaClass>( exceptions ); - } - - public List<JavaType> getExceptionTypes() - { - return new LinkedList<JavaType>( exceptions ); - } - - public boolean isVarArgs() - { - return varArgs; - } - - public JavaClass getDeclaringClass() - { - return getParentClass(); - } - - public void setParameters( List<JavaParameter> javaParameters ) - { - parameters = javaParameters; - this.varArgs = javaParameters.get( javaParameters.size() -1 ).isVarArgs(); - } - - public void setExceptions( List<T> exceptions ) - { - this.exceptions = exceptions; - } - - protected boolean signatureMatches( List<JavaType> parameterTypes, boolean varArgs ) - { - List<JavaType> parameterTypeList; - if( parameterTypes == null) { - parameterTypeList = Collections.emptyList(); - } - else { - parameterTypeList = parameterTypes; - } - - if (parameterTypeList.size() != this.getParameters().size()) - { - return false; - } - - for (int i = 0; i < getParameters().size(); i++) - { - if (!getParameters().get(i).getType().equals(parameterTypes.get(i))) { - return false; - } - } - return (this.varArgs == varArgs); - } - - public boolean isPublic() - { - return super.isPublic() || (getParentClass() != null ? getParentClass().isInterface() : false); - } - - public List<DocletTag> getTagsByName( String name, boolean inherited ) - { - JavaClass cls = getParentClass(); - List<JavaType> types = new LinkedList<JavaType>(); - for (JavaParameter parameter : getParameters()) { - types.add(parameter.getType()); - } - List<JavaMethod> methods = cls.getMethodsBySignature(getName(), types, true); - - List<DocletTag> result = new LinkedList<DocletTag>(); - for (JavaMethod method : methods) { - List<DocletTag> tags = method.getTagsByName(name); - for (DocletTag tag : tags) { - if(!result.contains(tag)) { - result.add(tag); - } - } - } - return result; - } - - public List<JavaType> getParameterTypes() - { - return getParameterTypes( false ); - } - - public List<JavaType> getParameterTypes( boolean resolve ) - { - List<JavaType> result = new LinkedList<JavaType>(); - for (JavaParameter parameter : this.getParameters()) { - result.add( parameter.getType() ); - } - return result; - } - - public String getSourceCode() - { - return sourceCode; - } - - public void setSourceCode( String sourceCode ) - { - this.sourceCode = sourceCode; - } - -} \ No newline at end of file
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaConstructor.java (1392 => 1393)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaConstructor.java 2011-10-09 19:38:18 UTC (rev 1392) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaConstructor.java 2011-10-09 19:39:42 UTC (rev 1393) @@ -4,6 +4,8 @@ import java.util.Iterator; import java.util.List; +import com.thoughtworks.qdox.model.impl.AbstractBaseMethod; + /** * * @author Robert
Modified: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaMethod.java (1392 => 1393)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaMethod.java 2011-10-09 19:38:18 UTC (rev 1392) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/DefaultJavaMethod.java 2011-10-09 19:39:42 UTC (rev 1393) @@ -25,6 +25,8 @@ import java.util.List; import java.util.ListIterator; +import com.thoughtworks.qdox.model.impl.AbstractBaseMethod; + public class DefaultJavaMethod<T extends JavaClass & JavaParameterizedType> extends AbstractBaseMethod<T> implements JavaMethod { private T returns = (T) Type.VOID;
Copied: trunk/qdox/src/main/java/com/thoughtworks/qdox/model/impl/AbstractBaseMethod.java (from rev 1363, trunk/qdox/src/main/java/com/thoughtworks/qdox/model/AbstractBaseMethod.java) (0 => 1393)
--- trunk/qdox/src/main/java/com/thoughtworks/qdox/model/impl/AbstractBaseMethod.java (rev 0) +++ trunk/qdox/src/main/java/com/thoughtworks/qdox/model/impl/AbstractBaseMethod.java 2011-10-09 19:39:42 UTC (rev 1393) @@ -0,0 +1,150 @@ +package com.thoughtworks.qdox.model.impl; + +import java.util.Collections; +import java.util.LinkedList; +import java.util.List; + +import com.thoughtworks.qdox.model.AbstractInheritableJavaEntity; +import com.thoughtworks.qdox.model.DocletTag; +import com.thoughtworks.qdox.model.JavaClass; +import com.thoughtworks.qdox.model.JavaMethod; +import com.thoughtworks.qdox.model.JavaParameter; +import com.thoughtworks.qdox.model.JavaParameterizedType; +import com.thoughtworks.qdox.model.JavaType; + +/** + * The BaseMethod contains all methods used by both JavaMethod and JavaConstructor + * + * @author Robert Scholte + * + */ +public abstract class AbstractBaseMethod<T extends JavaClass & JavaParameterizedType> + extends AbstractInheritableJavaEntity +{ + + private List<JavaParameter> parameters = Collections.emptyList(); + private List<T> exceptions = Collections.emptyList(); + private boolean varArgs; + private String sourceCode; + + public List<JavaParameter> getParameters() + { + return parameters; + } + + public JavaParameter getParameterByName( String name ) + { + for (JavaParameter parameter : getParameters()) { + if (parameter.getName().equals(name)) { + return parameter; + } + } + return null; + } + + public List<JavaClass> getExceptions() + { + return new LinkedList<JavaClass>( exceptions ); + } + + public List<JavaType> getExceptionTypes() + { + return new LinkedList<JavaType>( exceptions ); + } + + public boolean isVarArgs() + { + return varArgs; + } + + public JavaClass getDeclaringClass() + { + return getParentClass(); + } + + public void setParameters( List<JavaParameter> javaParameters ) + { + parameters = javaParameters; + this.varArgs = javaParameters.get( javaParameters.size() -1 ).isVarArgs(); + } + + public void setExceptions( List<T> exceptions ) + { + this.exceptions = exceptions; + } + + protected boolean signatureMatches( List<JavaType> parameterTypes, boolean varArgs ) + { + List<JavaType> parameterTypeList; + if( parameterTypes == null) { + parameterTypeList = Collections.emptyList(); + } + else { + parameterTypeList = parameterTypes; + } + + if (parameterTypeList.size() != this.getParameters().size()) + { + return false; + } + + for (int i = 0; i < getParameters().size(); i++) + { + if (!getParameters().get(i).getType().equals(parameterTypes.get(i))) { + return false; + } + } + return (this.varArgs == varArgs); + } + + public boolean isPublic() + { + return super.isPublic() || (getParentClass() != null ? getParentClass().isInterface() : false); + } + + public List<DocletTag> getTagsByName( String name, boolean inherited ) + { + JavaClass cls = getParentClass(); + List<JavaType> types = new LinkedList<JavaType>(); + for (JavaParameter parameter : getParameters()) { + types.add(parameter.getType()); + } + List<JavaMethod> methods = cls.getMethodsBySignature(getName(), types, true); + + List<DocletTag> result = new LinkedList<DocletTag>(); + for (JavaMethod method : methods) { + List<DocletTag> tags = method.getTagsByName(name); + for (DocletTag tag : tags) { + if(!result.contains(tag)) { + result.add(tag); + } + } + } + return result; + } + + public List<JavaType> getParameterTypes() + { + return getParameterTypes( false ); + } + + public List<JavaType> getParameterTypes( boolean resolve ) + { + List<JavaType> result = new LinkedList<JavaType>(); + for (JavaParameter parameter : this.getParameters()) { + result.add( parameter.getType() ); + } + return result; + } + + public String getSourceCode() + { + return sourceCode; + } + + public void setSourceCode( String sourceCode ) + { + this.sourceCode = sourceCode; + } + +} \ No newline at end of file
Modified: trunk/qdox/src/test/java/com/thoughtworks/qdox/traversal/TraversalTest.java (1392 => 1393)
--- trunk/qdox/src/test/java/com/thoughtworks/qdox/traversal/TraversalTest.java 2011-10-09 19:38:18 UTC (rev 1392) +++ trunk/qdox/src/test/java/com/thoughtworks/qdox/traversal/TraversalTest.java 2011-10-09 19:39:42 UTC (rev 1393) @@ -3,10 +3,9 @@ import junit.framework.TestCase; import com.thoughtworks.qdox.JavaProjectBuilder; -import com.thoughtworks.qdox.model.AbstractBaseMethod; -import com.thoughtworks.qdox.model.AbstractInheritableJavaEntity; import com.thoughtworks.qdox.model.DefaultJavaMethod; import com.thoughtworks.qdox.model.JavaClass; +import com.thoughtworks.qdox.model.impl.AbstractBaseMethod; public class TraversalTest extends TestCase {
To unsubscribe from this list please visit:
