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 2012/11/28 10:03:46 UTC

svn commit: r1414597 - /qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java

Author: rgodfrey
Date: Wed Nov 28 09:03:46 2012
New Revision: 1414597

URL: http://svn.apache.org/viewvc?rev=1414597&view=rev
Log:
QPID-4455 : Queue browsers were not returning jms messages
merge from trunk r1412280

Modified:
    qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java

Modified: qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java
URL: http://svn.apache.org/viewvc/qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java?rev=1414597&r1=1414596&r2=1414597&view=diff
==============================================================================
--- qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java (original)
+++ qpid/branches/0.20/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/QueueBrowserImpl.java Wed Nov 28 09:03:46 2012
@@ -90,10 +90,10 @@ public class QueueBrowserImpl implements
         }
     }
 
-    private final class MessageEnumeration implements Enumeration<Message>
+    private final class MessageEnumeration implements Enumeration<MessageImpl>
     {
         private Receiver _receiver;
-        private Message _nextElement;
+        private MessageImpl _nextElement;
         private boolean _needNext = true;
 
         MessageEnumeration() throws JMSException
@@ -141,13 +141,13 @@ public class QueueBrowserImpl implements
             if( _needNext )
             {
                 _needNext = false;
-                _nextElement = _receiver.receive(0L);
+                _nextElement = createJMSMessage(_receiver.receive(0L));
                 if( _nextElement == null )
                 {
                     // Drain to verify there really are no more messages.
                     _receiver.drain();
                     _receiver.drainWait();
-                    _nextElement = _receiver.receive(0L);
+                    _nextElement = createJMSMessage(_receiver.receive(0L));
                     if( _nextElement == null )
                     {
                         close();
@@ -163,11 +163,11 @@ public class QueueBrowserImpl implements
         }
 
         @Override
-        public Message nextElement()
+        public MessageImpl nextElement()
         {
             if( hasMoreElements() )
             {
-                Message message = _nextElement;
+                MessageImpl message = _nextElement;
                 _nextElement = null;
                 _needNext = true;
                 return message;
@@ -178,4 +178,20 @@ public class QueueBrowserImpl implements
             }
         }
     }
+
+    MessageImpl createJMSMessage(final Message msg)
+    {
+        if(msg != null)
+        {
+            final MessageImpl message = _session.getMessageFactory().createMessage(_queue, msg);
+            message.setFromQueue(true);
+            message.setFromTopic(false);
+            return message;
+        }
+        else
+        {
+            return null;
+        }
+    }
+
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org