You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2014/02/14 20:23:18 UTC

svn commit: r1568495 [8/8] - in /qpid/branches/java-broker-amqp-1-0-management/java: ./ amqp-1-0-common/src/main/java/org/apache/qpid/amqp_1_0/transport/ bdbstore/jmx/src/main/java/org/apache/qpid/server/store/berkeleydb/jmx/ bdbstore/jmx/src/test/java...

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/SendingLink_1_0.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/SendingLink_1_0.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/SendingLink_1_0.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/SendingLink_1_0.java Fri Feb 14 19:23:14 2014
@@ -30,9 +30,7 @@ import java.util.UUID;
 import java.util.concurrent.ConcurrentHashMap;
 
 import org.apache.log4j.Logger;
-import org.apache.qpid.AMQException;
-import org.apache.qpid.AMQInternalException;
-import org.apache.qpid.AMQSecurityException;
+import org.apache.qpid.server.security.QpidSecurityException;
 import org.apache.qpid.amqp_1_0.transport.DeliveryStateHandler;
 import org.apache.qpid.amqp_1_0.transport.LinkEndpoint;
 import org.apache.qpid.amqp_1_0.transport.SendingLinkEndpoint;
@@ -64,7 +62,9 @@ import org.apache.qpid.server.consumer.C
 import org.apache.qpid.server.txn.AutoCommitTransaction;
 import org.apache.qpid.server.txn.ServerTransaction;
 import org.apache.qpid.server.util.Action;
+import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
 import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.virtualhost.QueueExistsException;
 
 public class SendingLink_1_0 implements SendingLinkListener, Link_1_0, DeliveryStateHandler
 {
@@ -324,7 +324,7 @@ public class SendingLink_1_0 implements 
                                                         {
                                                             _vhost.removeQueue(tempQueue);
                                                         }
-                                                        catch (AMQException e)
+                                                        catch (QpidSecurityException e)
                                                         {
                                                             //TODO
                                                             _logger.error("Error removing queue", e);
@@ -348,20 +348,15 @@ public class SendingLink_1_0 implements 
 
                 qd = new QueueDestination(queue);
             }
-            catch (AMQSecurityException e)
+            catch (QpidSecurityException e)
             {
                 _logger.error("Security error", e);
-                throw new RuntimeException(e);
+                throw new ConnectionScopedRuntimeException(e);
             }
-            catch (AMQInternalException e)
+            catch (QueueExistsException e)
             {
-                _logger.error("Internal error", e);
-                throw new RuntimeException(e);
-            }
-            catch (AMQException e)
-            {
-                _logger.error("Error", e);
-                throw new RuntimeException(e);
+                _logger.error("A randomly generated temporary queue name collided with an existing queue",e);
+                throw new ConnectionScopedRuntimeException(e);
             }
 
 
@@ -372,7 +367,7 @@ public class SendingLink_1_0 implements 
         }
         else
         {
-            throw new RuntimeException("Unknown destination type");
+            throw new ConnectionScopedRuntimeException("Unknown destination type");
         }
 
         if(_target != null)
@@ -398,10 +393,21 @@ public class SendingLink_1_0 implements 
                                                messageFilter == null ? null : new SimpleFilterManager(messageFilter),
                                                Message_1_0.class, name, options);
             }
-            catch (AMQException e)
+            catch (QpidSecurityException e)
             {
                 //TODO
-                _logger.error("Error registering subscription", e);
+                _logger.info("Error registering subscription", e);
+                throw new ConnectionScopedRuntimeException(e);
+            }
+            catch (MessageSource.ExistingExclusiveConsumer e)
+            {
+                _logger.info("Cannot add a consumer to the destination as there is already an exclusive consumer");
+                throw new ConnectionScopedRuntimeException(e);
+            }
+            catch (MessageSource.ExistingConsumerPreventsExclusive e)
+            {
+                _logger.info("Cannot add an exclusive consumer to the destination as there is already a consumer");
+                throw new ConnectionScopedRuntimeException(e);
             }
         }
 
@@ -419,18 +425,7 @@ public class SendingLink_1_0 implements 
         // if not durable or close
         if(!TerminusDurability.UNSETTLED_STATE.equals(_durability))
         {
-
-            try
-            {
-
-                _consumer.close();
-
-            }
-            catch (AMQException e)
-            {
-                //TODO
-                _logger.error("Error unregistering subscription", e);
-            }
+            _consumer.close();
 
             Modified state = new Modified();
             state.setDeliveryFailed(true);
@@ -452,10 +447,10 @@ public class SendingLink_1_0 implements 
                 {
                     _vhost.removeQueue((AMQQueue)_queue);
                 }
-                catch(AMQException e)
+                catch (QpidSecurityException e)
                 {
                     //TODO
-                    _logger.error("Error removing queue", e);
+                    _logger.error("Error registering subscription", e);
                 }
             }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/Session_1_0.java Fri Feb 14 19:23:14 2014
@@ -36,8 +36,7 @@ import org.apache.qpid.amqp_1_0.type.tra
 import org.apache.qpid.amqp_1_0.type.transport.*;
 
 import org.apache.qpid.amqp_1_0.type.transport.Error;
