diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2010-06-03 21:27:48 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2010-06-03 21:27:48 +0000 |
| commit | f3ec30568c2b2e03059da573d6c31d4d602b06fd (patch) | |
| tree | 3daa612782d88ac6df9b36ffae4654dbea1e6d7d /java/broker-plugins/experimental | |
| parent | 388d42d6be196afb5f9803278a45f46199dc9e30 (diff) | |
| download | qpid-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')
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; } |
