Author: simonetripodi
Date: Fri Feb 4 07:51:17 2011
New Revision: 1067105
URL: http://svn.apache.org/viewvc?rev=1067105&view=rev
Log:
setup for callMethod() paramTypes[] according to proper CallMethodRule
Modified:
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/RulesBinderImpl.java
Modified:
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/RulesBinderImpl.java
URL:
http://svn.apache.org/viewvc/commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/RulesBinderImpl.java?rev=1067105&r1=1067104&r2=1067105&view=diff
==============================================================================
---
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/RulesBinderImpl.java
(original)
+++
commons/sandbox/digester3/trunk/src/main/java/org/apache/commons/digester3/RulesBinderImpl.java
Fri Feb 4 07:51:17 2011
@@ -577,13 +577,28 @@ final class RulesBinderImpl implements R
private int targetOffset;
- private int paramCount;
+ private int paramCount = 0;
private Class<?>[] paramTypes;
- private boolean useExactMatch;
+ private boolean useExactMatch = false;
public CallMethodRule get() {
+ Class<?>[] paramTypes = null;
+
+ if (this.paramTypes == null) {
+ if (this.paramCount == 0) {
+ paramTypes = new Class<?>[] { String.class };
+ } else {
+ paramTypes = new Class<?>[this.paramCount];
+ for (int i = 0; i < paramTypes.length; i++) {
+ paramTypes[i] = String.class;
+ }
+ }
+ } else {
+ paramTypes = this.paramTypes;
+ }
+
return setNamespaceAndReturn(
new CallMethodRule(targetOffset, methodName,
paramCount, paramTypes, useExactMatch));
}