-import org.apache.qpid.AMQException;
-import org.apache.qpid.AMQSecurityException;
+import org.apache.qpid.server.security.QpidSecurityException;
 import org.apache.qpid.protocol.AMQConstant;
 import org.apache.qpid.server.exchange.Exchange;
 import org.apache.qpid.server.logging.LogSubject;
@@ -51,7 +50,9 @@ import org.apache.qpid.server.queue.AMQQ
 import org.apache.qpid.server.txn.AutoCommitTransaction;
 import org.apache.qpid.server.txn.ServerTransaction;
 import org.apache.qpid.server.util.Action;
+import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
 import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.virtualhost.QueueExistsException;
 
 import java.util.*;
 
@@ -357,7 +358,7 @@ public class Session_1_0 implements Sess
                                     {
                                         _vhost.removeQueue(tempQueue);
                                     }
-                                    catch (AMQException e)
+                                    catch (QpidSecurityException e)
                                     {
                                         //TODO
                                         _logger.error("Error removing queue from vhost", e);
@@ -391,15 +392,16 @@ public class Session_1_0 implements Sess
 
             }
         }
-        catch (AMQSecurityException e)
+        catch (QpidSecurityException e)
         {
             //TODO
-            _logger.error("Security error", e);
+            _logger.info("Security error", e);
+            throw new ConnectionScopedRuntimeException(e);
         }
-        catch (AMQException e)
+        catch (QueueExistsException e)
         {
-            //TODO
-            _logger.error("Error", e);
+            _logger.error("A temporary queue was created with a name which collided with an existing queue name");
+            throw new ConnectionScopedRuntimeException(e);
         }
 
         return queue;
@@ -485,14 +487,14 @@ public class Session_1_0 implements Sess
     }
 
     @Override
-    public void close() throws AMQException
+    public void close()
     {
         // TODO - required for AMQSessionModel / management initiated closing
     }
 
 
     @Override
-    public void close(AMQConstant cause, String message) throws AMQException
+    public void close(AMQConstant cause, String message)
     {
         // TODO - required for AMQSessionModel
     }
@@ -504,7 +506,7 @@ public class Session_1_0 implements Sess
     }
 
     @Override
-    public void checkTransactionStatus(long openWarn, long openClose, long idleWarn, long idleClose) throws AMQException
+    public void checkTransactionStatus(long openWarn, long openClose, long idleWarn, long idleClose)
     {
         // TODO - required for AMQSessionModel / long running transaction detection
     }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbyMessageStore.java Fri Feb 14 19:23:14 2014
@@ -40,6 +40,7 @@ import org.apache.qpid.server.store.Even
 import org.apache.qpid.server.store.EventListener;
 import org.apache.qpid.server.store.MessageStore;
 import org.apache.qpid.server.store.MessageStoreConstants;
+import org.apache.qpid.server.store.StoreException;
 import org.apache.qpid.util.FileUtils;
 
 /**
@@ -99,7 +100,7 @@ public class DerbyMessageStore extends A
         return "bigint";
     }
 
-    protected void doClose() throws SQLException
+    protected void doClose()
     {
         try
         {
@@ -117,7 +118,7 @@ public class DerbyMessageStore extends A
             else
             {
                 getLogger().error("Exception whilst shutting down the store: " + e);
-                throw e;
+                throw new StoreException("Error closing message store", e);
             }
         }
     }
@@ -307,7 +308,7 @@ public class DerbyMessageStore extends A
                 catch (SQLException e)
                 {
                     closeConnection(conn);
-                    throw new RuntimeException("Exception while processing store size change", e);
+                    throw new StoreException("Exception while processing store size change", e);
                 }
             }
         }
@@ -359,7 +360,7 @@ public class DerbyMessageStore extends A
         catch (SQLException e)
         {
             closeConnection(conn);
-            throw new RuntimeException("Error reducing on disk size", e);
+            throw new StoreException("Error reducing on disk size", e);
         }
         finally
         {
@@ -407,7 +408,7 @@ public class DerbyMessageStore extends A
         catch (SQLException e)
         {
             closeConnection(conn);
-            throw new RuntimeException("Error establishing on disk size", e);
+            throw new StoreException("Error establishing on disk size", e);
         }
         finally
         {

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCMessageStore.java Fri Feb 14 19:23:14 2014
@@ -30,11 +30,11 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.CopyOnWriteArrayList;
 import org.apache.log4j.Logger;
-import org.apache.qpid.AMQStoreException;
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.plugin.JDBCConnectionProviderFactory;
 import org.apache.qpid.server.store.AbstractJDBCMessageStore;
 import org.apache.qpid.server.store.MessageStore;
+import org.apache.qpid.server.store.StoreException;
 import org.apache.qpid.server.store.StoreFuture;
 import org.apache.qpid.server.store.Transaction;
 
@@ -252,7 +252,7 @@ public class JDBCMessageStore extends Ab
     }
 
     @Override
-    protected void doClose() throws AMQStoreException
+    protected void doClose()
     {
         while(!_transactions.isEmpty())
         {
@@ -265,7 +265,7 @@ public class JDBCMessageStore extends Ab
         }
         catch (SQLException e)
         {
-            throw new AMQStoreException("Unable to close connection provider ", e);
+            throw new StoreException("Unable to close connection provider ", e);
         }
     }
 
@@ -430,7 +430,7 @@ public class JDBCMessageStore extends Ab
         }
 
         @Override
-        public void commitTran() throws AMQStoreException
+        public void commitTran()
         {
             try
             {
@@ -443,7 +443,7 @@ public class JDBCMessageStore extends Ab
         }
 
         @Override
-        public StoreFuture commitTranAsync() throws AMQStoreException
+        public StoreFuture commitTranAsync()
         {
             try
             {
@@ -456,7 +456,7 @@ public class JDBCMessageStore extends Ab
         }
 
         @Override
-        public void abortTran() throws AMQStoreException
+        public void abortTran()
         {
             try
             {

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java Fri Feb 14 19:23:14 2014
@@ -20,8 +20,7 @@
  */
 package org.apache.qpid.server.management.amqp;
 
