Class CallMethodBuilder

All Implemented Interfaces:
RuleProvider<CallMethodRule>

public final class CallMethodBuilder extends AbstractBackToLinkedRuleBuilder<CallMethodRule>
Builder chained when invoking LinkedRuleBuilder.callMethod(String).
Since:
3.0
  • Field Details

    • methodName

      private final String methodName
    • classLoader

      private final ClassLoader classLoader
    • targetOffset

      private int targetOffset
    • paramCount

      private int paramCount
    • paramTypes

      private Class<?>[] paramTypes
    • useExactMatch

      private boolean useExactMatch
  • Constructor Details

  • Method Details

    • withTargetOffset

      public CallMethodBuilder withTargetOffset(int targetOffset)
      Sets the location of the target object. Positive numbers are relative to the top of the digester object stack. Negative numbers are relative to the bottom of the stack. Zero implies the top object on the stack.
      Parameters:
      targetOffset - location of the target object.
      Returns:
      this builder instance
    • withParamTypes

      public CallMethodBuilder withParamTypes(String... paramTypeNames)
      Sets the Java class names that represent the parameter types of the method arguments. If you wish to use a primitive type, specify the corresonding Java wrapper class instead, such as java.lang.Boolean.TYPE for a boolean parameter.
      Parameters:
      paramTypeNames - The Java classes names that represent the parameter types of the method arguments
      Returns:
      this builder instance
    • withParamTypes

      public CallMethodBuilder withParamTypes(Class<?>... paramTypes)
      Sets the Java classes that represent the parameter types of the method arguments. If you wish to use a primitive type, specify the corresonding Java wrapper class instead, such as java.lang.Boolean.TYPE for a boolean parameter.
      Parameters:
      paramTypes - The Java classes that represent the parameter types of the method arguments
      Returns:
      this builder instance
    • useExactMatch

      public CallMethodBuilder useExactMatch(boolean useExactMatch)
      Should MethodUtils.invokeExactMethod be used for the reflection.
      Parameters:
      useExactMatch - Flag to mark exact matching or not
      Returns:
      this builder instance
    • withParamCount

      public CallMethodBuilder withParamCount(int paramCount)
      The number of parameters to collect, or zero for a single argument from the body of this element.
      Parameters:
      paramCount - The number of parameters to collect, or zero for a single argument from the body of this element.
      Returns:
      this builder instance
    • usingElementBodyAsArgument

      public CallMethodBuilder usingElementBodyAsArgument()
      Prepare the CallMethodRule to be invoked using the matching element body as argument.
      Returns:
      this builder instance
    • createRule

      protected CallMethodRule createRule()
      Provides an instance of Rule. Must never return null.
      Specified by:
      createRule in class AbstractBackToLinkedRuleBuilder<CallMethodRule>
      Returns:
      an instance of Rule.
      See Also: