[jboss-cvs] JBoss Messaging SVN: r3363 - branches/Branch_Stable/src/main/org/jboss/messaging/core/impl.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Mon Nov 26 09:03:22 EST 2007
Author: timfox
Date: 2007-11-26 09:03:22 -0500 (Mon, 26 Nov 2007)
New Revision: 3363
Modified:
branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/MessagingQueue.java
Log:
http://jira.jboss.org/jira/browse/JBMESSAGING-1159
Modified: branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/MessagingQueue.java
===================================================================
--- branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/MessagingQueue.java 2007-11-23 15:01:12 UTC (rev 3362)
+++ branches/Branch_Stable/src/main/org/jboss/messaging/core/impl/MessagingQueue.java 2007-11-26 14:03:22 UTC (rev 3363)
@@ -582,78 +582,60 @@
return distributor.handle(observer, reference, tx);
}
- public boolean add(Receiver receiver)
+ public synchronized boolean add(Receiver receiver)
{
if (trace) { log.trace(this + " attempting to add receiver " + receiver); }
+
+ boolean added = distributor.add(receiver);
+
+ if (trace) { log.trace("receiver " + receiver + (added ? "" : " NOT") + " added"); }
- synchronized (lock)
- {
- boolean added = distributor.add(receiver);
-
- if (trace) { log.trace("receiver " + receiver + (added ? "" : " NOT") + " added"); }
-
- setReceiversReady(true);
-
- return added;
- }
+ setReceiversReady(true);
+
+ return added;
}
public void clear()
{
- synchronized (lock)
- {
- distributor.clear();
- }
+ distributor.clear();
}
public boolean contains(Receiver receiver)
{
- synchronized (lock)
- {
- return distributor.contains(receiver);
- }
+ return distributor.contains(receiver);
}
public int getNumberOfReceivers()
{
- synchronized (lock)
- {
- return distributor.getNumberOfReceivers();
- }
+ return distributor.getNumberOfReceivers();
}
public Iterator iterator()
{
- synchronized (lock)
- {
- return distributor.iterator();
- }
+ return distributor.iterator();
}
- public boolean remove(Receiver receiver)
- {
- synchronized (lock)
- {
- boolean removed = distributor.remove(receiver);
-
- if (removed)
+ public synchronized boolean remove(Receiver receiver)
+ {
+ boolean removed = distributor.remove(receiver);
+
+ if (removed)
+ {
+ if (localDistributor.getNumberOfReceivers() == 0)
{
- if (localDistributor.getNumberOfReceivers() == 0)
+ //Stop pulling from other queues into this one.
+ informSuckers(false);
+
+ if (remoteDistributor.getNumberOfReceivers() == 0)
{
- //Stop pulling from other queues into this one.
- informSuckers(false);
-
- if (remoteDistributor.getNumberOfReceivers() == 0)
- {
- setReceiversReady(false);
- }
+ setReceiversReady(false);
}
- }
-
- if (trace) { log.trace(this + (removed ? " removed " : " did NOT remove ") + receiver); }
-
- return removed;
- }
+ }
+ }
+
+ if (trace) { log.trace(this + (removed ? " removed " : " did NOT remove ") + receiver); }
+
+ return removed;
}
}
More information about the jboss-cvs-commits
mailing list