-import org.apache.qpid.AMQException;
-import org.apache.qpid.AMQSecurityException;
+import org.apache.qpid.server.security.QpidSecurityException;
 import org.apache.qpid.server.consumer.Consumer;
 import org.apache.qpid.server.consumer.ConsumerTarget;
 import org.apache.qpid.server.filter.FilterManager;
@@ -373,7 +372,7 @@ class ManagementNode implements MessageS
                         }
                         catch(RuntimeException e)
                         {
-                            if (e instanceof AccessControlException || e.getCause() instanceof AMQSecurityException)
+                            if (e instanceof AccessControlException || e.getCause() instanceof QpidSecurityException)
                             {
                                 response = createFailureResponse(message, STATUS_CODE_FORBIDDEN, e.getMessage());
                             }
@@ -478,7 +477,7 @@ class ManagementNode implements MessageS
         }
         catch(RuntimeException e)
         {
-            if (e instanceof AccessControlException || e.getCause() instanceof AMQSecurityException)
+            if (e instanceof AccessControlException || e.getCause() instanceof QpidSecurityException)
             {
                 responseHeader.setHeader(STATUS_CODE_HEADER, STATUS_CODE_FORBIDDEN);
             }
@@ -516,7 +515,7 @@ class ManagementNode implements MessageS
             }
             catch(RuntimeException e)
             {
-                if (e instanceof AccessControlException || e.getCause() instanceof AMQSecurityException)
+                if (e instanceof AccessControlException || e.getCause() instanceof QpidSecurityException)
                 {
                     return createFailureResponse(requestMessage, STATUS_CODE_FORBIDDEN, e.getMessage());
                 }
@@ -940,7 +939,7 @@ class ManagementNode implements MessageS
                                 final FilterManager filters,
                                 final Class<? extends ServerMessage> messageClass,
                                 final String consumerName,
-                                final EnumSet<Consumer.Option> options) throws AMQException
+                                final EnumSet<Consumer.Option> options)
     {
 
         final ManagementNodeConsumer managementNodeConsumer = new ManagementNodeConsumer(consumerName,this, target);
@@ -1111,7 +1110,7 @@ class ManagementNode implements MessageS
         }
 
         @Override
-        public boolean expired() throws AMQException
+        public boolean expired()
         {
             return false;
         }
@@ -1167,7 +1166,7 @@ class ManagementNode implements MessageS
         }
 
         @Override
-        public boolean resend() throws AMQException
+        public boolean resend()
         {
             return false;
         }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNodeConsumer.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNodeConsumer.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNodeConsumer.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNodeConsumer.java Fri Feb 14 19:23:14 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.server.management.amqp;
 
-import org.apache.qpid.AMQException;
 import org.apache.qpid.server.consumer.Consumer;
 import org.apache.qpid.server.consumer.ConsumerTarget;
 import org.apache.qpid.server.message.internal.InternalMessage;
@@ -124,7 +123,7 @@ class ManagementNodeConsumer implements 
     }
 
     @Override
-    public void close() throws AMQException
+    public void close()
     {
 
     }
@@ -161,7 +160,7 @@ class ManagementNodeConsumer implements 
     }
 
     @Override
-    public void flush() throws AMQException
+    public void flush()
     {
 
     }
@@ -186,10 +185,6 @@ class ManagementNodeConsumer implements 
                 _queue.add(responseEntry);
             }
         }
-        catch (AMQException e)
-        {
-            e.printStackTrace();
-        }
         finally
         {
             releaseSendLock();
@@ -230,10 +225,6 @@ class ManagementNodeConsumer implements 
                 }
             }
         }
-        catch (AMQException e)
-        {
-            throw new RuntimeException(e);
-        }
         finally
         {
             releaseSendLock();

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementResponse.java Fri Feb 14 19:23:14 2014
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.server.management.amqp;
 
-import org.apache.qpid.AMQException;
 import org.apache.qpid.server.consumer.Consumer;
 import org.apache.qpid.server.filter.Filterable;
 import org.apache.qpid.server.message.InstanceProperties;
@@ -127,7 +126,7 @@ class ManagementResponse implements Mess
     }
 
     @Override
