Class CallParamRule

java.lang.Object
org.apache.tomcat.util.digester.Rule
org.apache.tomcat.util.digester.CallParamRule

public class CallParamRule extends Rule

Rule implementation that saves a parameter for use by a surrounding CallMethodRule.

This parameter may be:

  • Field Details

    • attributeName

      protected final String attributeName
      The attribute from which to save the parameter value
    • paramIndex

      protected final int paramIndex
      The zero-relative index of the parameter we are saving.
    • fromStack

      protected final boolean fromStack
      Is the parameter to be set from the stack?
    • stackIndex

      protected final int stackIndex
      The position of the object from the top of the stack
    • bodyTextStack

      protected ArrayStack<String> bodyTextStack
      Stack is used to allow nested body text to be processed. Lazy creation.
  • Constructor Details

    • CallParamRule

      public CallParamRule(int paramIndex)
      Construct a "call parameter" rule that will save the body text of this element as the parameter value.
      Parameters:
      paramIndex - The zero-relative parameter number
    • CallParamRule

      public CallParamRule(int paramIndex, String attributeName)
      Construct a "call parameter" rule that will save the value of the specified attribute as the parameter value.
      Parameters:
      paramIndex - The zero-relative parameter number
      attributeName - The name of the attribute to save
  • Method Details

    • begin

      public void begin(String namespace, String name, Attributes attributes) throws Exception
      Process the start of this element.
      Overrides:
      begin in class Rule
      Parameters:
      namespace - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
      name - the local name if the parser is namespace aware, or just the element name otherwise
      attributes - The attribute list for this element
      Throws:
      Exception - if an error occurs while processing the event
    • body

      public void body(String namespace, String name, String bodyText) throws Exception
      Process the body text of this element.
      Overrides:
      body in class Rule
      Parameters:
      namespace - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
      name - the local name if the parser is namespace aware, or just the element name otherwise
      bodyText - The body text of this element
      Throws:
      Exception - if an error occurs while processing the event
    • end

      public void end(String namespace, String name)
      Process any body texts now.
      Overrides:
      end in class Rule
      Parameters:
      namespace - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
      name - the local name if the parser is namespace aware, or just the element name otherwise
    • toString

      public String toString()
      Render a printable version of this Rule.
      Overrides:
      toString in class Object