org.apache.commons.digester.plugins.strategies

Class FinderFromMethod


public class FinderFromMethod
extends RuleFinder

A rule-finding algorithm which expects the caller to specify a methodname as a plugin property, where the method exists on the plugin class.

Since:
1.6

Field Summary

static String
DFLT_METHOD_ATTR
Xml attribute that needs to be present on a plugin declaration in order to specify the method to load rules from.
private String
methodAttr
See findLoader(Digester,Class,Properties).

Constructor Summary

FinderFromMethod()
Constructor.
FinderFromMethod(String methodAttr)
See findLoader(Digester,Class,Properties).

Method Summary

RuleLoader
findLoader(Digester d, Class pluginClass, Properties p)
If there exists a property with the name matching constructor param methodAttr, then locate the appropriate Method on the plugin class and return an object encapsulating that info.

Methods inherited from class org.apache.commons.digester.plugins.RuleFinder

findLoader

Field Details

DFLT_METHOD_ATTR

public static String DFLT_METHOD_ATTR
Xml attribute that needs to be present on a plugin declaration in order to specify the method to load rules from.


methodAttr

private String methodAttr

Constructor Details

FinderFromMethod

public FinderFromMethod()
Constructor.


FinderFromMethod

public FinderFromMethod(String methodAttr)

Method Details

findLoader

public RuleLoader findLoader(Digester d,
                             Class pluginClass,
                             Properties p)
            throws PluginException
If there exists a property with the name matching constructor param methodAttr, then locate the appropriate Method on the plugin class and return an object encapsulating that info.

If there is no matching property provided, then just return null.

The returned object (when non-null) will invoke the target method on the plugin 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);

Overrides:
findLoader in interface RuleFinder


Copyright 2001-2005 The Apache Software Foundation.