-    public boolean expired() throws AMQException
+    public boolean expired()
     {
         return false;
     }
@@ -183,7 +182,7 @@ class ManagementResponse implements Mess
     }
 
     @Override
-    public boolean resend() throws AMQException
+    public boolean resend()
     {
         return false;
     }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java Fri Feb 14 19:23:14 2014
@@ -76,6 +76,7 @@ import org.apache.qpid.server.model.Virt
 import org.apache.qpid.server.model.adapter.AbstractPluginAdapter;
 import org.apache.qpid.server.plugin.PluginFactory;
 import org.apache.qpid.server.util.MapValueConverter;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 import org.apache.qpid.transport.network.security.ssl.QpidMultipleTrustManager;
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Server;
@@ -181,7 +182,7 @@ public class HttpManagement extends Abst
         }
         catch (Exception e)
         {
-            throw new RuntimeException("Failed to start HTTP management on ports : " + httpPorts, e);
+            throw new ServerScopedRuntimeException("Failed to start HTTP management on ports : " + httpPorts, e);
         }
 
         CurrentActor.get().message(ManagementConsoleMessages.READY(OPERATIONAL_LOGGING_NAME));
@@ -198,7 +199,7 @@ public class HttpManagement extends Abst
             }
             catch (Exception e)
             {
-                throw new RuntimeException("Failed to stop HTTP management on ports : " + getHttpPorts(getBroker().getPorts()), e);
+                throw new ServerScopedRuntimeException("Failed to stop HTTP management on ports : " + getHttpPorts(getBroker().getPorts()), e);
             }
         }
 
@@ -310,7 +311,7 @@ public class HttpManagement extends Abst
                 }
                 catch (GeneralSecurityException e)
                 {
-                    throw new RuntimeException("Cannot configure port " + port.getName() + " for transport " + Transport.SSL, e);
+                    throw new ServerScopedRuntimeException("Cannot configure port " + port.getName() + " for transport " + Transport.SSL, e);
                 }
                 connector = new SslSocketConnector(factory);
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementUtil.java Fri Feb 14 19:23:14 2014
@@ -50,6 +50,7 @@ import org.apache.qpid.server.security.a
 import org.apache.qpid.server.security.auth.UsernamePrincipal;
 import org.apache.qpid.server.security.auth.manager.ExternalAuthenticationManager;
 import org.apache.qpid.server.security.auth.manager.ExternalAuthenticationManagerFactory;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 import org.apache.qpid.transport.network.security.ssl.SSLUtil;
 
 public class HttpManagementUtil
@@ -138,7 +139,7 @@ public class HttpManagementUtil
             }
             catch (PrivilegedActionException e)
             {
-                throw new RuntimeException("Unable to perform access check", e);
+                throw new ServerScopedRuntimeException("Unable to perform access check", e);
             }
         }
         finally

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/AbstractServlet.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/AbstractServlet.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/AbstractServlet.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/AbstractServlet.java Fri Feb 14 19:23:14 2014
@@ -40,6 +40,7 @@ import org.apache.qpid.server.management
 import org.apache.qpid.server.management.plugin.HttpManagementUtil;
 import org.apache.qpid.server.model.Broker;
 import org.apache.qpid.server.security.SecurityManager;
+import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
 import org.codehaus.jackson.JsonGenerationException;
 import org.codehaus.jackson.map.JsonMappingException;
 import org.codehaus.jackson.map.ObjectMapper;
@@ -214,7 +215,16 @@ public abstract class AbstractServlet ex
             catch (PrivilegedActionException e)
             {
                 LOGGER.error("Unable to perform action", e);
-                throw new RuntimeException(e.getCause());
+                Throwable cause = e.getCause();
+                if(cause instanceof RuntimeException)
+                {
+                    throw (RuntimeException)cause;
+                }
+                if(cause instanceof Error)
+                {
+                    throw (Error)cause;
+                }
+                throw new ConnectionScopedRuntimeException(e.getCause());
             }
             finally
             {
@@ -255,7 +265,7 @@ public abstract class AbstractServlet ex
         }
         catch (IOException e)
         {
-            throw new RuntimeException("Failed to send error response code " + errorCode, e);
+            throw new ConnectionScopedRuntimeException("Failed to send error response code " + errorCode, e);
         }
     }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/RestServlet.java Fri Feb 14 19:23:14 2014
@@ -27,7 +27,7 @@ import javax.servlet.http.HttpServletReq
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.log4j.Logger;
-import org.apache.qpid.AMQSecurityException;
+import org.apache.qpid.server.security.QpidSecurityException;
 import org.apache.qpid.server.model.*;
 import org.codehaus.jackson.map.ObjectMapper;
 import org.codehaus.jackson.map.SerializationConfig;
