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 2014/10/10 13:43:50 UTC
svn commit: r1630766 - in
/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl:
MessageConsumerImpl.java SessionImpl.java
Author: rgodfrey
Date: Fri Oct 10 11:43:50 2014
New Revision: 1630766
URL: http://svn.apache.org/r1630766
Log:
QPID-6141 : Fix recover() for onMessage client-ack sessions
Modified:
qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageConsumerImpl.java
qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java
Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageConsumerImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageConsumerImpl.java?rev=1630766&r1=1630765&r2=1630766&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageConsumerImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageConsumerImpl.java Fri Oct 10 11:43:50 2014
@@ -300,6 +300,12 @@ public class MessageConsumerImpl impleme
}
}
+ Message receiveRecoveredMessage()
+ {
+ return _replaymessages.isEmpty() ? null : _replaymessages.remove(0);
+
+ }
+
Message receive0(final long timeout)
{
Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java?rev=1630766&r1=1630765&r2=1630766&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/SessionImpl.java Fri Oct 10 11:43:50 2014
@@ -922,7 +922,15 @@ public class SessionImpl implements Sess
else
{
consumer = _messageConsumerList.remove(0);
- msg = consumer.receive0(0L);
+ msg = consumer.receiveRecoveredMessage();
+ if(msg == null)
+ {
+ msg = consumer.receive0(0L);
+ }
+ else
+ {
+ recoveredMessage = true;
+ }
}
MessageListener listener = consumer._messageListener;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org