You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2019/11/23 23:05:12 UTC

[qpid-broker-j] 01/04: QPID-8380 : Add groupId to MessageInfo

This is an automated email from the ASF dual-hosted git repository.

orudyy pushed a commit to branch 7.1.x
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git

commit 47844e4ea483538fb157cb5b6473e3a6d214df3c
Author: Robert Godfrey <rg...@apache.org>
AuthorDate: Tue Nov 19 11:39:15 2019 +0100

    QPID-8380 : Add groupId to MessageInfo
    
    (cherry picked from commit 1ffacb65710a9d1f46350b5361e337a76bd924ca)
---
 .../apache/qpid/server/message/MessageInfo.java    |  1 +
 .../qpid/server/message/MessageInfoImpl.java       |  8 ++++++
 .../tests/http/endtoend/message/MessageTest.java   | 33 +++++++++++++++++++++-
 3 files changed, 41 insertions(+), 1 deletion(-)

diff --git a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
index 055ec23..b0e720b 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfo.java
@@ -49,6 +49,7 @@ public interface MessageInfo extends ManagedAttributeValue
     Date getTimestamp();
     String getType();
     String getUserId();
+    String getGroupId();
     Map<String,Object> getHeaders();
     Date getNotValidBefore();
     String getInitialRoutingAddress();
diff --git a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
index 7626dc6..f495361 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
@@ -51,6 +51,7 @@ public class MessageInfoImpl implements MessageInfo
     private final String _to;
     private final Date _notValidBefore;
     private final String _messageType;
+    private final String _groupId;
 
     public MessageInfoImpl(final MessageInstance instance, final boolean includeHeaders)
     {
@@ -73,6 +74,7 @@ public class MessageInfoImpl implements MessageInfo
         _timestamp = messageHeader.getTimestamp() == 0L ? null : new Date(messageHeader.getTimestamp());
         _type = messageHeader.getType();
         _userId = messageHeader.getUserId();
+        _groupId = messageHeader.getGroupId();
         if (instance.isAvailable())
         {
             _state = instance.isHeld() ? "Held" : "Available";
@@ -226,6 +228,12 @@ public class MessageInfoImpl implements MessageInfo
     }
 
     @Override
+    public String getGroupId()
+    {
+        return _groupId;
+    }
+
+    @Override
     public Map<String, Object> getHeaders()
     {
         return _headers;
diff --git a/systests/qpid-systests-http-management/src/test/java/org/apache/qpid/tests/http/endtoend/message/MessageTest.java b/systests/qpid-systests-http-management/src/test/java/org/apache/qpid/tests/http/endtoend/message/MessageTest.java
index 4c525e3..d1661e6 100644
--- a/systests/qpid-systests-http-management/src/test/java/org/apache/qpid/tests/http/endtoend/message/MessageTest.java
+++ b/systests/qpid-systests-http-management/src/test/java/org/apache/qpid/tests/http/endtoend/message/MessageTest.java
@@ -90,7 +90,7 @@ public class MessageTest extends HttpTestBase
     }
 
     @Test
-    public void getJmsMessage() throws Exception
+    public void getJmsMessageWithProperty() throws Exception
     {
         final String messageProperty = "myProp";
         final String messagePropertyValue = "myValue";
@@ -122,6 +122,37 @@ public class MessageTest extends HttpTestBase
     }
 
     @Test
+    public void getJmsMessageWithGroupId() throws Exception
+    {
+        final String groupIdValue = "mygroup";
+
+        Connection connection = getConnection();
+        try
+        {
+            Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+            MessageProducer producer = session.createProducer(session.createQueue(QUEUE_NAME));
+            Message message = session.createMessage();
+            message.setStringProperty("JMSXGroupID", groupIdValue);
+            producer.send(message);
+        }
+        finally
+        {
+            connection.close();
+        }
+
+        List<Map<String, Object>> messages = getHelper().postJson("queue/myqueue/getMessageInfo",
+                                                                  Collections.singletonMap("includeHeaders",
+                                                                                           Boolean.FALSE),
+                                                                  LIST_MAP_TYPE_REF, SC_OK);
+        assertThat(messages.size(), is(equalTo(1)));
+
+        Map<String, Object> message = messages.get(0);
+
+        assertThat(message.get("groupId"), is(groupIdValue));
+    }
+
+
+    @Test
     public void getJmsMapMessage() throws Exception
     {
         final String mapKey = "key";


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