@@ -498,7 +498,7 @@ public class RestServlet extends Abstrac
 
     private void setResponseStatus(HttpServletResponse response, RuntimeException e) throws IOException
     {
-        if (e instanceof AccessControlException || e.getCause() instanceof AMQSecurityException)
+        if (e instanceof AccessControlException || e.getCause() instanceof QpidSecurityException)
         {
             if (LOGGER.isDebugEnabled())
             {

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/rest/SaslServlet.java Fri Feb 14 19:23:14 2014
@@ -21,6 +21,7 @@
 package org.apache.qpid.server.management.plugin.servlet.rest;
 
 import org.apache.commons.codec.binary.Base64;
+import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
 import org.codehaus.jackson.map.ObjectMapper;
 import org.codehaus.jackson.map.SerializationConfig;
 
@@ -210,7 +211,7 @@ public class SaslServlet extends Abstrac
         }
         if (!saslAuthEnabled)
         {
-            throw new RuntimeException("Sasl authentication disabled.");
+            throw new ConnectionScopedRuntimeException("Sasl authentication disabled.");
         }
     }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java Fri Feb 14 19:23:14 2014
@@ -31,6 +31,7 @@ import org.apache.qpid.server.model.Port
 import org.apache.qpid.server.model.Transport;
 
 import org.apache.qpid.server.security.auth.jmx.JMXPasswordAuthenticator;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 import org.apache.qpid.ssl.SSLContextFactory;
 
 import javax.management.JMException;
@@ -134,7 +135,7 @@ public class JMXManagedObjectRegistry im
             }
             catch (GeneralSecurityException e)
             {
-                throw new RuntimeException("Unable to create SSLContext for key store", e);
+                throw new ServerScopedRuntimeException("Unable to create SSLContext for key store", e);
             }
 
             CurrentActor.get().message(ManagementConsoleMessages.SSL_KEYSTORE(keyStore.getName()));

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java Fri Feb 14 19:23:14 2014
@@ -54,6 +54,7 @@ import org.apache.qpid.server.model.adap
 import org.apache.qpid.server.plugin.PluginFactory;
 import org.apache.qpid.server.plugin.QpidServiceLoader;
 import org.apache.qpid.server.util.MapValueConverter;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 
 public class JMXManagement extends AbstractPluginAdapter implements ConfigurationChangeListener
 {
@@ -110,7 +111,7 @@ public class JMXManagement extends Abstr
             }
             catch (Exception e)
             {
-                throw new RuntimeException("Couldn't start JMX management", e);
+                throw new ServerScopedRuntimeException("Couldn't start JMX management", e);
             }
             return true;
         }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ConnectionMBean.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ConnectionMBean.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ConnectionMBean.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ConnectionMBean.java Fri Feb 14 19:23:14 2014
@@ -40,6 +40,7 @@ import org.apache.qpid.server.jmx.Manage
 import org.apache.qpid.server.model.Connection;
 import org.apache.qpid.server.model.Session;
 import org.apache.qpid.server.model.Statistics;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 
 public class ConnectionMBean extends AbstractStatisticsGatheringMBean<Connection> implements ManagedConnection
 {
@@ -60,7 +61,7 @@ public class ConnectionMBean extends Abs
         catch (JMException ex)
         {
             // This is not expected to ever occur.
-            throw new RuntimeException("Got JMException in static initializer.", ex);
+            throw new ServerScopedRuntimeException("Got JMException in static initializer.", ex);
         }
     }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ExchangeMBean.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ExchangeMBean.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ExchangeMBean.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/ExchangeMBean.java Fri Feb 14 19:23:14 2014
@@ -29,6 +29,7 @@ import org.apache.qpid.server.model.Exch
 import org.apache.qpid.server.model.LifetimePolicy;
 import org.apache.qpid.server.model.Queue;
 import org.apache.qpid.server.model.VirtualHost;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 
 import javax.management.JMException;
 import javax.management.MalformedObjectNameException;
@@ -106,7 +107,7 @@ public class ExchangeMBean extends AMQMa
         }
         catch(OpenDataException e)
         {
-            throw new RuntimeException("Unexpected Error creating ArrayType", e);
+            throw new ServerScopedRuntimeException("Unexpected Error creating ArrayType", e);
         }
     }
     

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/LoggingManagementMBean.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/LoggingManagementMBean.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/LoggingManagementMBean.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/LoggingManagementMBean.java Fri Feb 14 19:23:14 2014
@@ -28,6 +28,7 @@ import org.apache.qpid.server.jmx.Manage
 import org.apache.qpid.server.jmx.ManagedObjectRegistry;
 import org.apache.qpid.server.logging.log4j.LoggingManagementFacade;
 import org.apache.qpid.server.logging.log4j.LoggingFacadeException;
+import org.apache.qpid.server.util.ConnectionScopedRuntimeException;
 
 import javax.management.JMException;
 import javax.management.openmbean.CompositeData;
@@ -314,7 +315,7 @@ public class LoggingManagementMBean exte
         catch (OpenDataException ode)
         {
             // Should not happen
-            throw new RuntimeException(ode);
+            throw new ConnectionScopedRuntimeException(ode);
         }
     }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/QueueMBean.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/QueueMBean.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/QueueMBean.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/mbeans/QueueMBean.java Fri Feb 14 19:23:14 2014
