Class FinderFromDfltClass

java.lang.Object
org.apache.commons.digester3.plugins.RuleFinder
org.apache.commons.digester3.plugins.strategies.FinderFromDfltClass

public class FinderFromDfltClass extends RuleFinder
A rule-finding algorithm which looks for a method with a specific name on a class whose name is derived from the plugin class name.
Since:
1.6
  • Field Details

  • Constructor Details

  • Method Details

    • findLoader

      public RuleLoader findLoader(Digester digester, Class<?> pluginClass, Properties p) throws PluginException
      If there exists a class whose name is the plugin class name + the suffix specified to the constructor, then load that class, locate the appropriate rules-adding method on that class, and return an object encapsulating that info.

      If there is no such class, then just return null.

      The returned object (when non-null) will invoke the target method on the selected class whenever its addRules method is invoked. The target method is expected to have the following prototype: public static void xxxxx(Digester d, String patternPrefix);

      Specified by:
      findLoader in class RuleFinder
      Parameters:
      digester - The digester instance where locating plugin classes
      pluginClass - The plugin Java class
      p - The properties object that holds any xml attributes the user may have specified on the plugin declaration in order to indicate how to locate the plugin rules.
      Returns:
      a source of digester rules for the specified plugin class.
      Throws:
      PluginException - if the algorithm finds a source of rules, but there is something invalid about that source.