You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2012/09/24 18:00:30 UTC

svn commit: r1389451 - in /qpid/trunk/qpid/java/broker/src: main/java/org/apache/qpid/server/configuration/ main/java/org/apache/qpid/server/plugins/ main/java/org/apache/qpid/server/queue/ test/java/org/apache/qpid/server/configuration/ test/java/org/...

Author: robbie
Date: Mon Sep 24 16:00:29 2012
New Revision: 1389451

URL: http://svn.apache.org/viewvc?rev=1389451&view=rev
Log:
QPID-4333: remove the 'queue reconfiguration' process and various clases leftover from SCD

Work by Keith Wall and myself.

Removed:
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ExchangeConfigurationPlugin.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfig.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java
    qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/TopicConfigurationTest.java
Modified:
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/PluginManager.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java
    qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
    qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/QueueConfiguration.java Mon Sep 24 16:00:29 2012
@@ -193,43 +193,4 @@ public class QueueConfiguration extends 
     {
         return getBooleanValue("deadLetterQueues", _vHostConfig.isDeadLetterQueueEnabled());
     }
-
-    public static class QueueConfig extends ConfigurationPlugin
-    {
-        @Override
-        public String[] getElementsProcessed()
-        {
-            return new String[]{"name"};
-        }
-
-        public String getName()
-        {
-            return getStringValue("name");
-        }
-
-
-        public void validateConfiguration() throws ConfigurationException
-        {
-            if (getConfig().isEmpty())
-            {
-                throw new ConfigurationException("Queue section cannot be empty.");
-            }
-
-            if (getName() == null)
-            {
-                throw new ConfigurationException("Queue section must have a 'name' element.");
-            }
-
-        }
-
-
-        @Override
-        public String formatToString()
-        {
-            return "Name:"+getName();
-        }
-          
-
-    }
-
 }

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java Mon Sep 24 16:00:29 2012
@@ -23,18 +23,11 @@ package org.apache.qpid.server.configura
 import org.apache.commons.configuration.CompositeConfiguration;
 import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
-import org.apache.commons.configuration.PropertiesConfiguration;
 
-import org.apache.qpid.exchange.ExchangeDefaults;
-import org.apache.qpid.framing.AMQShortString;
-import org.apache.qpid.server.binding.Binding;
 import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
-import org.apache.qpid.server.queue.AMQQueue;
 import org.apache.qpid.server.registry.ApplicationRegistry;
 import org.apache.qpid.server.store.MemoryMessageStore;
 
-import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.List;
@@ -149,105 +142,6 @@ public class VirtualHostConfiguration ex
         }
     }
 
