org.apache.commons.digester.plugins.strategies

Class 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

static String
DFLT_METHOD_NAME
private String
methodName

Constructor Summary

FinderFromDfltMethod()
See findLoader(Digester,Class,Properties).
FinderFromDfltMethod(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

RuleLoader
findLoader(Digester d, Class pluginClass, 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.

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

findLoader

Field Details

DFLT_METHOD_NAME

public static String DFLT_METHOD_NAME


methodName

private String methodName

Constructor Details

FinderFromDfltMethod

public FinderFromDfltMethod()


FinderFromDfltMethod

public FinderFromDfltMethod(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 Details

findLoader

public RuleLoader findLoader(Digester d,
                             Class pluginClass,
                             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);

Overrides:
findLoader in interface RuleFinder


Copyright 2001-2005 The Apache Software Foundation.