diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2010-06-03 21:26:59 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2010-06-03 21:26:59 +0000 |
| commit | 388d42d6be196afb5f9803278a45f46199dc9e30 (patch) | |
| tree | b34885c6e8e1695c84deb499c9704fe86732fba8 /java/broker-plugins/firewall | |
| parent | 9bcd23b23e46bb94761611f65d1afddfb927a94a (diff) | |
| download | qpid-python-388d42d6be196afb5f9803278a45f46199dc9e30.tar.gz | |
Remove Plugin.isConfigured Only configured plugins should be created
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@951158 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins/firewall')
| -rw-r--r-- | java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java | 78 |
1 files changed, 42 insertions, 36 deletions
diff --git a/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java b/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java index 6c5ecf1d92..d91ee69ce2 100644 --- a/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java +++ b/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java @@ -43,8 +43,16 @@ public class Firewall extends AbstractPlugin { public Firewall newInstance(ConfigurationPlugin config) throws ConfigurationException { + FirewallConfiguration configuration = config.getConfiguration(FirewallConfiguration.class); + + // If there is no configuration for this plugin then don't load it. + if (configuration == null) + { + return null; + } + Firewall plugin = new Firewall(); - plugin.configure(config); + plugin.configure(configuration); return plugin; } @@ -121,43 +129,41 @@ public class Firewall extends AbstractPlugin public void configure(ConfigurationPlugin config) throws ConfigurationException { - _config = config.getConfiguration(FirewallConfiguration.class); + super.configure(config); FirewallConfiguration firewallConfiguration = (FirewallConfiguration) _config; - - if (isConfigured()) + + // Get default action + String defaultAction = firewallConfiguration.getConfiguration().getString("[@default-action]"); + if (defaultAction == null) { - // Get default action - String defaultAction = firewallConfiguration.getConfiguration().getString("[@default-action]"); - if (defaultAction == null) - { - _default = Result.ABSTAIN; - } - else if (defaultAction.equalsIgnoreCase(FirewallRule.ALLOW)) - { - _default = Result.ALLOWED; - } - else - { - _default = Result.DENIED; - } - - CompositeConfiguration finalConfig = new CompositeConfiguration(firewallConfiguration.getConfiguration()); - List subFiles = firewallConfiguration.getConfiguration().getList("xml[@fileName]"); - for (Object subFile : subFiles) - { - finalConfig.addConfiguration(new XMLConfiguration((String) subFile)); - } - - // all rules must have an access attribute - int numRules = finalConfig.getList("rule[@access]").size(); - _rules = new FirewallRule[numRules]; - for (int i = 0; i < numRules; i++) - { - FirewallRule rule = new FirewallRule(finalConfig.getString("rule(" + i + ")[@access]"), - finalConfig.getList("rule(" + i + ")[@network]"), - finalConfig.getList("rule(" + i + ")[@hostname]")); - _rules[i] = rule; - } + _default = Result.ABSTAIN; + } + else if (defaultAction.equalsIgnoreCase(FirewallRule.ALLOW)) + { + _default = Result.ALLOWED; + } + else + { + _default = Result.DENIED; } + + CompositeConfiguration finalConfig = new CompositeConfiguration(firewallConfiguration.getConfiguration()); + List subFiles = firewallConfiguration.getConfiguration().getList("xml[@fileName]"); + for (Object subFile : subFiles) + { + finalConfig.addConfiguration(new XMLConfiguration((String) subFile)); + } + + // all rules must have an access attribute + int numRules = finalConfig.getList("rule[@access]").size(); + _rules = new FirewallRule[numRules]; + for (int i = 0; i < numRules; i++) + { + FirewallRule rule = new FirewallRule(finalConfig.getString("rule(" + i + ")[@access]"), + finalConfig.getList("rule(" + i + ")[@network]"), + finalConfig.getList("rule(" + i + ")[@hostname]")); + _rules[i] = rule; + } + } } |
