You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2017/03/13 17:37:26 UTC

svn commit: r1786743 - /qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java

Author: orudyy
Date: Mon Mar 13 17:37:26 2017
New Revision: 1786743

URL: http://svn.apache.org/viewvc?rev=1786743&view=rev
Log:
QPID-7696: Check whether actor invoking  queue delete operation has 'unbind' privilege for queue bindings before proceeding with queue deletion

Modified:
    qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java

Modified: qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java?rev=1786743&r1=1786742&r2=1786743&view=diff
==============================================================================
--- qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java (original)
+++ qpid/java/branches/6.1.x/broker-core/src/main/java/org/apache/qpid/server/queue/AbstractQueue.java Mon Mar 13 17:37:26 2017
@@ -2005,12 +2005,16 @@ public abstract class AbstractQueue<X ex
     {
         // Check access
         authorise(Operation.DELETE);
+        final ArrayList<Binding<?>> bindingCopy = new ArrayList<>(_bindings);
+        for (Binding<?> binding: bindingCopy)
+        {
+            binding.authorise(Operation.DELETE);
+        }
 
         if (_deleted.compareAndSet(false, true))
         {
             final int queueDepthMessages = getQueueDepthMessages();
             final List<ListenableFuture<Void>> removeBindingFutures = new ArrayList<>(_bindings.size());
-            final ArrayList<Binding<?>> bindingCopy = new ArrayList<>(_bindings);
 
             // TODO - RG - Need to sort out bindings!
             for (Binding<?> b : bindingCopy)



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