summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2008-04-21 15:57:15 +0000
committerRobert Godfrey <rgodfrey@apache.org>2008-04-21 15:57:15 +0000
commit1a7004fd9dab8306ec31b96d9d5e2d5a44256d98 (patch)
tree7e85c7ee134d3204726f4cc64f7dc5b15656eff8
parent9930676624d4c27f866c9d40227fd7c282f4dac2 (diff)
downloadqpid-python-1a7004fd9dab8306ec31b96d9d5e2d5a44256d98.tar.gz
remove duplicate check of interest in enqueue, enable new Queue by default
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/broker-queue-refactor@650179 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueFactory.java4
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java18
2 files changed, 7 insertions, 15 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueFactory.java b/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueFactory.java
index c2e53ea3c7..99da9c20fa 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueFactory.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/queue/AMQQueueFactory.java
@@ -34,7 +34,7 @@ public class AMQQueueFactory
VirtualHost virtualHost)
throws AMQException
{
- return new AMQQueueImpl(name, durable, owner, autoDelete, virtualHost);
- //return new SimpleAMQQueue(name, durable, owner, autoDelete, virtualHost);
+ //return new AMQQueueImpl(name, durable, owner, autoDelete, virtualHost);
+ return new SimpleAMQQueue(name, durable, owner, autoDelete, virtualHost);
}
}
diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
index b028d60b19..6dae7edb72 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
@@ -382,13 +382,11 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
Subscription sub = nextNode.getSubscription();
synchronized(sub.getSendLock())
{
- if(subscriptionReady(sub, entry)
+ if(subscriptionReadyAndHasInterest(sub, entry)
&& !sub.isSuspended()
&& sub.isActive())
{
- if( sub.hasInterest(entry) )
- {
if( !sub.wouldSuspend(entry))
{
if(!sub.isBrowser() && entry.acquire(sub))
@@ -406,15 +404,8 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
}
}
- }
- else
- {
- QueueEntryList.QueueEntryNode queueEntryNode = (QueueEntryList.QueueEntryNode) sub.getQueueContext();
- if(queueEntryNode.getNext() == entry)
- {
- sub.setQueueContext(queueEntryNode,entry);
- }
- }
+
+
}
}
}
@@ -456,7 +447,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
}
- private boolean subscriptionReady(final Subscription sub, final QueueEntry entry)
+ private boolean subscriptionReadyAndHasInterest(final Subscription sub, final QueueEntry entry)
{
QueueEntryList.QueueEntryNode node = (QueueEntryList.QueueEntryNode) sub.getQueueContext();
@@ -471,6 +462,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
}
else
{
+ node = null;
break;
}