You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ri...@apache.org on 2010/06/03 23:26:59 UTC
svn commit: r951158 - in /qpid/trunk/qpid/java:
broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/
broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/
broke...
Author: ritchiem
Date: Thu Jun 3 21:26:59 2010
New Revision: 951158
URL: http://svn.apache.org/viewvc?rev=951158&view=rev
Log:
Remove Plugin.isConfigured Only configured plugins should be created
Modified:
qpid/trunk/qpid/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/AccessControl.java
qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
qpid/trunk/qpid/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java
qpid/trunk/qpid/java/broker-plugins/simple-xml/src/main/java/org/apache/qpid/server/security/access/plugins/SimpleXML.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/Plugin.java
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/AbstractPlugin.java
Modified: qpid/trunk/qpid/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/AccessControl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/AccessControl.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/AccessControl.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/AccessControl.java Thu Jun 3 21:26:59 2010
@@ -60,8 +60,16 @@ public class AccessControl extends Abstr
public AccessControl newInstance(ConfigurationPlugin config) throws ConfigurationException
{
+ AccessControlConfiguration configuration = config.getConfiguration(AccessControlConfiguration.class);
+
+ // If there is no configuration for this plugin then don't load it.
+ if (configuration == null)
+ {
+ return null;
+ }
+
AccessControl plugin = new AccessControl();
- plugin.configure(config);
+ plugin.configure(configuration);
return plugin;
}
};
@@ -109,14 +117,12 @@ public class AccessControl extends Abstr
public void configure(ConfigurationPlugin config) throws ConfigurationException
{
- _config = config.getConfiguration(AccessControlConfiguration.class);
+ super.configure(config);
+
AccessControlConfiguration accessConfig = (AccessControlConfiguration) _config;
-
- if (isConfigured())
- {
- String fileName = accessConfig.getFileName();
- File aclFile = new File(fileName);
- parseFile(aclFile);
- }
+
+ String fileName = accessConfig.getFileName();
+ File aclFile = new File(fileName);
+ parseFile(aclFile);
}
}
Modified: qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java Thu Jun 3 21:26:59 2010
@@ -57,7 +57,7 @@ class SlowConsumerDetection extends Virt
}
public void configure(ConfigurationPlugin config) throws ConfigurationException
- {
+ {
_config = config.getConfiguration(SlowConsumerDetectionConfiguration.class);
if (_config == null)
@@ -144,13 +144,4 @@ class SlowConsumerDetection extends Virt
return false;
}
- public boolean isConfigured()
- {
- return _config != null && _virtualhost != null;
- }
-
- public void configure() throws ConfigurationException
- {
- // Empty
- }
}
Modified: qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java Thu Jun 3 21:26:59 2010
@@ -46,7 +46,7 @@ public class TopicDeletePolicy implement
{
TopicDeletePolicyConfiguration config =
configuration.getConfiguration(TopicDeletePolicyConfiguration.class);
-
+
TopicDeletePolicy policy = new TopicDeletePolicy();
policy.configure(config);
return policy;
@@ -128,11 +128,6 @@ public class TopicDeletePolicy implement
return false;
}
- public boolean isConfigured()
- {
- return _configuration != null;
- }
-
public void configure(ConfigurationPlugin config) throws ConfigurationException
{
_configuration = (TopicDeletePolicyConfiguration) config;
Modified: qpid/trunk/qpid/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/firewall/src/main/java/org/apache/qpid/server/security/access/plugins/Firewall.java Thu Jun 3 21:26:59 2010
@@ -43,8 +43,16 @@ public class Firewall extends AbstractPl
{
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 AbstractPl
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;
+ }
+
}
}
Modified: qpid/trunk/qpid/java/broker-plugins/simple-xml/src/main/java/org/apache/qpid/server/security/access/plugins/SimpleXML.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/simple-xml/src/main/java/org/apache/qpid/server/security/access/plugins/SimpleXML.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/simple-xml/src/main/java/org/apache/qpid/server/security/access/plugins/SimpleXML.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/simple-xml/src/main/java/org/apache/qpid/server/security/access/plugins/SimpleXML.java Thu Jun 3 21:26:59 2010
@@ -52,8 +52,16 @@ public class SimpleXML extends AbstractP
{
public SimpleXML newInstance(ConfigurationPlugin config) throws ConfigurationException
{
+ SimpleXMLConfiguration configuration = config.getConfiguration(SimpleXMLConfiguration.class);
+
+ // If there is no configuration for this plugin then don't load it.
+ if (configuration == null)
+ {
+ return null;
+ }
+
SimpleXML plugin = new SimpleXML();
- plugin.configure(config);
+ plugin.configure(configuration);
return plugin;
}
@@ -70,16 +78,13 @@ public class SimpleXML extends AbstractP
public void configure(ConfigurationPlugin config) throws ConfigurationException
{
- _config = config.getConfiguration(SimpleXMLConfiguration.class);
+ super.configure(config);
SimpleXMLConfiguration configuration = (SimpleXMLConfiguration) _config;
- if (isConfigured())
- {
- _users = new ConcurrentHashMap<String, PrincipalPermissions>();
+ _users = new ConcurrentHashMap<String, PrincipalPermissions>();
- processConfig(configuration.getConfiguration());
- }
+ processConfig(configuration.getConfiguration());
}
private void processConfig(Configuration config)
Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/Plugin.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/Plugin.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/Plugin.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/Plugin.java Thu Jun 3 21:26:59 2010
@@ -25,12 +25,10 @@ public interface Plugin
{
/**
- * Is this plugin configured?.
- */
- boolean isConfigured();
-
- /**
- * Configure this plugin
+ * Provide Configuration to this plugin
+ *
+ * FIXME Should not throw ConfigurationException,
+ * Only ConfigurationPlugin should throw ConfigurationException
*/
public void configure(ConfigurationPlugin config) throws ConfigurationException;
}
Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/AbstractPlugin.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/AbstractPlugin.java?rev=951158&r1=951157&r2=951158&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/AbstractPlugin.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/AbstractPlugin.java Thu Jun 3 21:26:59 2010
@@ -20,6 +20,7 @@
*/
package org.apache.qpid.server.security;
+import org.apache.commons.configuration.ConfigurationException;
import org.apache.log4j.Logger;
import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
import org.apache.qpid.server.security.access.ObjectProperties;
@@ -33,7 +34,7 @@ public abstract class AbstractPlugin imp
{
protected final Logger _logger = Logger.getLogger(getClass());
- public ConfigurationPlugin _config;
+ protected ConfigurationPlugin _config;
public Result getDefault()
{
@@ -43,22 +44,10 @@ public abstract class AbstractPlugin imp
public abstract Result access(ObjectType object, Object instance);
public abstract Result authorise(Operation operation, ObjectType object, ObjectProperties properties);
-
- public boolean isConfigured()
- {
- if (_config == null)
- {
- return false;
- }
-
- for (String key : _config.getElementsProcessed())
- {
- if (!_config.getConfig().containsKey(key) && _config.getConfig().subset(key).isEmpty())
- {
- return false;
- }
- }
- return true;
+ public void configure(ConfigurationPlugin config) throws ConfigurationException
+ {
+ _config = config;
}
+
}
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org