Author: robbie
Date: Mon Jul 13 08:54:27 2009
New Revision: 793499

URL: http://svn.apache.org/viewvc?rev=793499&view=rev
Log:
QPID-1930: expose UserManagement composite/tabular type keys through the 
management interface for reference, and add warning about future alterations to 
ensure compatibility

Modified:
    
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/AMQUserManagementMBean.java
    
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
    
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java

Modified: 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/AMQUserManagementMBean.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/AMQUserManagementMBean.java?rev=793499&r1=793498&r2=793499&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/AMQUserManagementMBean.java
 (original)
+++ 
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/AMQUserManagementMBean.java
 Mon Jul 13 08:54:27 2009
@@ -71,28 +71,22 @@
 
     // Setup for the TabularType
     static TabularType _userlistDataType; // Datatype for representing User 
Lists
-
     static CompositeType _userDataType; // Composite type for representing User
-    static String[] _userItemNames = {"Username", "read", "write", "admin"};
 
     static
     {
-        String[] userItemDesc = {"Broker Login username", "Management Console 
Read Permission",
-                                 "Management Console Write Permission", 
"Management Console Admin Permission"};
-
         OpenType[] userItemTypes = new OpenType[4]; // User item types.
         userItemTypes[0] = SimpleType.STRING;  // For Username
         userItemTypes[1] = SimpleType.BOOLEAN; // For Rights - Read
         userItemTypes[2] = SimpleType.BOOLEAN; // For Rights - Write
         userItemTypes[3] = SimpleType.BOOLEAN; // For Rights - Admin
-        String[] userDataIndex = {_userItemNames[0]};
 
         try
         {
             _userDataType =
-                    new CompositeType("User", "User Data", _userItemNames, 
userItemDesc, userItemTypes);
+                    new CompositeType("User", "User Data", 
COMPOSITE_ITEM_NAMES, COMPOSITE_ITEM_DESCRIPTIONS, userItemTypes);
 
-            _userlistDataType = new TabularType("Users", "List of users", 
_userDataType, userDataIndex);
+            _userlistDataType = new TabularType("Users", "List of users", 
_userDataType, TABULAR_UNIQUE_INDEX);
         }
         catch (OpenDataException e)
         {
@@ -327,7 +321,7 @@
                 }
 
                 Object[] itemData = {user.getName(), read, write, admin};
-                CompositeData messageData = new 
CompositeDataSupport(_userDataType, _userItemNames, itemData);
+                CompositeData messageData = new 
CompositeDataSupport(_userDataType, COMPOSITE_ITEM_NAMES, itemData);
                 userList.put(messageData);
             }
         }

Modified: 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java?rev=793499&r1=793498&r2=793499&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
 (original)
+++ 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
 Mon Jul 13 08:54:27 2009
@@ -35,6 +35,7 @@
     int VERSION = 1;
     
     //TabularType and contained CompositeType key/description information
+    //For compatibility reasons, DONT MODIFY the existing key values if 
expanding the set. 
     String[] COMPOSITE_ITEM_NAMES = {"LoggerName", "Level"};
     String[] COMPOSITE_ITEM_DESCRIPTIONS = {"Name of the logger", "Level of 
the logger"};
     String[] TABULAR_UNIQUE_INDEX = {COMPOSITE_ITEM_NAMES[0]};

Modified: 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java?rev=793499&r1=793498&r2=793499&view=diff
==============================================================================
--- 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
 (original)
+++ 
qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
 Mon Jul 13 08:54:27 2009
@@ -20,21 +20,26 @@
  */
 package org.apache.qpid.management.common.mbeans;
 
-import org.apache.qpid.management.common.mbeans.annotations.MBeanAttribute;
 import org.apache.qpid.management.common.mbeans.annotations.MBeanOperation;
 import 
org.apache.qpid.management.common.mbeans.annotations.MBeanOperationParameter;
 
 import javax.management.openmbean.TabularData;
-import javax.management.openmbean.CompositeData;
-import javax.management.JMException;
 import javax.management.MBeanOperationInfo;
-import java.io.IOException;
 
 public interface UserManagement
 {
 
     String TYPE = "UserManagement";
     int VERSION = 2;
+    
+    //TabularType and contained CompositeType key/description information.
+    //For compatibility reasons, DONT MODIFY the existing key values if 
expanding the set.
+    String[] COMPOSITE_ITEM_NAMES = {"Username", "read", "write", "admin"};
+    String[] COMPOSITE_ITEM_DESCRIPTIONS = {"Broker Login username", 
+                                            "Management Console Read 
Permission", 
+                                            "Management Console Write 
Permission", 
+                                            "Management Console Admin 
Permission"};
+    String[] TABULAR_UNIQUE_INDEX = {COMPOSITE_ITEM_NAMES[0]};
 
     //********** Operations *****************//
     /**



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscr...@qpid.apache.org

Reply via email to