@@ -57,6 +57,7 @@ import org.apache.qpid.server.model.Virt
 import org.apache.qpid.server.queue.NotificationCheck;
 import org.apache.qpid.server.queue.QueueEntry;
 import org.apache.qpid.server.queue.QueueEntryVisitor;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 
 public class QueueMBean extends AMQManagedObject implements ManagedQueue, QueueNotificationListener
 {
@@ -109,7 +110,7 @@ public class QueueMBean extends AMQManag
         }
         catch (OpenDataException e)
         {
-            throw new RuntimeException(e);
+            throw new ServerScopedRuntimeException(e);
         }
     }
 

Modified: qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/broker-plugins/websocket/src/main/java/org/apache/qpid/server/transport/websocket/WebSocketProvider.java Fri Feb 14 19:23:14 2014
@@ -28,6 +28,7 @@ import org.apache.qpid.server.model.Tran
 import org.apache.qpid.server.protocol.AmqpProtocolVersion;
 import org.apache.qpid.server.protocol.MultiVersionProtocolEngineFactory;
 import org.apache.qpid.server.transport.AcceptingTransport;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 import org.apache.qpid.transport.Binary;
 import org.apache.qpid.transport.Sender;
 import org.apache.qpid.transport.network.NetworkConnection;
@@ -144,9 +145,13 @@ class WebSocketProvider implements Accep
         {
             _server.start();
         }
+        catch(RuntimeException e)
+        {
+            throw e;
+        }
         catch (Exception e)
         {
-            throw new RuntimeException(e);
+            throw new ServerScopedRuntimeException(e);
         }
 
     }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/MessageStoreTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/MessageStoreTest.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/MessageStoreTest.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/MessageStoreTest.java Fri Feb 14 19:23:14 2014
@@ -51,6 +51,7 @@ import org.apache.qpid.server.queue.Prio
 import org.apache.qpid.server.queue.AMQQueue;
 import org.apache.qpid.server.queue.ConflationQueue;
 import org.apache.qpid.server.queue.StandardQueue;
+import org.apache.qpid.server.security.QpidSecurityException;
 import org.apache.qpid.server.txn.AutoCommitTransaction;
 import org.apache.qpid.server.txn.ServerTransaction;
 import org.apache.qpid.server.util.BrokerTestHelper;
@@ -630,7 +631,7 @@ public class MessageStoreTest extends Qp
 
     }
 
-    private void createAllQueues()
+    private void createAllQueues() throws Exception
     {
         //Register Durable Priority Queue
         createQueue(durablePriorityQueueName, true, true, false, false);
@@ -651,7 +652,7 @@ public class MessageStoreTest extends Qp
         createQueue(queueName, false, false, false, false);
     }
 
-    private void createAllTopicQueues()
+    private void createAllTopicQueues() throws Exception
     {
         //Register Durable Priority Queue
         createQueue(durablePriorityTopicQueueName, true, true, false, false);
@@ -667,6 +668,7 @@ public class MessageStoreTest extends Qp
     }
 
     private void createQueue(String queueName, boolean usePriority, boolean durable, boolean exclusive, boolean lastValueQueue)
+            throws Exception
     {
 
         Map<String,Object> queueArguments = null;
@@ -689,22 +691,16 @@ public class MessageStoreTest extends Qp
         AMQQueue queue = null;
 
         //Ideally we would be able to use the QueueDeclareHandler here.
-        try
-        {
-            queue = getVirtualHost().createQueue(UUIDGenerator.generateRandomUUID(), queueName, durable, queueOwner, false, exclusive,
-                    false, queueArguments);
+        queue = getVirtualHost().createQueue(UUIDGenerator.generateRandomUUID(), queueName, durable, queueOwner, false, exclusive,
+                false, queueArguments);
+
+        validateQueueProperties(queue, usePriority, durable, exclusive, lastValueQueue);
 
-            validateQueueProperties(queue, usePriority, durable, exclusive, lastValueQueue);
 
-        }
-        catch (AMQException e)
-        {
-            fail(e.getMessage());
-        }
 
     }
 
-    private Map<String, Exchange> createExchanges()
+    private Map<String, Exchange> createExchanges() throws Exception
     {
         Map<String, Exchange> exchanges = new HashMap<String, Exchange>();
 
@@ -718,18 +714,11 @@ public class MessageStoreTest extends Qp
         return exchanges;
     }
 
-    private Exchange createExchange(ExchangeType<?> type, String name, boolean durable)
+    private Exchange createExchange(ExchangeType<?> type, String name, boolean durable) throws Exception
     {
         Exchange exchange = null;
 
-        try
-        {
-            exchange = getVirtualHost().createExchange(null, name, type.getType(), durable, false, null);
-        }
-        catch (AMQException e)
-        {
-            fail(e.getMessage());
-        }
+        exchange = getVirtualHost().createExchange(null, name, type.getType(), durable, false, null);
 
         return exchange;
     }

Modified: qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/QuotaMessageStore.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/QuotaMessageStore.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/QuotaMessageStore.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/QuotaMessageStore.java Fri Feb 14 19:23:14 2014
@@ -23,7 +23,6 @@ package org.apache.qpid.server.store;
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicLong;
 
-import org.apache.qpid.AMQStoreException;
 import org.apache.qpid.server.message.EnqueueableMessage;
 import org.apache.qpid.server.message.MessageContentSource;
 import org.apache.qpid.server.model.VirtualHost;
