Class FinderFromDfltMethod
- java.lang.Object
-
- org.apache.commons.digester3.plugins.RuleFinder
-
- org.apache.commons.digester3.plugins.strategies.FinderFromDfltMethod
-
public class FinderFromDfltMethod extends RuleFinder
A rule-finding algorithm which looks for a method with a specific name on the plugin class.- Since:
- 1.6
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
DFLT_METHOD_NAME
private java.lang.String
methodName
-
Constructor Summary
Constructors Constructor Description FinderFromDfltMethod()
FinderFromDfltMethod(java.lang.String methodName)
Create a rule-finder which invokes a specific method on the plugin class whenever dynamic rules for a plugin need to be loaded.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RuleLoader
findLoader(Digester d, java.lang.Class<?> pluginClass, java.util.Properties p)
If there exists on the plugin class a method with name matching the constructor's methodName value then locate the appropriate Method on the plugin class and return an object encapsulating that info.
-
-
-
Field Detail
-
DFLT_METHOD_NAME
private static final java.lang.String DFLT_METHOD_NAME
- See Also:
- Constant Field Values
-
methodName
private final java.lang.String methodName
-
-
Constructor Detail
-
FinderFromDfltMethod
public FinderFromDfltMethod()
-
FinderFromDfltMethod
public FinderFromDfltMethod(java.lang.String methodName)
Create a rule-finder which invokes a specific method on the plugin class whenever dynamic rules for a plugin need to be loaded. See the findRules method for more info.- Parameters:
methodName
- must be non-null.
-
-
Method Detail
-
findLoader
public RuleLoader findLoader(Digester d, java.lang.Class<?> pluginClass, java.util.Properties p) throws PluginException
If there exists on the plugin class a method with name matching the constructor's methodName value then locate the appropriate Method on the plugin class and return an object encapsulating that info.If there is no matching method 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);
- Specified by:
findLoader
in classRuleFinder
- Parameters:
d
- The digester instance where locating plugin classespluginClass
- The plugin Java classp
- 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.
-
-