craigmcc 01/08/20 09:10:13
Modified: digester/src/java/org/apache/commons/digester
CallMethodRule.java CallParamRule.java
FactoryCreateRule.java ObjectCreateRule.java
SetNextRule.java SetTopRule.java
Log:
Clean up finish() processing in Rule implementations such that a
preconfigured Digester can be used to parse more than one document.
Previously, we were clearing instance variables that were configured in
the rule constructors - now, only transient state information is cleared.
Submitted by: Matt Cleveland <[EMAIL PROTECTED]>
Revision Changes Path
1.5 +4 -7
jakarta-commons/digester/src/java/org/apache/commons/digester/CallMethodRule.java
Index: CallMethodRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallMethodRule.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- CallMethodRule.java 2001/08/04 22:26:37 1.4
+++ CallMethodRule.java 2001/08/20 16:10:13 1.5
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallMethodRule.java,v
1.4 2001/08/04 22:26:37 craigmcc Exp $
- * $Revision: 1.4 $
- * $Date: 2001/08/04 22:26:37 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallMethodRule.java,v
1.5 2001/08/20 16:10:13 craigmcc Exp $
+ * $Revision: 1.5 $
+ * $Date: 2001/08/20 16:10:13 $
*
* ====================================================================
*
@@ -77,7 +77,7 @@
*
* @author Craig McClanahan
* @author Scott Sanders
- * @version $Revision: 1.4 $ $Date: 2001/08/04 22:26:37 $
+ * @version $Revision: 1.5 $ $Date: 2001/08/20 16:10:13 $
*/
public class CallMethodRule extends Rule {
@@ -296,9 +296,6 @@
public void finish() throws Exception {
bodyText = null;
- methodName = null;
- paramCount = 0;
- paramTypes = null;
}
1.3 +4 -5
jakarta-commons/digester/src/java/org/apache/commons/digester/CallParamRule.java
Index: CallParamRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallParamRule.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- CallParamRule.java 2001/05/12 17:25:53 1.2
+++ CallParamRule.java 2001/08/20 16:10:13 1.3
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallParamRule.java,v
1.2 2001/05/12 17:25:53 sanders Exp $
- * $Revision: 1.2 $
- * $Date: 2001/05/12 17:25:53 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/CallParamRule.java,v
1.3 2001/08/20 16:10:13 craigmcc Exp $
+ * $Revision: 1.3 $
+ * $Date: 2001/08/20 16:10:13 $
*
* ====================================================================
*
@@ -73,7 +73,7 @@
* by a surrounding CallMethodRule rule.
*
* @author Craig McClanahan
- * @version $Revision: 1.2 $ $Date: 2001/05/12 17:25:53 $
+ * @version $Revision: 1.3 $ $Date: 2001/08/20 16:10:13 $
*/
public class CallParamRule extends Rule {
@@ -180,7 +180,6 @@
*/
public void finish() throws Exception {
- attributeName = null;
bodyText = null;
}
1.3 +3 -2
jakarta-commons/digester/src/java/org/apache/commons/digester/FactoryCreateRule.java
Index: FactoryCreateRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/FactoryCreateRule.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- FactoryCreateRule.java 2001/08/13 19:49:34 1.2
+++ FactoryCreateRule.java 2001/08/20 16:10:13 1.3
@@ -74,7 +74,7 @@
* in a call to either a factory method or to a non-empty constructor.
*
* @author Robert Burrell Donkin
- * @version $Revision: 1.2 $ $Date: 2001/08/13 19:49:34 $
+ * @version $Revision: 1.3 $ $Date: 2001/08/20 16:10:13 $
*/
public class FactoryCreateRule extends Rule {
@@ -194,7 +194,8 @@
*/
public void finish() throws Exception {
- creationFactory = null;
+ if (attributeName != null)
+ creationFactory = null;
}
1.5 +4 -15
jakarta-commons/digester/src/java/org/apache/commons/digester/ObjectCreateRule.java
Index: ObjectCreateRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/ObjectCreateRule.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ObjectCreateRule.java 2001/08/04 22:26:37 1.4
+++ ObjectCreateRule.java 2001/08/20 16:10:13 1.5
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/ObjectCreateRule.java,v
1.4 2001/08/04 22:26:37 craigmcc Exp $
- * $Revision: 1.4 $
- * $Date: 2001/08/04 22:26:37 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/ObjectCreateRule.java,v
1.5 2001/08/20 16:10:13 craigmcc Exp $
+ * $Revision: 1.5 $
+ * $Date: 2001/08/20 16:10:13 $
*
* ====================================================================
*
@@ -74,7 +74,7 @@
*
* @author Craig McClanahan
* @author Scott Sanders
- * @version $Revision: 1.4 $ $Date: 2001/08/04 22:26:37 $
+ * @version $Revision: 1.5 $ $Date: 2001/08/20 16:10:13 $
*/
public class ObjectCreateRule extends Rule {
@@ -166,17 +166,6 @@
Object top = digester.pop();
if (digester.getDebug() >= 1)
digester.log("Pop " + top.getClass().getName());
-
- }
-
-
- /**
- * Clean up after parsing is complete.
- */
- public void finish() throws Exception {
-
- attributeName = null;
- className = null;
}
1.5 +4 -15
jakarta-commons/digester/src/java/org/apache/commons/digester/SetNextRule.java
Index: SetNextRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetNextRule.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- SetNextRule.java 2001/08/04 22:26:37 1.4
+++ SetNextRule.java 2001/08/20 16:10:13 1.5
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetNextRule.java,v
1.4 2001/08/04 22:26:37 craigmcc Exp $
- * $Revision: 1.4 $
- * $Date: 2001/08/04 22:26:37 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetNextRule.java,v
1.5 2001/08/20 16:10:13 craigmcc Exp $
+ * $Revision: 1.5 $
+ * $Date: 2001/08/20 16:10:13 $
*
* ====================================================================
*
@@ -75,7 +75,7 @@
*
* @author Craig McClanahan
* @author Scott Sanders
- * @version $Revision: 1.4 $ $Date: 2001/08/04 22:26:37 $
+ * @version $Revision: 1.5 $ $Date: 2001/08/20 16:10:13 $
*/
public class SetNextRule extends Rule {
@@ -158,17 +158,6 @@
paramTypes[0] = child.getClass();
Method method = parent.getClass().getMethod(methodName, paramTypes);
method.invoke(parent, new Object[] { child });
-
- }
-
-
- /**
- * Clean up after parsing is complete.
- */
- public void finish() throws Exception {
-
- methodName = null;
- paramType = null;
}
1.5 +4 -15
jakarta-commons/digester/src/java/org/apache/commons/digester/SetTopRule.java
Index: SetTopRule.java
===================================================================
RCS file:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetTopRule.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- SetTopRule.java 2001/08/04 22:26:37 1.4
+++ SetTopRule.java 2001/08/20 16:10:13 1.5
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetTopRule.java,v
1.4 2001/08/04 22:26:37 craigmcc Exp $
- * $Revision: 1.4 $
- * $Date: 2001/08/04 22:26:37 $
+ * $Header:
/home/cvs/jakarta-commons/digester/src/java/org/apache/commons/digester/SetTopRule.java,v
1.5 2001/08/20 16:10:13 craigmcc Exp $
+ * $Revision: 1.5 $
+ * $Date: 2001/08/20 16:10:13 $
*
* ====================================================================
*
@@ -74,7 +74,7 @@
*
* @author Craig McClanahan
* @author Scott Sanders
- * @version $Revision: 1.4 $ $Date: 2001/08/04 22:26:37 $
+ * @version $Revision: 1.5 $ $Date: 2001/08/20 16:10:13 $
*/
public class SetTopRule extends Rule {
@@ -157,17 +157,6 @@
paramTypes[0] = child.getClass();
Method method = parent.getClass().getMethod(methodName, paramTypes);
method.invoke(parent, new Object[] { child });
-
- }
-
-
- /**
- * Clean up after parsing is complete.
- */
- public void finish() throws Exception {
-
- methodName = null;
- paramType = null;
}