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 2016/05/11 10:44:16 UTC

svn commit: r1743334 - in /qpid/java/branches/6.0.x: bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/ broker-core/src/main/java/org/apache/qpid/server/model/ broker-core/src/main/java/org/apache/qpid/server/virtualhost/ broker-core...

Author: orudyy
Date: Wed May 11 10:44:16 2016
New Revision: 1743334

URL: http://svn.apache.org/viewvc?rev=1743334&view=rev
Log:
QPID-7216: [Java Broker, WMC] Add new ManagedOperation to retrieve connections without children and inherited context

Modified:
    qpid/java/branches/6.0.x/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
    qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java
    qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
    qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
    qpid/java/branches/6.0.x/broker-plugins/management-http/src/main/java/resources/js/qpid/management/VirtualHost.js

Modified: qpid/java/branches/6.0.x/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java?rev=1743334&r1=1743333&r2=1743334&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java (original)
+++ qpid/java/branches/6.0.x/bdbstore/src/main/java/org/apache/qpid/server/virtualhost/berkeleydb/BDBHAReplicaVirtualHostImpl.java Wed May 11 10:44:16 2016
@@ -306,6 +306,12 @@ public class BDBHAReplicaVirtualHostImpl
     }
 
     @Override
+    public Collection<Map<String, Object>> listConnections()
+    {
+        return Collections.emptyList();
+    }
+
+    @Override
     public Connection<?> getConnection(String name)
     {
         return null;

Modified: qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java?rev=1743334&r1=1743333&r2=1743334&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java (original)
+++ qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/model/VirtualHost.java Wed May 11 10:44:16 2016
@@ -27,15 +27,12 @@ import java.util.Collection;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.qpid.server.message.MessageInstance;
 import org.apache.qpid.server.model.port.AmqpPort;
 import org.apache.qpid.server.queue.QueueEntry;
 import org.apache.qpid.server.store.MessageStore;
 import org.apache.qpid.server.transport.AMQPConnection;
 import org.apache.qpid.server.virtualhost.VirtualHostConnectionListener;
 
-import javax.security.auth.Subject;
-
 @ManagedObject( defaultType = "ProvidedStore", description = VirtualHost.CLASS_DESCRIPTION)
 public interface VirtualHost<X extends VirtualHost<X, Q, E>, Q extends Queue<?>, E extends Exchange<?> > extends ConfiguredObject<X>
 {
@@ -192,6 +189,9 @@ public interface VirtualHost<X extends V
     Collection<? extends Connection<?>> getConnections();
 
     @ManagedOperation(nonModifying = true)
+    Collection<Map<String, Object>> listConnections();
+
+    @ManagedOperation(nonModifying = true)
     Connection<?> getConnection(@Param(name="name") String name);
 
     void start();

Modified: qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java?rev=1743334&r1=1743333&r2=1743334&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java (original)
+++ qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhost/AbstractVirtualHost.java Wed May 11 10:44:16 2016
@@ -36,6 +36,7 @@ import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.TreeMap;
 import java.util.UUID;
 import java.util.concurrent.*;
 import java.util.concurrent.ExecutionException;
@@ -487,6 +488,61 @@ public abstract class AbstractVirtualHos
     }
 
     @Override
+    public Collection<Map<String, Object>> listConnections()
+    {
+        Collection<Map<String, Object>> connections = new ArrayList<>();
+        for (AMQPConnection<?> connection : _connections)
+        {
+            Map<String, Object> connectionData = new HashMap<>();
+            connections.add(connectionData);
+            for (String name : connection.getAttributeNames())
+            {
+                Object value = connection.getAttribute(name);
+                if (value instanceof ConfiguredObject)
+                {
+                    connectionData.put(name, ((ConfiguredObject) value).getName());
+                }
+                else if (ConfiguredObject.CONTEXT.equals(name))
+                {
+                    Map<String, String> context =
+                            (Map<String, String>) connection.getActualAttributes().get(ConfiguredObject.CONTEXT);
+                    if (context != null && !context.isEmpty())
+                    {
+                        connectionData.put(name, context);
+                    }
+                }
+                else if (value instanceof Collection)
+                {
+                    List<Object> converted = new ArrayList<>();
+                    for (Object member : (Collection) value)
+                    {
+                        if (member instanceof ConfiguredObject)
+                        {
+                            converted.add(((ConfiguredObject) member).getName());
+                        }
+                        else
+                        {
+                            converted.add(member);
+                        }
+                    }
+                    connectionData.put(name, converted);
+                }
+                else if (value != null)
+                {
+                    connectionData.put(name, value);
+                }
+            }
+            Map<String, Number> statMap = connection.getStatistics();
+            if(!statMap.isEmpty())
+            {
+                connectionData.put("statistics", new TreeMap(statMap));
+            }
+        }
+        return connections;
+    }
+
+
+    @Override
     public Connection<?> getConnection(String name)
     {
         for (Connection<?> connection : _connections)

Modified: qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java?rev=1743334&r1=1743333&r2=1743334&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java (original)
+++ qpid/java/branches/6.0.x/broker-core/src/main/java/org/apache/qpid/server/virtualhostnode/RedirectingVirtualHostImpl.java Wed May 11 10:44:16 2016
@@ -306,6 +306,12 @@ class RedirectingVirtualHostImpl
     }
 
     @Override
+    public Collection<Map<String, Object>> listConnections()
+    {
+        return Collections.emptyList();
+    }
+
+    @Override
     public Connection<?> getConnection(String name)
     {
         return null;

Modified: qpid/java/branches/6.0.x/broker-plugins/management-http/src/main/java/resources/js/qpid/management/VirtualHost.js
URL: http://svn.apache.org/viewvc/qpid/java/branches/6.0.x/broker-plugins/management-http/src/main/java/resources/js/qpid/management/VirtualHost.js?rev=1743334&r1=1743333&r2=1743334&view=diff
==============================================================================
--- qpid/java/branches/6.0.x/broker-plugins/management-http/src/main/java/resources/js/qpid/management/VirtualHost.js (original)
+++ qpid/java/branches/6.0.x/broker-plugins/management-http/src/main/java/resources/js/qpid/management/VirtualHost.js Wed May 11 10:44:16 2016
@@ -292,7 +292,6 @@ define(["dojo/parser",
                                                                             });
                                                            } , gridProperties, EnhancedGrid);
 