-    public ConfigurationPlugin getQueueConfiguration(AMQQueue queue)
-    {
-        VirtualHostConfiguration hostConfig = queue.getVirtualHost().getConfiguration();
-
-        // First check if we have a named queue configuration (the easy case)
-        if (Arrays.asList(hostConfig.getQueueNames()).contains(queue.getName()))
-        {
-            return null;
-        }
-
-        // We don't have an explicit queue config we must find out what we need.
-        ArrayList<Binding> bindings = new ArrayList<Binding>(queue.getBindings());
-
-        List<AMQShortString> exchangeClasses = new ArrayList<AMQShortString>(bindings.size());
-
-        //Remove default exchange
-        for (int index = 0; index < bindings.size(); index++)
-        {
-            // Ignore the DEFAULT Exchange binding
-            if (bindings.get(index).getExchange().getNameShortString().equals(ExchangeDefaults.DEFAULT_EXCHANGE_NAME))
-            {
-                bindings.remove(index);
-            }
-            else
-            {
-                exchangeClasses.add(bindings.get(index).getExchange().getType().getName());
-
-                if (exchangeClasses.size() > 1)
-                {
-                    // If we have more than 1 class of exchange then we can only use the global queue configuration.
-                    // and this will be returned from the default getQueueConfiguration
-                    return null;
-                }
-            }
-        }
-
-        // If we are just bound the the default exchange then use the default.
-        if (bindings.isEmpty())
-        {
-            return null;
-        }
-
-        // If we are bound to only one type of exchange then we are going
-        // to have to resolve the configuration for that exchange.
-
-        String exchangeName = bindings.get(0).getExchange().getType().getName().toString();
-
-        // Lookup a Configuration handler for this Exchange.
-
-        // Build the expected class name. <Exchangename>sConfiguration
-        // i.e. TopicConfiguration or HeadersConfiguration
-        String exchangeClass = "org.apache.qpid.server.configuration."
-                               + exchangeName.substring(0, 1).toUpperCase()
-                               + exchangeName.substring(1) + "Configuration";
-
-        ExchangeConfigurationPlugin exchangeConfiguration
-                = (ExchangeConfigurationPlugin) queue.getVirtualHost().getConfiguration().getConfiguration(exchangeClass);
-
-        // now need to perform the queue-topic-topics-queues magic.
-        // So make a new ConfigurationObject that will hold all the configuration for this queue.
-        ConfigurationPlugin queueConfig = new QueueConfiguration.QueueConfig();
-
-        // Initialise the queue with any Global values we may have
-        PropertiesConfiguration newQueueConfig = new PropertiesConfiguration();
-        newQueueConfig.setProperty("name", queue.getName());
-
-        try
-        {
-            //Set the queue name
-            CompositeConfiguration mungedConf = new CompositeConfiguration();
-            //Set the queue name
-            mungedConf.addConfiguration(newQueueConfig);
-            //Set the global queue configuration
-            mungedConf.addConfiguration(getConfig().subset("queues"));
-
-            // Set configuration
-            queueConfig.setConfiguration("virtualhosts.virtualhost.queues", mungedConf);
-        }
-        catch (ConfigurationException e)
-        {
-            // This will not occur as queues only require a name.
-            _logger.error("QueueConfiguration requirements have changed.");
-        }
-
-        // Merge any configuration the Exchange wishes to apply        
-        if (exchangeConfiguration != null)
-        {
-            queueConfig.addConfiguration(exchangeConfiguration.getConfiguration(queue));
-        }
-
-        //Finally merge in any specific queue configuration we have.
-        if (_queues.containsKey(queue.getName()))
-        {
-            queueConfig.addConfiguration(_queues.get(queue.getName()));
-        }
-
-        return queueConfig;
-    }
-
     public int getMaximumMessageAge()
     {
         return getIntValue("queues.maximumMessageAge");

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/PluginManager.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/PluginManager.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/PluginManager.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/plugins/PluginManager.java Mon Sep 24 16:00:29 2012
@@ -34,7 +34,6 @@ import org.apache.felix.framework.util.S
 import org.apache.log4j.Logger;
 import org.apache.qpid.common.Closeable;
 import org.apache.qpid.common.QpidProperties;
-import org.apache.qpid.server.configuration.TopicConfiguration;
 import org.apache.qpid.server.configuration.plugins.ConfigurationPluginFactory;
 import org.apache.qpid.server.exchange.ExchangeType;
 import org.apache.qpid.server.security.SecurityManager;
@@ -148,7 +147,6 @@ public class PluginManager implements Cl
             _securityPlugins.put(pluginFactory.getPluginName(), pluginFactory);
         }
         for (ConfigurationPluginFactory configFactory : Arrays.asList(
-                TopicConfiguration.FACTORY,
                 SecurityManager.SecurityConfiguration.FACTORY,
                 LegacyAccess.LegacyAccessConfiguration.FACTORY,
                 PrincipalDatabaseAuthenticationManager.PrincipalDatabaseAuthenticationManagerConfiguration.FACTORY,

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueue.java Mon Sep 24 16:00:29 2012
@@ -23,7 +23,7 @@ package org.apache.qpid.server.queue;
 import org.apache.qpid.AMQException;
 import org.apache.qpid.framing.AMQShortString;
 import org.apache.qpid.server.binding.Binding;
-import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
+import org.apache.qpid.server.configuration.QueueConfiguration;
 import org.apache.qpid.server.exchange.Exchange;
 import org.apache.qpid.server.exchange.ExchangeReferrer;
 import org.apache.qpid.server.logging.LogSubject;
@@ -277,9 +277,7 @@ public interface AMQQueue extends Compar
         public void doTask(AMQQueue queue) throws AMQException;
     }
 
-    void configure(ConfigurationPlugin config);
-
-    ConfigurationPlugin getConfiguration();
+    void configure(QueueConfiguration config);
 
     void setExclusive(boolean exclusive);
 

Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java Mon Sep 24 16:00:29 2012
@@ -598,24 +598,6 @@ public class SimpleAMQQueue implements A
                 break;
             }
         }
