if ( baseClass == null )
{
reportError( "createPlugin()", "'baseClass' has to be specified" );
}
PluginCreateRule rule;
if ( dfltPluginClass != null )
{
if ( dfltPluginRuleLoader != null )
{
rule = new PluginCreateRule( baseClass, dfltPluginClass, dfltPluginRuleLoader );
}
else
{
rule = new PluginCreateRule( baseClass, dfltPluginClass );
}
}
else
{
rule = new PluginCreateRule( baseClass );
}
for ( Entry<String, String> entry : pluginClassAttributes.entrySet() )
{
rule.setPluginClassAttribute( entry.getKey(), entry.getValue() );
}
for ( Entry<String, String> entry : pluginIdAttributes.entrySet() )
{
rule.setPluginIdAttribute( entry.getKey(), entry.getValue() );
}
return rule;
}