| If there exists a property with the name matching constructor param
ruleClassAttr, then load the specified class, locate the appropriate
rules-adding method on that 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 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);
The target method can be specified in several ways. If this object's
constructor was passed a non-null methodAttr parameter, and the
properties defines a value with that key, then that is taken as the
target method name. If there is no matching property, or the constructor
was passed null for methodAttr, then the dfltMethodName passed to the
constructor is used as the name of the method on the target class. And
if that was null, then DFLT_METHOD_NAME will be used.
When the user explicitly declares a plugin in the input xml, the
xml attributes on the declaration tag are passed here as properties,
so the user can select any class in the classpath (and any method on
that class provided it has the correct prototype) as the source of
dynamic rules for the plugged-in class.
|