-
                    that.connectionsGrid = new UpdatableStore([],
                                                              findNode("connections"),
                                                              [ { name: "Name",    field: "name",      width: "20%"},
@@ -323,7 +322,19 @@ define(["dojo/parser",
 
                                                                                   controller.show("connection", connectionName, port, theItem.id);
                                                                               });
-                                                             } );
+                                                             } , { plugins: {
+                                                                                pagination:
+                                                                                {
+                                                                                   pageSizes: [10, 25, 50, 100],
+                                                                                   description: true,
+                                                                                   sizeSwitch: true,
+                                                                                   pageStepper: true,
+                                                                                   gotoButton: true,
+                                                                                   maxPageStep: 4,
+                                                                                   position: "bottom"
+                                                                                }
+                                                                            }
+                                                                  }, EnhancedGrid);
 
                    that.virtualHostLoggersGrid = new UpdatableStore([],
                                                                     findNode("loggers"),
@@ -370,7 +381,7 @@ define(["dojo/parser",
                var thisObj = this;
 
                var vhostLoadedPromise = this.management.load(this.modelObj, {excludeInheritedContext: true});
-               var connectionsPromise = this.management.get({url: this.management.objectToURL(this.modelObj) + "/getConnections"});
+               var connectionsPromise = this.management.get({url: this.management.objectToURL(this.modelObj) + "/listConnections"});
                all({vhostData: vhostLoadedPromise, connections: connectionsPromise}).then(function(results) {
                    thisObj.vhostData = results.vhostData[0] || {name: thisObj.modelObj.name,statistics:{messagesIn:0,bytesIn:0,messagesOut:0,bytesOut:0}};
                    thisObj.vhostData.connections = results.connections;



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