You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by John Yu <jo...@scioworks.com> on 2002/09/16 06:15:56 UTC
[digester][patch] CallMethodRule, CallParamRule and Digester
I have a use case which can't be done with the Digester's standard rules.
(I hope I haven't overlooked Digester's API.) After some experiment, I
realized I could make CallMethodRule/CallParamRule work with some
enhancement. I think the use case is pretty common and generic.
The use case is like this: I need to call a 3rd party API
Parent.add(Child child, Condition condition)
with the XML data:
<parent>
<child .../>
<condition .../>
</parent>
I can't use SetNextRule as it takes only one object from the stack.
CallMethodRule/CallParamRule comes close, but it allows only parameters
coming from body texts or attributes, not generic objects from the stack.
So, I made the following changes to CallMethodRule/CallParamRule:
* Changed the param stack frame from String[] to Object[]
* Overloaded CallParamRule to configure it to get the parameter from
the stack
* Made CallParamRule stateless so that it can work probably in nesting
I've attached the zipped file of the diffs.
--
John Yu