@@ -49,7 +48,6 @@ public class
 
     @Override
     public void configureConfigStore(VirtualHost virtualHost, ConfigurationRecoveryHandler recoveryHandler)
-            throws Exception
     {
         Object overfullAttr = virtualHost.getAttribute(MessageStoreConstants.OVERFULL_SIZE_ATTRIBUTE);
         _persistentSizeHighThreshold = overfullAttr == null
@@ -76,13 +74,13 @@ public class
 
     @Override
     public void configureMessageStore(VirtualHost virtualHost, MessageStoreRecoveryHandler recoveryHandler,
-                                      TransactionLogRecoveryHandler tlogRecoveryHandler) throws Exception
+                                      TransactionLogRecoveryHandler tlogRecoveryHandler)
     {
         _stateManager.attainState(State.INITIALISED);
     }
 
     @Override
-    public void activate() throws Exception
+    public void activate()
     {
         _stateManager.attainState(State.ACTIVATING);
         _stateManager.attainState(State.ACTIVE);
@@ -104,32 +102,32 @@ public class
             private AtomicLong _storeSizeIncrease = new AtomicLong();
 
             @Override
-            public StoreFuture commitTranAsync() throws AMQStoreException
+            public StoreFuture commitTranAsync()
             {
                 QuotaMessageStore.this.storedSizeChange(_storeSizeIncrease.intValue());
                 return StoreFuture.IMMEDIATE_FUTURE;
             }
 
             @Override
-            public void enqueueMessage(TransactionLogResource queue, EnqueueableMessage message) throws AMQStoreException
+            public void enqueueMessage(TransactionLogResource queue, EnqueueableMessage message)
             {
                 _storeSizeIncrease.addAndGet(((MessageContentSource)message).getSize());
             }
 
             @Override
-            public void dequeueMessage(TransactionLogResource  queue, EnqueueableMessage message) throws AMQStoreException
+            public void dequeueMessage(TransactionLogResource  queue, EnqueueableMessage message)
             {
                 _storeSizeIncrease.addAndGet(-((MessageContentSource)message).getSize());
             }
 
             @Override
-            public void commitTran() throws AMQStoreException
+            public void commitTran()
             {
                 QuotaMessageStore.this.storedSizeChange(_storeSizeIncrease.intValue());
             }
 
             @Override
-            public void abortTran() throws AMQStoreException
+            public void abortTran()
             {
             }
 
@@ -152,7 +150,7 @@ public class
     }
 
     @Override
