From 280facd10edfa66738c53321eb4d0cd9c506bf25 Mon Sep 17 00:00:00 2001 From: Bhupendra Bhusman Bhardwaj Date: Wed, 21 Mar 2007 11:54:38 +0000 Subject: QPID-420 Adding clientID, AuthorizedId and client version on management console git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@520847 13f79535-47bb-0310-9956-ffa450edef68 --- .../qpid/server/protocol/AMQMinaProtocolSession.java | 18 +++++++++++++++--- .../qpid/server/protocol/AMQProtocolSessionMBean.java | 17 ++++++++++++++++- .../apache/qpid/server/protocol/ManagedConnection.java | 9 +++++++++ 3 files changed, 40 insertions(+), 4 deletions(-) (limited to 'java') diff --git a/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQMinaProtocolSession.java b/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQMinaProtocolSession.java index 1c741ead1e..fd8fb2d5cb 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQMinaProtocolSession.java +++ b/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQMinaProtocolSession.java @@ -74,6 +74,8 @@ public class AMQMinaProtocolSession implements AMQProtocolSession, private AMQShortString _contextKey; + private AMQShortString _clientVersion = null; + private VirtualHost _virtualHost; private final Map _channelMap = new HashMap(); @@ -667,9 +669,16 @@ public class AMQMinaProtocolSession implements AMQProtocolSession, public void setClientProperties(FieldTable clientProperties) { _clientProperties = clientProperties; - if ((_clientProperties != null) && (_clientProperties.getString(CLIENT_PROPERTIES_INSTANCE) != null)) + if (_clientProperties != null) { - setContextKey(new AMQShortString(_clientProperties.getString(CLIENT_PROPERTIES_INSTANCE))); + if (_clientProperties.getString(CLIENT_PROPERTIES_INSTANCE) != null) + { + setContextKey(new AMQShortString(_clientProperties.getString(CLIENT_PROPERTIES_INSTANCE))); + } + if (_clientProperties.getString(ClientProperties.version.toString()) != null) + { + _clientVersion = new AMQShortString(_clientProperties.getString(ClientProperties.version.toString())); + } } } @@ -745,5 +754,8 @@ public class AMQMinaProtocolSession implements AMQProtocolSession, { return _authorizedID; } - + public String getClientVersion() + { + return _clientVersion == null ? null : _clientVersion.toString(); + } } diff --git a/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSessionMBean.java b/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSessionMBean.java index d2a20cdf57..5eebd4c524 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSessionMBean.java +++ b/java/broker/src/main/java/org/apache/qpid/server/protocol/AMQProtocolSessionMBean.java @@ -56,6 +56,7 @@ public class AMQProtocolSessionMBean extends AMQManagedObject implements Managed { private AMQMinaProtocolSession _session = null; private String _name = null; + //openmbean data types for representing the channel attributes private final static String[] _channelAtttibuteNames = {"Channel Id", "Transactional", "Default Queue", "Unacknowledged Message Count"}; private final static String[] _indexNames = {_channelAtttibuteNames[0]}; @@ -95,12 +96,26 @@ public class AMQProtocolSessionMBean extends AMQManagedObject implements Managed */ private static void init() throws OpenDataException { - _channelType = new CompositeType("Channel", "Channel Details", _channelAtttibuteNames, _channelAtttibuteNames, _channelAttributeTypes); _channelsType = new TabularType("Channels", "Channels", _channelType, _indexNames); } + public String getClientId() + { + return _session.getContextKey() == null ? null : _session.getContextKey().toString(); + } + + public String getAuthorizedId() + { + return _session.getAuthorizedID(); + } + + public String getVersion() + { + return _session.getClientVersion() == null ? null : _session.getClientVersion().toString(); + } + public Date getLastIoTime() { return new Date(_session.getIOSession().getLastIoTime()); diff --git a/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java b/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java index f9a0c4d18f..990c4c0794 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java +++ b/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java @@ -41,6 +41,15 @@ public interface ManagedConnection { static final String TYPE = "Connection"; + @MBeanAttribute(name = "ClientId", description = "Client Id") + String getClientId(); + + @MBeanAttribute(name = "AuthorizedId", description = "User Name") + String getAuthorizedId(); + + @MBeanAttribute(name = "Version", description = "Client Version") + String getVersion(); + /** * Tells the remote address of this connection. * @return remote address -- cgit v1.2.1