You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2011/04/06 21:10:54 UTC
svn commit: r1089578 - in /tapestry/tapestry5/trunk/plastic/src:
main/java/org/apache/tapestry5/internal/plastic/
main/java/org/apache/tapestry5/plastic/
test/groovy/org/apache/tapestry5/plastic/ test/java/testsubjects/
Author: hlship
Date: Wed Apr 6 19:10:54 2011
New Revision: 1089578
URL: http://svn.apache.org/viewvc?rev=1089578&view=rev
Log:
TAP5-853: Add MethodInvocation.getParameterCount()
Modified:
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/AbstractMethodInvocation.java
tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/MethodInvocation.java
tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy
tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/ObtainPlasticClass.groovy
tapestry/tapestry5/trunk/plastic/src/test/java/testsubjects/SingleMethod.java
Modified: tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/AbstractMethodInvocation.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/AbstractMethodInvocation.java?rev=1089578&r1=1089577&r2=1089578&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/AbstractMethodInvocation.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/internal/plastic/AbstractMethodInvocation.java Wed Apr 6 19:10:54 2011
@@ -89,5 +89,10 @@ public abstract class AbstractMethodInvo
return bundle.methodDescription.methodName;
}
+ public int getParameterCount()
+ {
+ return bundle.methodDescription.argumentTypes.length;
+ }
+
protected abstract void proceedToAdvisedMethod();
}
Modified: tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/MethodInvocation.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/MethodInvocation.java?rev=1089578&r1=1089577&r2=1089578&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/MethodInvocation.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/main/java/org/apache/tapestry5/plastic/MethodInvocation.java Wed Apr 6 19:10:54 2011
@@ -79,4 +79,7 @@ public interface MethodInvocation extend
/** Returns the name of the advised method. */
String getMethodName();
+
+ /** Returns the number of parameters passed to the advised method. */
+ int getParameterCount();
}
Modified: tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy?rev=1089578&r1=1089577&r2=1089578&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy (original)
+++ tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/MethodAdviceTests.groovy Wed Apr 6 19:10:54 2011
@@ -16,6 +16,9 @@ class MethodAdviceTests extends Abstract
didInvoke = true
assert it.methodName == "aSingleMethod"
+ assert it.parameterCount == 1
+
+ assert it.getParameter(0) == 123
it.proceed()
} as MethodAdvice)
@@ -31,7 +34,7 @@ class MethodAdviceTests extends Abstract
when:
- o.aSingleMethod()
+ o.aSingleMethod(123)
then:
Modified: tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/ObtainPlasticClass.groovy
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/ObtainPlasticClass.groovy?rev=1089578&r1=1089577&r2=1089578&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/ObtainPlasticClass.groovy (original)
+++ tapestry/tapestry5/trunk/plastic/src/test/groovy/org/apache/tapestry5/plastic/ObtainPlasticClass.groovy Wed Apr 6 19:10:54 2011
@@ -43,7 +43,7 @@ class ObtainPlasticClass extends Specifi
expect:
methods.size() == 1
- methods.first().description.toString() == "public void aSingleMethod()"
+ methods.first().description.toString() == "public void aSingleMethod(int)"
}
def "static methods are ignored"() {
Modified: tapestry/tapestry5/trunk/plastic/src/test/java/testsubjects/SingleMethod.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/plastic/src/test/java/testsubjects/SingleMethod.java?rev=1089578&r1=1089577&r2=1089578&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/plastic/src/test/java/testsubjects/SingleMethod.java (original)
+++ tapestry/tapestry5/trunk/plastic/src/test/java/testsubjects/SingleMethod.java Wed Apr 6 19:10:54 2011
@@ -16,7 +16,7 @@ package testsubjects;
public class SingleMethod
{
- public void aSingleMethod()
+ public void aSingleMethod(int value)
{
}
}