throws ConfigException, InitializationException
{
//Initialize the user plugins.
for (String pluginName : pluginRootConfig.listPlugins())
{
PluginCfg pluginConfiguration = pluginRootConfig.getPlugin(pluginName);
pluginConfiguration.addChangeListener(this);
if (! pluginConfiguration.isEnabled())
{
continue;
}
// Create a set of plugin types for the plugin.
HashSet<PluginType> initTypes = new HashSet<PluginType>();
for (PluginCfgDefn.PluginType pluginType :
pluginConfiguration.getPluginType())
{
PluginType t = getPluginType(pluginType);
if ((pluginTypes == null) || pluginTypes.contains(t))
{
initTypes.add(t);
}
}
if (initTypes.isEmpty())
{
continue;
}
try
{
DirectoryServerPlugin<? extends PluginCfg> plugin =
loadPlugin(pluginConfiguration.getJavaClass(), initTypes,
pluginConfiguration, true);
registerPlugin(plugin, pluginConfiguration.dn(), initTypes);
}
catch (InitializationException ie)
{
logError(ie.getMessageObject());
continue;