From e7fa8f7ebb8b320bd2eb21794eae589162aef1bf Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Thu, 15 Mar 2012 08:22:28 +0000 Subject: [PATCH] bug fixed: A disabled plugin which appeared twice caused an exception. This is now fixed SVN: 24734 --- .../shared/utils/CorePluginsInjector.java | 2 +- .../shared/utils/CorePluginsInjectorTest.java | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjector.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjector.java index d5ff3793c6c..7f2deed90b0 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjector.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjector.java @@ -247,12 +247,12 @@ public class CorePluginsInjector for (File pluginFolder : pluginFolders) { String pluginName = pluginFolder.getName(); - assertAndAddPluginName(pluginName, pluginNames, pluginType); DssCorePlugin plugin = new DssCorePlugin(technology, pluginType, pluginFolder); String fullPluginName = plugin.getName(); if (isDisabled(disabledPlugins, fullPluginName) == false) { + assertAndAddPluginName(pluginName, pluginNames, pluginType); Map<String, DssCorePlugin> map = typeToPluginsMap.get(pluginType); if (map == null) { diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjectorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjectorTest.java index b1018f5b86f..7d1891e9abb 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjectorTest.java +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/shared/utils/CorePluginsInjectorTest.java @@ -249,6 +249,23 @@ public class CorePluginsInjectorTest extends AbstractFileSystemTestCase context.assertIsSatisfied(); } + @Test + public void testADuplicatedButDisabledReportingPluginVersion2() + { + new File(corePluginsFolder, "screening/1/dss/drop-boxes/my-drop-box").mkdirs(); + File dropBox2 = new File(corePluginsFolder, "screening/2/dss/drop-boxes/k2"); + dropBox2.mkdirs(); + FileUtilities.writeToFile(new File(dropBox2, PLUGIN_PROPERTIES_FILE_NAME), + "class = blabla\n"); + Properties properties = createProperties(); + properties.setProperty(REPORTING_PLUGIN_NAMES, "k1, k2"); + properties.setProperty(DISABLED_CORE_PLUGINS_KEY, "screening"); + + injector.injectCorePlugins(properties); + + context.assertIsSatisfied(); + } + @Test public void testAMiscellaneousPlugin() { -- GitLab