-
-        reconfigure();
-    }
-
-    private void reconfigure()
-    {
-        //Reconfigure the queue for to reflect this new binding.
-        ConfigurationPlugin config = getVirtualHost().getConfiguration().getQueueConfiguration(this);
-
-        if (config != null)
-        {
-            if (_logger.isDebugEnabled())
-            {
-                _logger.debug("Reconfiguring queue(" + this + ") with config:" + config + " was "+ _queueConfiguration);
-            }
-            // Reconfigure with new config.
-            configure(config);
-        }
     }
 
     public int getBindingCountHigh()
@@ -626,8 +608,6 @@ public class SimpleAMQQueue implements A
     public void removeBinding(final Binding binding)
     {
         _bindings.remove(binding);
-
-        reconfigure();
     }
 
     public List<Binding> getBindings()
@@ -2137,34 +2117,21 @@ public class SimpleAMQQueue implements A
     }
 
 
-    public void configure(ConfigurationPlugin config)
+    public void configure(QueueConfiguration config)
     {
         if (config != null)
         {
-            if (config instanceof QueueConfiguration)
-            {
-
-                setMaximumMessageAge(((QueueConfiguration)config).getMaximumMessageAge());
-                setMaximumQueueDepth(((QueueConfiguration)config).getMaximumQueueDepth());
-                setMaximumMessageSize(((QueueConfiguration)config).getMaximumMessageSize());
-                setMaximumMessageCount(((QueueConfiguration)config).getMaximumMessageCount());
-                setMinimumAlertRepeatGap(((QueueConfiguration)config).getMinimumAlertRepeatGap());
-                setMaximumDeliveryCount(((QueueConfiguration)config).getMaxDeliveryCount());
-                _capacity = ((QueueConfiguration)config).getCapacity();
-                _flowResumeCapacity = ((QueueConfiguration)config).getFlowResumeCapacity();
-            }
-
-            _queueConfiguration = config;
-
+            setMaximumMessageAge(config.getMaximumMessageAge());
+            setMaximumQueueDepth(config.getMaximumQueueDepth());
+            setMaximumMessageSize(config.getMaximumMessageSize());
+            setMaximumMessageCount(config.getMaximumMessageCount());
+            setMinimumAlertRepeatGap(config.getMinimumAlertRepeatGap());
+            setMaximumDeliveryCount(config.getMaxDeliveryCount());
+            _capacity = config.getCapacity();
+            _flowResumeCapacity = config.getFlowResumeCapacity();
         }
     }
 
-
-    public ConfigurationPlugin getConfiguration()
-    {
-        return _queueConfiguration;
-    }
-
     public long getMessageDequeueCount()
     {
         return  _dequeueCount.get();

Modified: qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java?rev=1389451&r1=1389450&r2=1389451&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java (original)
+++ qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockAMQQueue.java Mon Sep 24 16:00:29 2012
@@ -23,6 +23,7 @@ package org.apache.qpid.server.queue;
 import org.apache.qpid.AMQException;
 import org.apache.qpid.framing.AMQShortString;
 import org.apache.qpid.server.binding.Binding;
+import org.apache.qpid.server.configuration.QueueConfiguration;
 import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
 import org.apache.qpid.server.exchange.Exchange;
 import org.apache.qpid.server.logging.LogSubject;
@@ -508,16 +509,11 @@ public class MockAMQQueue implements AMQ
 
     }
 
-    public void configure(ConfigurationPlugin config)
+    public void configure(QueueConfiguration config)
     {
 
     }
 
-    public ConfigurationPlugin getConfiguration()
-    {
-        return null;
-    }
-
     public AuthorizationHolder getAuthorizationHolder()
     {
         return _authorizationHolder;



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org