summaryrefslogtreecommitdiff
path: root/java/broker-plugins/experimental
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2010-06-03 21:27:48 +0000
committerMartin Ritchie <ritchiem@apache.org>2010-06-03 21:27:48 +0000
commitf3ec30568c2b2e03059da573d6c31d4d602b06fd (patch)
tree3daa612782d88ac6df9b36ffae4654dbea1e6d7d /java/broker-plugins/experimental
parent388d42d6be196afb5f9803278a45f46199dc9e30 (diff)
downloadqpid-python-f3ec30568c2b2e03059da573d6c31d4d602b06fd.tar.gz
QPID-2581 : Update Plugins that use configuration to only throw ConfigurationExceptions during the configuration phase of loading configuration.
Creating a plugin and providing it with configuration should not throw a configuration exception. Added configuration validation to newer plugins SimpleXML still needs validation. todo Docuement Configuration mechanism. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@951159 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins/experimental')
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java26
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java2
2 files changed, 10 insertions, 18 deletions
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
index 6b5be4a9e2..73ba91f1e8 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
+++ b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
@@ -38,32 +38,24 @@ class SlowConsumerDetection extends VirtualHostHouseKeepingPlugin
public static class SlowConsumerFactory implements VirtualHostPluginFactory
{
- public Class<SlowConsumerDetection> getPluginClass()
+ public SlowConsumerDetection newInstance(VirtualHost vhost)
{
- return SlowConsumerDetection.class;
- }
+ SlowConsumerDetectionConfiguration config = vhost.getConfiguration().getConfiguration(SlowConsumerDetectionConfiguration.class);
- public String getPluginName()
- {
- return SlowConsumerDetection.class.getName();
- }
+ if (config == null)
+ {
+ return null;
+ }
- public SlowConsumerDetection newInstance(VirtualHost vhost) throws ConfigurationException
- {
SlowConsumerDetection plugin = new SlowConsumerDetection(vhost);
- plugin.configure(vhost.getConfiguration());
+ plugin.configure(config);
return plugin;
}
}
- public void configure(ConfigurationPlugin config) throws ConfigurationException
+ public void configure(ConfigurationPlugin config)
{
- _config = config.getConfiguration(SlowConsumerDetectionConfiguration.class);
-
- if (_config == null)
- {
- throw new IllegalArgumentException("Plugin has not been configured");
- }
+ _config = (SlowConsumerDetectionConfiguration) config;
}
public SlowConsumerDetection(VirtualHost vhost)
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
index 5262042b17..9bd1dd304f 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
+++ b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
@@ -128,7 +128,7 @@ public class TopicDeletePolicy implements SlowConsumerPolicyPlugin
return false;
}
- public void configure(ConfigurationPlugin config) throws ConfigurationException
+ public void configure(ConfigurationPlugin config)
{
_configuration = (TopicDeletePolicyConfiguration) config;
}