-    public void close() throws Exception
+    public void close()
     {
         if (_closed.compareAndSet(false, true))
         {

Modified: qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java?rev=1568495&r1=1568494&r2=1568495&view=diff
==============================================================================
--- qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java (original)
+++ qpid/branches/java-broker-amqp-1-0-management/java/systests/src/main/java/org/apache/qpid/server/store/SlowMessageStore.java Fri Feb 14 19:23:14 2014
@@ -25,10 +25,10 @@ import java.util.Map;
 import java.util.UUID;
 import org.apache.log4j.Logger;
 
-import org.apache.qpid.AMQStoreException;
 import org.apache.qpid.server.message.EnqueueableMessage;
 import org.apache.qpid.server.message.ServerMessage;
 import org.apache.qpid.server.model.VirtualHost;
+import org.apache.qpid.server.util.ServerScopedRuntimeException;
 
 import java.nio.ByteBuffer;
 import java.util.HashMap;
@@ -48,7 +48,7 @@ public class SlowMessageStore implements
 
     // ***** MessageStore Interface.
 
-    public void configureConfigStore(VirtualHost virtualHost, ConfigurationRecoveryHandler recoveryHandler) throws Exception
+    public void configureConfigStore(VirtualHost virtualHost, ConfigurationRecoveryHandler recoveryHandler)
     {
         _logger.info("Starting SlowMessageStore on Virtualhost:" + virtualHost.getName());
 
@@ -67,19 +67,34 @@ public class SlowMessageStore implements
 
         if (messageStoreClass != null)
         {
-            Class<?> clazz = Class.forName(messageStoreClass);
+            try
+            {
+                Class<?> clazz = Class.forName(messageStoreClass);
 
-            Object o = clazz.newInstance();
+                Object o = clazz.newInstance();
 
-            if (!(o instanceof MessageStore))
+                if (!(o instanceof MessageStore))
+                {
+                    throw new ClassCastException("Message store class must implement " + MessageStore.class + ". Class " + clazz +
+                                                 " does not.");
+                }
+                _realStore = (MessageStore) o;
+                if(o instanceof DurableConfigurationStore)
+                {
+                    _durableConfigurationStore = (DurableConfigurationStore)o;
+                }
+            }
+            catch (ClassNotFoundException e)
+            {
+                throw new ServerScopedRuntimeException("Unable to find message store class", e);
+            }
+            catch (InstantiationException e)
             {
-                throw new ClassCastException("Message store class must implement " + MessageStore.class + ". Class " + clazz +
-                                             " does not.");
+                throw new ServerScopedRuntimeException("Unable to initialise message store class", e);
             }
-            _realStore = (MessageStore) o;
-            if(o instanceof DurableConfigurationStore)
+            catch (IllegalAccessException e)
             {
-                _durableConfigurationStore = (DurableConfigurationStore)o;
+                throw new ServerScopedRuntimeException("Unable to access message store class", e);
             }
         }
         _durableConfigurationStore.configureConfigStore(virtualHost, recoveryHandler);
@@ -152,12 +167,12 @@ public class SlowMessageStore implements
 
 
     public void configureMessageStore(VirtualHost virtualHost, MessageStoreRecoveryHandler messageRecoveryHandler,
-                                      TransactionLogRecoveryHandler tlogRecoveryHandler) throws Exception
+                                      TransactionLogRecoveryHandler tlogRecoveryHandler)
     {
         _realStore.configureMessageStore(virtualHost, messageRecoveryHandler, tlogRecoveryHandler);
     }
 
-    public void close() throws Exception
+    public void close()
     {
         doPreDelay("close");
         _realStore.close();
@@ -171,7 +186,7 @@ public class SlowMessageStore implements
 
 
     @Override
-    public void create(UUID id, String type, Map<String, Object> attributes) throws AMQStoreException
+    public void create(UUID id, String type, Map<String, Object> attributes) throws StoreException
     {
         doPreDelay("create");
         _durableConfigurationStore.create(id, type, attributes);
@@ -179,7 +194,7 @@ public class SlowMessageStore implements
     }
 
     @Override
-    public void remove(UUID id, String type) throws AMQStoreException
+    public void remove(UUID id, String type) throws StoreException
     {
         doPreDelay("remove");
         _durableConfigurationStore.remove(id, type);
@@ -187,7 +202,7 @@ public class SlowMessageStore implements
     }
 
     @Override
-    public UUID[] removeConfiguredObjects(final UUID... objects) throws AMQStoreException
+    public UUID[] removeConfiguredObjects(final UUID... objects) throws StoreException
     {
         doPreDelay("remove");
         UUID[] removed = _durableConfigurationStore.removeConfiguredObjects(objects);
@@ -196,7 +211,7 @@ public class SlowMessageStore implements
     }
 
     @Override
-    public void update(UUID id, String type, Map<String, Object> attributes) throws AMQStoreException
+    public void update(UUID id, String type, Map<String, Object> attributes) throws StoreException
     {
         doPreDelay("update");
         _durableConfigurationStore.update(id, type, attributes);
@@ -204,7 +219,7 @@ public class SlowMessageStore implements
     }
 
     @Override
-    public void update(ConfiguredObjectRecord... records) throws AMQStoreException
+    public void update(ConfiguredObjectRecord... records) throws StoreException
     {
         doPreDelay("update");
         _durableConfigurationStore.update(records);
@@ -212,7 +227,7 @@ public class SlowMessageStore implements
     }
 
     @Override
-    public void update(boolean createIfNecessary, ConfiguredObjectRecord... records) throws AMQStoreException
+    public void update(boolean createIfNecessary, ConfiguredObjectRecord... records) throws StoreException
     {
         doPreDelay("update");
         _durableConfigurationStore.update(createIfNecessary, records);
@@ -258,7 +273,6 @@ public class SlowMessageStore implements
         }
 
         public void enqueueMessage(TransactionLogResource queue, EnqueueableMessage message)
-                throws AMQStoreException
         {
             doPreDelay("enqueueMessage");
             _underlying.enqueueMessage(queue, message);
@@ -266,7 +280,6 @@ public class SlowMessageStore implements
         }
 
         public void dequeueMessage(TransactionLogResource queue, EnqueueableMessage message)
-                throws AMQStoreException
         {
             doPreDelay("dequeueMessage");
             _underlying.dequeueMessage(queue, message);
@@ -274,7 +287,6 @@ public class SlowMessageStore implements
         }
 
         public void commitTran()
-                throws AMQStoreException
         {
             doPreDelay("commitTran");
             _underlying.commitTran();
@@ -282,7 +294,6 @@ public class SlowMessageStore implements
         }
 
         public StoreFuture commitTranAsync()
-                throws AMQStoreException
         {
             doPreDelay("commitTran");
             StoreFuture future = _underlying.commitTranAsync();
@@ -291,27 +302,25 @@ public class SlowMessageStore implements
         }
 
         public void abortTran()
-                throws AMQStoreException
         {
             doPreDelay("abortTran");
             _underlying.abortTran();
             doPostDelay("abortTran");
         }
 
-        public void removeXid(long format, byte[] globalId, byte[] branchId) throws AMQStoreException
+        public void removeXid(long format, byte[] globalId, byte[] branchId)
         {
             _underlying.removeXid(format, globalId, branchId);
         }
 
         public void recordXid(long format, byte[] globalId, byte[] branchId, Record[] enqueues, Record[] dequeues)
-                throws AMQStoreException
         {
             _underlying.recordXid(format, globalId, branchId, enqueues, dequeues);
         }
     }
 
     @Override
-    public void activate() throws Exception
+    public void activate()
     {
        _realStore.activate();
     }



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