Class CallParamRule
Rule implementation that saves a parameter for use by a surrounding
CallMethodRule
.
This parameter may be:
- from an attribute of the current element
See
CallParamRule(int paramIndex, String attributeName)
- from current the element body
See
CallParamRule(int paramIndex)
- from the top object on the stack.
See
CallParamRule(int paramIndex, boolean fromStack)
- the current path being processed (separate
Rule
). SeePathCallParamRule
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String
The attribute from which to save the parameter valueprotected ArrayStack
Stack is used to allow nested body text to be processed.protected boolean
Is the parameter to be set from the stack?protected int
The zero-relative index of the parameter we are saving.protected int
The position of the object from the top of the stackFields inherited from class org.apache.commons.digester.Rule
digester, namespaceURI
-
Constructor Summary
ConstructorsConstructorDescriptionCallParamRule
(int paramIndex) Construct a "call parameter" rule that will save the body text of this element as the parameter value.CallParamRule
(int paramIndex, boolean fromStack) Construct a "call parameter" rule.CallParamRule
(int paramIndex, int stackIndex) Constructs a "call parameter" rule which sets a parameter from the stack.CallParamRule
(int paramIndex, String attributeName) Construct a "call parameter" rule that will save the value of the specified attribute as the parameter value.CallParamRule
(Digester digester, int paramIndex) Deprecated.CallParamRule
(Digester digester, int paramIndex, String attributeName) Deprecated.The digester instance is now set in theDigester.addRule(java.lang.String, org.apache.commons.digester.Rule)
method. -
Method Summary
Methods inherited from class org.apache.commons.digester.Rule
begin, body, end, finish, getDigester, getNamespaceURI, setDigester, setNamespaceURI
-
Field Details
-
attributeName
The attribute from which to save the parameter value -
paramIndex
protected int paramIndexThe zero-relative index of the parameter we are saving. -
fromStack
protected boolean fromStackIs the parameter to be set from the stack? -
stackIndex
protected int stackIndexThe position of the object from the top of the stack -
bodyTextStack
protected ArrayStack bodyTextStackStack is used to allow nested body text to be processed. Lazy creation.
-
-
Constructor Details
-
CallParamRule
Deprecated.The digester instance is now set in theDigester.addRule(java.lang.String, org.apache.commons.digester.Rule)
method. UseCallParamRule(int paramIndex)
instead.Construct a "call parameter" rule that will save the body text of this element as the parameter value.Note that if the element is empty the an empty string is passed to the target method, not null. And if automatic type conversion is being applied (ie if the target function takes something other than a string as a parameter) then the conversion will fail if the converter class does not accept an empty string as valid input.
- Parameters:
digester
- The associated DigesterparamIndex
- The zero-relative parameter number
-
CallParamRule
Deprecated.The digester instance is now set in theDigester.addRule(java.lang.String, org.apache.commons.digester.Rule)
method. UseCallParamRule(int paramIndex, String attributeName)
instead.Construct a "call parameter" rule that will save the value of the specified attribute as the parameter value.- Parameters:
digester
- The associated DigesterparamIndex
- The zero-relative parameter numberattributeName
- The name of the attribute to save
-
CallParamRule
public CallParamRule(int paramIndex) Construct a "call parameter" rule that will save the body text of this element as the parameter value.Note that if the element is empty the an empty string is passed to the target method, not null. And if automatic type conversion is being applied (ie if the target function takes something other than a string as a parameter) then the conversion will fail if the converter class does not accept an empty string as valid input.
- Parameters:
paramIndex
- The zero-relative parameter number
-
CallParamRule
Construct a "call parameter" rule that will save the value of the specified attribute as the parameter value.- Parameters:
paramIndex
- The zero-relative parameter numberattributeName
- The name of the attribute to save
-
CallParamRule
public CallParamRule(int paramIndex, boolean fromStack) Construct a "call parameter" rule.- Parameters:
paramIndex
- The zero-relative parameter numberfromStack
- should this parameter be taken from the top of the stack?
-
CallParamRule
public CallParamRule(int paramIndex, int stackIndex) Constructs a "call parameter" rule which sets a parameter from the stack. If the stack contains too few objects, then the parameter will be set to null.- Parameters:
paramIndex
- The zero-relative parameter numberstackIndex
- the index of the object which will be passed as a parameter. The zeroth object is the top of the stack, 1 is the next object down and so on.
-
-
Method Details
-
begin
Process the start of this element. -
body
Process the body text of this element. -
end
Process any body texts now. -
toString
Render a printable version of this Rule.
-
Digester.addRule(java.lang.String, org.apache.commons.digester.Rule)
method.