Repository: activemq-artemis
Updated Branches:
  refs/heads/2.6.x 1eebe46cb -> 091dcbea4


[ARTEMIS-1947] Session metadata in session management operation

Fill the session's metadata in JSON properties instead of serializing it
as an opaque String.

JIRA: https://issues.apache.org/jira/browse/ARTEMIS-1947
(cherry picked from commit fd9aad202bbac331a14d6ff58c0546c5d027aa06)


Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/d369a962
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/d369a962
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/d369a962

Branch: refs/heads/2.6.x
Commit: d369a962c821be0ef9798a22d6733de1b627dca5
Parents: 1eebe46
Author: Jeff Mesnil <jmes...@gmail.com>
Authored: Mon Aug 6 14:11:40 2018 +0200
Committer: Clebert Suconic <clebertsuco...@apache.org>
Committed: Mon Aug 6 13:52:09 2018 -0400

----------------------------------------------------------------------
 .../core/management/impl/ActiveMQServerControlImpl.java   | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/d369a962/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java
----------------------------------------------------------------------
diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java
index cabdc10..5cb0c56 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/ActiveMQServerControlImpl.java
@@ -1882,10 +1882,12 @@ public class ActiveMQServerControlImpl extends 
AbstractControl implements Active
          obj.add("principal", sess.getValidatedUser());
       }
 
-      String metadata = sess.getMetaData() == null ? null : 
sess.getMetaData().toString();
-      if (metadata != null) {
-         // remove leading and trailing curly brackets
-         obj.add("metadata", metadata.substring(1, metadata.length() - 1));
+      if (sess.getMetaData() != null) {
+         final JsonObjectBuilder metadata = JsonLoader.createObjectBuilder();
+         for (Entry<String, String> entry : sess.getMetaData().entrySet()) {
+            metadata.add(entry.getKey(), entry.getValue());
+         }
+         obj.add("metadata", metadata);
       }
 
       array.add(obj);

Reply via email to