[jboss-svn-commits] JBL Code SVN: r16102 - labs/jbossesb/workspace/bramley/product/rosetta/src/org/jboss/internal/soa/esb/couriers.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Fri Oct 26 15:09:02 EDT 2007
Author: mark.little at jboss.com
Date: 2007-10-26 15:09:02 -0400 (Fri, 26 Oct 2007)
New Revision: 16102
Modified:
labs/jbossesb/workspace/bramley/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java
Log:
performance improvement.
Modified: labs/jbossesb/workspace/bramley/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java
===================================================================
--- labs/jbossesb/workspace/bramley/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java 2007-10-26 18:59:29 UTC (rev 16101)
+++ labs/jbossesb/workspace/bramley/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java 2007-10-26 19:09:02 UTC (rev 16102)
@@ -219,9 +219,16 @@
synchronized (_queue)
{
- semaphoreMessage = new Vector<Message>();
+ semaphoreMessage = _queue.get(_epr.getServiceId());
+
+ if (semaphoreMessage == null)
+ {
+ semaphoreMessage = new Vector<Message>();
+ _queue.put(_epr.getServiceId(), semaphoreMessage);
+ }
+
semaphoreMessage.add(message);
- _queue.put(_epr.getServiceId(), semaphoreMessage);
+
_queue.notify();
}
@@ -253,7 +260,7 @@
{
synchronized (_queue)
{
- semaphoreMessage = _queue.remove(_epr.getServiceId());
+ semaphoreMessage = _queue.get(_epr.getServiceId());
if ((semaphoreMessage == null) || (semaphoreMessage.size() == 0))
{ // no queue, so no messages, so let's wait.
@@ -265,7 +272,7 @@
{
// hopefully message has been added to the queue now
- semaphoreMessage = _queue.remove(_epr.getServiceId());
+ semaphoreMessage = _queue.get(_epr.getServiceId());
}
}
}
More information about the jboss-svn-commits
mailing list