summaryrefslogtreecommitdiff
path: root/java/broker/src
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2010-05-21 21:09:52 +0000
committerMartin Ritchie <ritchiem@apache.org>2010-05-21 21:09:52 +0000
commit89e14bc6a0af4ec55b8e124c886950b44b5206d9 (patch)
treefe82d15d09af95fa4f42d8a0201c1070ddecbe4b /java/broker/src
parent832964c70974c9b668aaa17773d22b75228552a7 (diff)
downloadqpid-python-89e14bc6a0af4ec55b8e124c886950b44b5206d9.tar.gz
QPID-2581 : Update ConfigurationPlugin to provide a validateConfiguration() method simplifying the plugins
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@947177 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker/src')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java6
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java6
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java6
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/plugins/ConfigurationPlugin.java4
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/configuration/plugins/ConfigurationPluginTest.java13
5 files changed, 33 insertions, 2 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java
index ee68143a2d..adbb0059d8 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java
@@ -68,6 +68,12 @@ public class QueueConfiguration extends ConfigurationPlugin
};
}
+ @Override
+ public void validateConfiguration() throws ConfigurationException
+ {
+ //Currently doesn't do validation
+ }
+
public VirtualHostConfiguration getVirtualHostConfiguration()
{
return _vHostConfig;
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
index fe399669fd..8f9bded82a 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
@@ -192,6 +192,12 @@ public class ServerConfiguration extends ConfigurationPlugin implements SignalHa
return new String[]{""};
}
+ @Override
+ public void validateConfiguration() throws ConfigurationException
+ {
+ //Currently doesn't do validation
+ }
+
/*
* Modified to enforce virtualhosts configuration in external file or main file, but not
* both, as a fix for QPID-2360 and QPID-2361.
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
index ca1f25952e..00b109f33b 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
@@ -206,6 +206,12 @@ public class VirtualHostConfiguration extends ConfigurationPlugin
}
+ @Override
+ public void validateConfiguration() throws ConfigurationException
+ {
+ //Currently doesn't do validation
+ }
+
public int getHouseKeepingThreadCount()
{
return getIntValue("housekeeping.poolSize", Runtime.getRuntime().availableProcessors());
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/plugins/ConfigurationPlugin.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/plugins/ConfigurationPlugin.java
index e6306b70d5..cb21f07eaf 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/plugins/ConfigurationPlugin.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/plugins/ConfigurationPlugin.java
@@ -156,8 +156,12 @@ public abstract class ConfigurationPlugin
_pluginConfiguration.put(elementHandler.getClass(), elementHandler);
}
}
+
+ validateConfiguration();
}
+ abstract public void validateConfiguration() throws ConfigurationException;
+
protected boolean hasConfiguration()
{
return _configuration != null;
diff --git a/java/broker/src/test/java/org/apache/qpid/server/configuration/plugins/ConfigurationPluginTest.java b/java/broker/src/test/java/org/apache/qpid/server/configuration/plugins/ConfigurationPluginTest.java
index 2f2a47cd14..090fb36a4b 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/configuration/plugins/ConfigurationPluginTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/configuration/plugins/ConfigurationPluginTest.java
@@ -28,8 +28,8 @@ import org.apache.commons.configuration.XMLConfiguration;
import java.util.List;
/**
- * Test that verifies that given a configuration the
- * Plugin manager
+ * Test that verifies that given a Configuration a ConfigurationPlugin can
+ * process and validate that data.
*/
public class ConfigurationPluginTest extends TestCase
{
@@ -48,6 +48,12 @@ public class ConfigurationPluginTest extends TestCase
"true", "list", "double"};
}
+ @Override
+ public void validateConfiguration() throws ConfigurationException
+ {
+ // no validation requried
+ }
+
public String getName()
{
return getStringValue("name");
@@ -58,6 +64,7 @@ public class ConfigurationPluginTest extends TestCase
return getStringValue("[@property]");
}
+
}
ConfigPlugin _plugin;
@@ -170,6 +177,8 @@ public class ConfigurationPluginTest extends TestCase
public void testBoolean()
{
+ assertTrue("Boolean value not returned", _plugin.containsBoolean("boolean"));
+ assertFalse("Boolean value not returned", _plugin.containsBoolean("NonExistent"));
assertTrue("Boolean value not returned", _plugin.getBooleanValue("boolean"));
assertFalse("default String value not returned", _plugin.getBooleanValue("NonExistent"));
assertTrue("set default String value not returned", _plugin.getBooleanValue("NonExistent", true));