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 2009/10/25 20:56:47 UTC
svn commit: r829634 -
/qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
Author: rgodfrey
Date: Sun Oct 25 19:56:47 2009
New Revision: 829634
URL: http://svn.apache.org/viewvc?rev=829634&view=rev
Log:
Only create one AMQMessage perincoming message
Modified:
qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
Modified: qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java
URL: http://svn.apache.org/viewvc/qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java?rev=829634&r1=829633&r2=829634&view=diff
==============================================================================
--- qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java (original)
+++ qpid/branches/java-broker-0-10/qpid/java/broker/src/main/java/org/apache/qpid/server/AMQChannel.java Sun Oct 25 19:56:47 2009
@@ -48,6 +48,7 @@
import org.apache.qpid.server.message.ServerMessage;
import org.apache.qpid.server.message.AMQMessage;
import org.apache.qpid.server.message.MessageMetaData;
+import org.apache.qpid.server.message.MessageReference;
import org.apache.qpid.server.registry.ApplicationRegistry;
import org.apache.qpid.server.logging.LogActor;
import org.apache.qpid.server.logging.LogSubject;
@@ -192,18 +193,18 @@
routeCurrentMessage();
- _transaction.addPostCommitAction(new ServerTransaction.Action()
- {
+ _transaction.addPostCommitAction(new ServerTransaction.Action()
+ {
- public void postCommit()
- {
- }
+ public void postCommit()
+ {
+ }
- public void onRollback()
- {
- handle.remove();
- }
- });
+ public void onRollback()
+ {
+ handle.remove();
+ }
+ });
deliverCurrentMessageIfComplete();
@@ -984,11 +985,13 @@
{
final boolean immediate = _incommingMessage.isImmediate();
-
+ final AMQMessage amqMessage = createAMQMessage(_incommingMessage);
+ MessageReference ref = amqMessage.newReference();
for(AMQQueue queue : _destinationQueues)
{
- QueueEntry entry = queue.enqueue(createAMQMessage(_incommingMessage));
+
+ QueueEntry entry = queue.enqueue(amqMessage);
queue.checkCapacity(AMQChannel.this);
@@ -1035,6 +1038,7 @@
}
}
+ ref.release();
}
catch (AMQException e)
{
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org