You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by sh...@apache.org on 2011/10/21 16:42:51 UTC

svn commit: r1187375 [37/43] - in /qpid/branches/QPID-2519: ./ bin/ cpp/ cpp/bindings/ cpp/bindings/qmf/python/ cpp/bindings/qmf/ruby/ cpp/bindings/qmf/tests/ cpp/bindings/qmf2/ cpp/bindings/qmf2/examples/cpp/ cpp/bindings/qmf2/python/ cpp/bindings/qmf...

Modified: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java (original)
+++ qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java Fri Oct 21 14:42:12 2011
@@ -36,8 +36,8 @@ import org.apache.qpid.management.common
  * The ManagedBroker is the management interface to expose management
  * features of the Broker.
  *
- * @author   Bhupendra Bhardwaj
- * @version  0.1
+ * @version Qpid JMX API 2.2
+ * @since Qpid JMX API 1.3
  */
 public interface ManagedBroker
 {
@@ -131,4 +131,118 @@ public interface ManagedBroker
                          impact= MBeanOperationInfo.ACTION)
     void deleteQueue(@MBeanOperationParameter(name= ManagedQueue.TYPE, description="Queue Name")String queueName)
             throws IOException, JMException, MBeanException;
+    
+    /**
+     * Resets all message and data statistics for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanOperation(name="resetStatistics",
+                    description="Resets all message and data statistics for the virtual host",
+                    impact= MBeanOperationInfo.ACTION)
+    void resetStatistics() throws Exception;
+
+    /**
+     * Peak rate of messages delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageDeliveryRate", description=TYPE + " Peak Message Delivery Rate")
+    double getPeakMessageDeliveryRate();
+
+    /**
+     * Peak rate of bytes delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataDeliveryRate", description=TYPE + " Peak Data Delivery Rate")
+    double getPeakDataDeliveryRate();
+
+    /**
+     * Rate of messages delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageDeliveryRate", description=TYPE + " Message Delivery Rate")
+    double getMessageDeliveryRate();
+
+    /**
+     * Rate of bytes delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataDeliveryRate", description=TYPE + " Data Delivery Rate")
+    double getDataDeliveryRate();
+
+    /**
+     * Total count of messages delivered for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesDelivered", description=TYPE + " Total Messages Delivered")
+    long getTotalMessagesDelivered();
+
+    /**
+     * Total count of bytes for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataDelivered", description=TYPE + " Total Data Delivered")
+    long getTotalDataDelivered();
+
+    /**
+     * Peak rate of messages received per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageReceiptRate", description=TYPE + " Peak Message Receipt Rate")
+    double getPeakMessageReceiptRate();
+
+    /**
+     * Peak rate of bytes received per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataReceiptRate", description=TYPE + " Peak Data Receipt Rate")
+    double getPeakDataReceiptRate();
+
+    /**
+     * Rate of messages received per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageReceiptRate", description=TYPE + " Message Receipt Rate")
+    double getMessageReceiptRate();
+
+    /**
+     * Rate of bytes received per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataReceiptRate", description=TYPE + " Data Receipt Rate")
+    double getDataReceiptRate();
+
+    /**
+     * Total count of messages received for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesReceived", description=TYPE + " Total Messages Received")
+    long getTotalMessagesReceived();
+
+    /**
+     * Total count of bytes received for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataReceived", description=TYPE + " Total Data Received")
+    long getTotalDataReceived();
+
+    /**
+     * Is statistics collection enabled for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="StatisticsEnabled", description=TYPE + " Statistics Enabled")
+    boolean isStatisticsEnabled();
 }

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/ManagedBroker.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/ManagedBroker.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:1072051-1187351

Modified: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java (original)
+++ qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java Fri Oct 21 14:42:12 2011
@@ -37,8 +37,9 @@ import org.apache.qpid.management.common
 
 /**
  * The management interface exposed to allow management of Connections.
- * @author   Bhupendra Bhardwaj
- * @version  0.1
+ * 
+ * @version Qpid JMX API 2.2
+ * @since Qpid JMX API 1.3
  */
 public interface ManagedConnection
 {
@@ -145,4 +146,126 @@ public interface ManagedConnection
                     description="Closes this connection and all related channels",
                     impact= MBeanOperationInfo.ACTION)
     void closeConnection() throws Exception;
+ 
+    /**
+     * Resets message and data statistics for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanOperation(name="resetStatistics",
+                    description="Resets message and data statistics for this connection",
+                    impact= MBeanOperationInfo.ACTION)
+    void resetStatistics() throws Exception;
+
+    /**
+     * Peak rate of messages delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageDeliveryRate", description=TYPE + " Peak Message Delivery Rate")
+    double getPeakMessageDeliveryRate();
+
+    /**
+     * Peak rate of bytes delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataDeliveryRate", description=TYPE + " Peak Data Delivery Rate")
+    double getPeakDataDeliveryRate();
+
+    /**
+     * Rate of messages delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageDeliveryRate", description=TYPE + " Message Delivery Rate")
+    double getMessageDeliveryRate();
+
+    /**
+     * Rate of bytes delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataDeliveryRate", description=TYPE + " Data Delivery Rate")
+    double getDataDeliveryRate();
+
+    /**
+     * Total count of messages delivered for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesDelivered", description=TYPE + " Total Messages Delivered")
+    long getTotalMessagesDelivered();
+
+    /**
+     * Total count of bytes for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataDelivered", description=TYPE + " Total Data Delivered")
+    long getTotalDataDelivered();
+
+    /**
+     * Peak rate of messages received per second for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageReceiptRate", description=TYPE + " Peak Message Receipt Rate")
+    double getPeakMessageReceiptRate();
+
+    /**
+     * Peak rate of bytes received per second for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataReceiptRate", description=TYPE + " Peak Data Receipt Rate")
+    double getPeakDataReceiptRate();
+
+    /**
+     * Rate of messages received per second for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageReceiptRate", description=TYPE + " Message Receipt Rate")
+    double getMessageReceiptRate();
+
+    /**
+     * Rate of bytes received per second for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataReceiptRate", description=TYPE + " Data Receipt Rate")
+    double getDataReceiptRate();
+
+    /**
+     * Total count of messages received for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesReceived", description=TYPE + " Total Messages Received")
+    long getTotalMessagesReceived();
+
+    /**
+     * Total count of bytes received for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataReceived", description=TYPE + " Total Data Received")
+    long getTotalDataReceived();
+
+    /**
+     * Is statistics collection enabled for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="StatisticsEnabled", description=TYPE + " Statistics Enabled")
+    boolean isStatisticsEnabled();
+
+    /**
+     * Sets statistics collection enabled/disabled for this connection.
+     *
+     * @param enabled
+     * @since Qpid JMX API 2.2
+     */
+    void setStatisticsEnabled(boolean enabled);
 }

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/ManagedQueue.java:757257
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/ManagedQueue.java:753219-753220,753253,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:1072051-1187351

Modified: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ServerInformation.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ServerInformation.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ServerInformation.java (original)
+++ qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ServerInformation.java Fri Oct 21 14:42:12 2011
@@ -22,10 +22,15 @@ package org.apache.qpid.management.commo
 
 import java.io.IOException;
 
+import javax.management.MBeanOperationInfo;
+
 import org.apache.qpid.management.common.mbeans.annotations.MBeanAttribute;
+import org.apache.qpid.management.common.mbeans.annotations.MBeanOperation;
 
 /**
  * Interface for the ServerInformation MBean
+ * 
+ * @version Qpid JMX API 2.3
  * @since Qpid JMX API 1.3
  */
 public interface ServerInformation
@@ -42,7 +47,7 @@ public interface ServerInformation
      *  Qpid JMX API 1.1 can be assumed.
      */
     int QPID_JMX_API_MAJOR_VERSION = 2;
-    int QPID_JMX_API_MINOR_VERSION = 0;
+    int QPID_JMX_API_MINOR_VERSION = 3;
     
     
     /**
@@ -80,4 +85,118 @@ public interface ServerInformation
     @MBeanAttribute(name="ProductVersion", 
                     description = "The product version string")
     String getProductVersion() throws IOException;
+    
+    /**
+     * Resets all message and data statistics for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanOperation(name="resetStatistics",
+                    description="Resets all message and data statistics for the broker",
+                    impact= MBeanOperationInfo.ACTION)
+    void resetStatistics() throws Exception;
+
+    /**
+     * Peak rate of messages delivered per second for the virtual host.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageDeliveryRate", description=TYPE + " Peak Message Delivery Rate")
+    double getPeakMessageDeliveryRate();
+
+    /**
+     * Peak rate of bytes delivered per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataDeliveryRate", description=TYPE + " Peak Data Delivery Rate")
+    double getPeakDataDeliveryRate();
+
+    /**
+     * Rate of messages delivered per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageDeliveryRate", description=TYPE + " Message Delivery Rate")
+    double getMessageDeliveryRate();
+
+    /**
+     * Rate of bytes delivered per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataDeliveryRate", description=TYPE + " Data Delivery Rate")
+    double getDataDeliveryRate();
+
+    /**
+     * Total count of messages delivered for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesDelivered", description=TYPE + " Total Messages Delivered")
+    long getTotalMessagesDelivered();
+
+    /**
+     * Total count of bytes for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataDelivered", description=TYPE + " Total Data Delivered")
+    long getTotalDataDelivered();
+
+    /**
+     * Peak rate of messages received per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakMessageReceiptRate", description=TYPE + " Peak Message Receipt Rate")
+    double getPeakMessageReceiptRate();
+
+    /**
+     * Peak rate of bytes received per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="PeakDataReceiptRate", description=TYPE + " Peak Data Receipt Rate")
+    double getPeakDataReceiptRate();
+
+    /**
+     * Rate of messages received per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="MessageReceiptRate", description=TYPE + " Message Receipt Rate")
+    double getMessageReceiptRate();
+
+    /**
+     * Rate of bytes received per second for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="DataReceiptRate", description=TYPE + " Data Receipt Rate")
+    double getDataReceiptRate();
+
+    /**
+     * Total count of messages received for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalMessagesReceived", description=TYPE + " Total Messages Received")
+    long getTotalMessagesReceived();
+
+    /**
+     * Total count of bytes received for the broker.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="TotalDataReceived", description=TYPE + " Total Data Received")
+    long getTotalDataReceived();
+
+    /**
+     * Is statistics collection enabled for this connection.
+     * 
+     * @since Qpid JMX API 2.2
+     */
+    @MBeanAttribute(name="StatisticsEnabled", description=TYPE + " Statistics Enabled")
+    boolean isStatisticsEnabled();
 }

Modified: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java (original)
+++ qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java Fri Oct 21 14:42:12 2011
@@ -38,38 +38,21 @@ public interface UserManagement
     //TabularType and contained CompositeType key/description information.
     //For compatibility reasons, DONT MODIFY the existing key values if expanding the set.
     String USERNAME = "Username";
-    String RIGHTS_READ_ONLY = "read";
-    String RIGHTS_READ_WRITE = "write";
-    String RIGHTS_ADMIN = "admin";
+    String RIGHTS_READ_ONLY = "read";   // item deprecated
+    String RIGHTS_READ_WRITE = "write"; // item deprecated
+    String RIGHTS_ADMIN = "admin";      // item deprecated
+
     List<String> COMPOSITE_ITEM_NAMES = Collections.unmodifiableList(Arrays.asList(USERNAME, RIGHTS_READ_ONLY, RIGHTS_READ_WRITE, RIGHTS_ADMIN));
     List<String> COMPOSITE_ITEM_DESCRIPTIONS = Collections.unmodifiableList(
                               Arrays.asList("Broker Login username", 
-                                            "Management Console Read Permission", 
-                                            "Management Console Write Permission", 
-                                            "Management Console Admin Permission"));
+                                            "Item no longer used", 
+                                            "Item no longer used", 
+                                            "Item no longer used"));
+
     List<String> TABULAR_UNIQUE_INDEX = Collections.unmodifiableList(Arrays.asList(USERNAME));
 
     //********** Operations *****************//
     /**
-     * set password for user.
-     * 
-     * Since Qpid JMX API 1.2 this operation expects plain text passwords to be provided. Prior to this, MD5 hashed passwords were supplied.
-     * 
-     * @deprecated since Qpid JMX API 1.7
-     *
-     * @param username The username to create
-     * @param password The password for the user
-     *
-     * @return The result of the operation
-     */
-    @Deprecated
-    @MBeanOperation(name = "setPassword", description = "Set password for user.",
-                    impact = MBeanOperationInfo.ACTION)
-    boolean setPassword(@MBeanOperationParameter(name = "username", description = "Username")String username,
-                        //NOTE: parameter name was changed to 'passwd' in Qpid JMX API 1.7 to protect against older, incompatible management clients
-                        @MBeanOperationParameter(name = "passwd", description = "Password")char[] password);
-
-    /**
      * Set password for a given user.
      * 
      * @since Qpid JMX API 1.7
@@ -83,69 +66,21 @@ public interface UserManagement
                     impact = MBeanOperationInfo.ACTION)
     boolean setPassword(@MBeanOperationParameter(name = "username", description = "Username")String username,
                         @MBeanOperationParameter(name = "password", description = "Password")String password);
-    
-    /**
-     * set rights for users with given details
-     *
-     * @param username The username to create
-     * @param read     The set of permission to give the new user
-     * @param write    The set of permission to give the new user
-     * @param admin    The set of permission to give the new user
-     *
-     * @return The result of the operation
-     */
-    @MBeanOperation(name = "setRights", description = "Set access rights for user.",
-                    impact = MBeanOperationInfo.ACTION)
-    boolean setRights(@MBeanOperationParameter(name = "username", description = "Username")String username,
-                      @MBeanOperationParameter(name = "read", description = "Administration read")boolean read,
-                      @MBeanOperationParameter(name = "readAndWrite", description = "Administration write")boolean write,
-                      @MBeanOperationParameter(name = "admin", description = "Administration rights")boolean admin);
-
-    /**
-     * Create users with given details
-     *
-     * Since Qpid JMX API 1.2 this operation expects plain text passwords to be provided. Prior to this, MD5 hashed passwords were supplied.
-     * 
-     * @deprecated since Qpid JMX API 1.7
-     * 
-     * @param username The username to create
-     * @param password The password for the user
-     * @param read     The set of permission to give the new user
-     * @param write    The set of permission to give the new user
-     * @param admin    The set of permission to give the new user
-     *
-     * @return The result of the operation
-     */
-    @Deprecated
-    @MBeanOperation(name = "createUser", description = "Create new user from system.",
-                    impact = MBeanOperationInfo.ACTION)
-    boolean createUser(@MBeanOperationParameter(name = "username", description = "Username")String username,
-                       //NOTE: parameter name was changed to 'passwd' in Qpid JMX API 1.7 to protect against older, incompatible management clients
-                       @MBeanOperationParameter(name = "passwd", description = "Password")char[] password,
-                       @MBeanOperationParameter(name = "read", description = "Administration read")boolean read,
-                       @MBeanOperationParameter(name = "readAndWrite", description = "Administration write")boolean write,
-                       @MBeanOperationParameter(name = "admin", description = "Administration rights")boolean admin);
 
     /**
      * Create users with given details.
      * 
-     * @since Qpid JMX API 1.7
+     * @since Qpid JMX API 2.3 / 1.12
      * 
      * @param username The username to create
      * @param password The password for the user
-     * @param read     The set of permission to give the new user
-     * @param write    The set of permission to give the new user
-     * @param admin    The set of permission to give the new user
      *
-     * @return The result of the operation
+     * @return true if the user was created successfully, or false otherwise
      */
     @MBeanOperation(name = "createUser", description = "Create a new user.",
                     impact = MBeanOperationInfo.ACTION)
     boolean createUser(@MBeanOperationParameter(name = "username", description = "Username")String username,
-                       @MBeanOperationParameter(name = "password", description = "Password")String password,
-                       @MBeanOperationParameter(name = "read", description = "Administration read")boolean read,
-                       @MBeanOperationParameter(name = "readAndWrite", description = "Administration write")boolean write,
-                       @MBeanOperationParameter(name = "admin", description = "Administration rights")boolean admin);
+                       @MBeanOperationParameter(name = "password", description = "Password")String password);
     
     /**
      * View users returns all the users that are currently available to the system.
@@ -160,9 +95,11 @@ public interface UserManagement
 
 
     /**
-     * Reload the date from disk
+     * Reload the user data
      * 
-     * Since Qpid JMX API 1.2 this operation reloads the password and authorisation files. Prior to this, only the authorisation file was reloaded.
+     * Since Qpid JMX API 2.3 / 1.12 this operation reloads only the password data.
+     * Since Qpid JMX API 1.2 but prior to 2.3 / 1.12 this operation reloads the password and authorisation files.
+     * Prior to 1.2, only the authorisation file was reloaded.
      *
      * @return The result of the operation
      */
@@ -172,10 +109,13 @@ public interface UserManagement
 
     /**
      * View users returns all the users that are currently available to the system.
+     * 
+     * Since Qpid JMX API 2.3 / 1.12 the items that corresponded to read, write and admin flags
+     * are deprecated and always return false.
      *
      * @return a table of users data (Username, read, write, admin)
      */
-    @MBeanOperation(name = "viewUsers", description = "All users with access rights to the system.",
+    @MBeanOperation(name = "viewUsers", description = "All users that are currently available to the system.",
                     impact = MBeanOperationInfo.INFO)
     TabularData viewUsers();
 

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/UserManagement.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanAttribute.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanAttribute.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanConstructor.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanConstructor.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanDescription.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanDescription.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperation.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperation.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,4 +1,6 @@
 /qpid/branches/0.5-release/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperationParameter.java:757268
 /qpid/branches/java-broker-0-10/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperationParameter.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:1072051-1187351

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/META-INF/MANIFEST.MF?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/META-INF/MANIFEST.MF (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/META-INF/MANIFEST.MF Fri Oct 21 14:42:12 2011
@@ -3,7 +3,7 @@ Bundle-License: http://www.apache.org/li
 Bundle-ManifestVersion: 2
 Bundle-Name: Qpid JMX Management Console Plug-in
 Bundle-SymbolicName: org.apache.qpid.management.ui; singleton:=true
-Bundle-Version: 0.9.0
+Bundle-Version: 0.13.0
 Bundle-Activator: org.apache.qpid.management.ui.Activator
 Bundle-Vendor: Apache Software Foundation
 Bundle-Localization: plugin

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src:805429-821809
 /qpid/branches/jmx_mc_gsoc09/qpid/java/management/eclipse-plugin/src:788755
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src:1072051-1187351

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java Fri Oct 21 14:42:12 2011
@@ -47,7 +47,7 @@ public abstract class ApplicationRegistr
 
     //max supported broker management interface supported by this release of the management console
     public static final int SUPPORTED_QPID_JMX_API_MAJOR_VERSION = 2;
-    public static final int SUPPORTED_QPID_JMX_API_MINOR_VERSION = 0;
+    public static final int SUPPORTED_QPID_JMX_API_MINOR_VERSION = 3;
     
     public static final String DATA_DIR = System.getProperty("user.home") + File.separator + ".qpidmc";
     

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXManagedObject.java Fri Oct 21 14:42:12 2011
@@ -21,6 +21,7 @@
 package org.apache.qpid.management.ui.jmx;
 
 import java.util.HashMap;
+import java.util.Map;
 
 import javax.management.ObjectName;
 
@@ -31,14 +32,36 @@ public class JMXManagedObject extends Ma
 {
     private ObjectName _objName;
     
-    @SuppressWarnings("unchecked")
     public JMXManagedObject(ObjectName objName)
     {
         super();
         this._objName = objName;
         setUniqueName(_objName.toString());
-        setDomain(_objName.getDomain());       
-        super.setProperties(new HashMap(_objName.getKeyPropertyList()));
+        setDomain(_objName.getDomain());
+
+        HashMap<String,String> props = new HashMap<String,String>(_objName.getKeyPropertyList());
+
+        for(Map.Entry<String,String> entry : props.entrySet())
+        {
+            String value = entry.getValue();
+
+            if(value != null)
+            {
+                try
+                {
+                    //if the name is quoted in the ObjectName, unquote it
+                    value = ObjectName.unquote(value);
+                    entry.setValue(value);
+                }
+                catch(IllegalArgumentException e)
+                {
+                    //ignore, this just means the name is not quoted
+                    //and can be left unchanged
+                }
+            }
+        }
+
+        super.setProperties(props);
     }
     
     public ObjectName getObjectName()

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/NotificationObject.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/NotificationObject.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/NotificationObject.java (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/model/NotificationObject.java Fri Oct 21 14:42:12 2011
@@ -61,7 +61,7 @@ public class NotificationObject
     {
         if (_source instanceof ObjectName)
         {
-            return ((ObjectName)_source).getKeyProperty("name");
+            return unquote(((ObjectName)_source).getKeyProperty("name"));
         }
         
         return null;
@@ -71,12 +71,31 @@ public class NotificationObject
     {
         if (_source instanceof ObjectName)
         {
-            return ((ObjectName)_source).getKeyProperty(VIRTUAL_HOST);
+            return unquote(((ObjectName)_source).getKeyProperty(VIRTUAL_HOST));
         }
         
         return null;
     }
-    
+
+    private String unquote(String value)
+    {
+        if(value != null)
+        {
+            try
+            {
+                //if the value is quoted in the ObjectName, unquote it
+                value = ObjectName.unquote(value);
+            }
+            catch(IllegalArgumentException e)
+            {
+                //ignore, this just means the value is not quoted
+                //and can be left unchanged
+            }
+        }
+
+        return value;
+    }
+
     public String getMessage()
     {
         return _message;

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/MBeanTabFolderFactory.java Fri Oct 21 14:42:12 2011
@@ -131,6 +131,8 @@ public class MBeanTabFolderFactory
                 }
                 break;
             case VHOST_MANAGER:
+                createAttributesTab(tabFolder, mbean);
+
                 tab = new TabItem(tabFolder, SWT.NONE);
                 tab.setText("Operations");
                 controller = new VHostTabControl(tabFolder, mbean, mbsc);

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:443187-726139
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java:443187-726139
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ExchangeTypeTabControl.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java:443187-726139
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/MBeanTypeTabControl.java:1072051-1187351

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java:443187-726139
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/QueueTypeTabControl.java:1072051-1187351

Modified: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/users/UserManagementTabControl.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/users/UserManagementTabControl.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/users/UserManagementTabControl.java (original)
+++ qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/users/UserManagementTabControl.java Fri Oct 21 14:42:12 2011
@@ -37,7 +37,6 @@ import javax.management.openmbean.Tabula
 import org.apache.qpid.management.ui.ApiVersion;
 import org.apache.qpid.management.ui.ApplicationRegistry;
 import org.apache.qpid.management.ui.ManagedBean;
-import org.apache.qpid.management.common.mbeans.UserManagement;
 import org.apache.qpid.management.ui.jmx.JMXManagedObject;
 import org.apache.qpid.management.ui.jmx.MBeanUtility;
 import org.apache.qpid.management.ui.views.TabControl;
@@ -83,7 +82,7 @@ public class UserManagementTabControl ex
     private TableViewer _tableViewer = null;
 
     private TabularDataSupport _userDetails = null;
-    private UserManagement _ummb;
+    private LegacySupportingUserManagement _ummb;
     private ApiVersion _ApiVersion;
     
     public UserManagementTabControl(TabFolder tabFolder, JMXManagedObject mbean, MBeanServerConnection mbsc)
@@ -91,9 +90,9 @@ public class UserManagementTabControl ex
         super(tabFolder);
         _mbean = mbean;
         _ApiVersion = ApplicationRegistry.getServerRegistry(mbean).getManagementApiVersion();
-        _ummb = (UserManagement)
+        _ummb = (LegacySupportingUserManagement)
                 MBeanServerInvocationHandler.newProxyInstance(mbsc, mbean.getObjectName(),
-                                                            UserManagement.class, false);
+                                                            LegacySupportingUserManagement.class, false);
         _toolkit = new FormToolkit(_tabFolder.getDisplay());
         _form = _toolkit.createScrolledForm(_tabFolder);
         _form.getBody().setLayout(new GridLayout());
@@ -171,6 +170,13 @@ public class UserManagementTabControl ex
         
         String[] titles = { "Username", "JMX Management Rights" };
         int[] bounds = { 310, 200 };
+        if(!settingManagementRightsSupported())
+        {
+            //Since Qpid JMX API 2.3 / 1.12 only Username is used
+            titles = new String[]{ "Username"};
+            bounds = new int[]{ 310 };
+        }
+
         for (int i = 0; i < titles.length; i++) 
         {
             final int index = i;
@@ -214,7 +220,16 @@ public class UserManagementTabControl ex
         
         Composite buttonsComposite = _toolkit.createComposite(tableComposite);
         gridData = new GridData(SWT.FILL, SWT.TOP, false, false);
-        gridData.heightHint = 165;
+        if(!settingManagementRightsSupported())
+        {
+            //The 'Set Rights' button is not shown from Qpid JMX API 2.3 / 1.12
+            //onward, provide less space
+            gridData.heightHint = 135;
+        }
+        else
+        {
+            gridData.heightHint = 165;
+        }
         buttonsComposite.setLayoutData(gridData);
         buttonsComposite.setLayout(new GridLayout());
         
@@ -292,14 +307,14 @@ public class UserManagementTabControl ex
                     
                     if (returnValue  == InputDialog.OK)
                     {
-                        char[] password = id.getValue().toCharArray();
+                        char[] passwordArray = id.getValue().toCharArray();
 
                         // Qpid JMX API 1.1 and below expects the password to be sent as a hashed value.
                         if (_ApiVersion.lessThanOrEqualTo(1,1))
                         {
                             try
                             {
-                                password = ViewUtility.getHash(id.getValue());
+                                passwordArray = ViewUtility.getHash(id.getValue());
                             }
                             catch (Exception hashException)
                             {
@@ -312,7 +327,18 @@ public class UserManagementTabControl ex
 
                         try
                         {
-                            boolean result = _ummb.setPassword(user, password);
+                            boolean result;
+
+                            //For Qpid JMX API >=1.7 use String based method instead of older char[] based method.
+                            if(_ApiVersion.greaterThanOrEqualTo(1, 7))
+                            {
+                                result = _ummb.setPassword(user, id.getValue());
+                            }
+                            else
+                            {
+                                result = _ummb.setPassword(user, passwordArray);
+                            }
+
                             ViewUtility.operationResultFeedback(result, "Updated user password", "Failed to update user password");
                         }
                         catch(Exception e2)
@@ -324,25 +350,34 @@ public class UserManagementTabControl ex
                 }
             }
         });
-        
-        final Button setRightsButton = _toolkit.createButton(buttonsComposite, "Set Rights ...", SWT.PUSH);
-        gridData = new GridData(SWT.CENTER, SWT.BOTTOM, false, false);
-        gridData.widthHint = 125;
-        setRightsButton.setLayoutData(gridData);
-        setRightsButton.setEnabled(false);
-        setRightsButton.addSelectionListener(new SelectionAdapter()
+
+        final Button setRightsButton;
+        if(!settingManagementRightsSupported())
         {
-            public void widgetSelected(SelectionEvent e)
+            //The 'Set Rights' button is not used from Qpid JMX API 2.3 / 1.12 onward
+            setRightsButton = null;
+        }
+        else
+        {
+            setRightsButton = _toolkit.createButton(buttonsComposite, "Set Rights ...", SWT.PUSH);
+            gridData = new GridData(SWT.CENTER, SWT.BOTTOM, false, false);
+            gridData.widthHint = 125;
+            setRightsButton.setLayoutData(gridData);
+            setRightsButton.setEnabled(false);
+            setRightsButton.addSelectionListener(new SelectionAdapter()
             {
-                int selectionIndex = _table.getSelectionIndex();
-
-                if (selectionIndex != -1)
+                public void widgetSelected(SelectionEvent e)
                 {
-                    setRights(setRightsButton.getShell());
+                    int selectionIndex = _table.getSelectionIndex();
+
+                    if (selectionIndex != -1)
+                    {
+                        setRights(setRightsButton.getShell());
+                    }
                 }
-            }
-        });
-        
+            });
+        }
+
         _tableViewer.addSelectionChangedListener(new ISelectionChangedListener(){
             public void selectionChanged(SelectionChangedEvent evt)
             {
@@ -351,14 +386,20 @@ public class UserManagementTabControl ex
                 if (selectionIndex == -1)
                 {
                     deleteUsersButton.setEnabled(false);
-                    setRightsButton.setEnabled(false);
                     setPasswordButton.setEnabled(false);
+                    if(setRightsButton != null)
+                    {
+                        setRightsButton.setEnabled(false);
+                    }
                     return;
                 }
                 else
                 {
                     deleteUsersButton.setEnabled(true);
-                    setRightsButton.setEnabled(true);
+                    if(setRightsButton != null)
+                    {
+                        setRightsButton.setEnabled(true);
+                    }
                 }
                 
                 if (_table.getSelectionCount() > 1)
@@ -386,11 +427,17 @@ public class UserManagementTabControl ex
             //this only reloaded the JMX rights file before Qpid JMX API 1.2
             _toolkit.createLabel(miscGroup, " Loads the current management rights file from disk");
         }
-        else
+        else if(settingManagementRightsSupported())
         {
-            //since Qpid JMX API 1.2 it also reloads the password file
+            //from Qpid JMX API 1.2 to 2.3 / 1.12 it also reloads the password file
             _toolkit.createLabel(miscGroup, " Loads the current password and management rights files from disk");
         }
+        else
+        {
+            //since Qpid JMX API 2.3 / 1.12 it only reloads the password file
+            _toolkit.createLabel(miscGroup, " Loads the current password data");
+        }
+
         reloadUserDetails.addSelectionListener(new SelectionAdapter()
         {
             public void widgetSelected(SelectionEvent e)
@@ -453,7 +500,7 @@ public class UserManagementTabControl ex
             {
                 case 0 : // username column 
                     return (String) ((CompositeData) element).get(USERNAME);
-                case 1 : // rights column 
+                case 1 : // rights column (used for API < 2.3 / 1.12)
                     return classifyUserRights((CompositeData) element);
                 default :
                     return "-";
@@ -510,11 +557,11 @@ public class UserManagementTabControl ex
             int comparison = 0;
             switch(column)
             {
-                case 0:
+                case 0: //username column
                     comparison = String.valueOf(user1.get(USERNAME)).compareTo(
                                                 String.valueOf(user2.get(USERNAME)));
                     break;
-                case 1:
+                case 1: // rights column (used for API < 2.3 / 1.12)
                     comparison = classifyUserRights(user1).compareTo(classifyUserRights(user2));
                     break;
                 default:
@@ -555,7 +602,12 @@ public class UserManagementTabControl ex
     
     private void setRights(final Shell parent)
     {
-        
+        if(!settingManagementRightsSupported())
+        {
+            throw new UnsupportedOperationException("Setting management rights" +
+                        " is not supported using this version of the broker management API: " + (_ApiVersion));
+        }
+
         int selectionIndex = _table.getSelectionIndex();
 
         if (selectionIndex == -1)
@@ -699,6 +751,13 @@ public class UserManagementTabControl ex
         
         shell.open();
     }
+
+    protected boolean settingManagementRightsSupported()
+    {
+        //setting management access rights was supported until Qpid JMX API 1.12 / 2.3
+        return _ApiVersion.lessThan(1,12) ||
+                (_ApiVersion.greaterThanOrEqualTo(2, 0) && _ApiVersion.lessThan(2,3));
+    }
     
     private void addUser(final Shell parent)
     {
@@ -706,7 +765,8 @@ public class UserManagementTabControl ex
         
         Composite usernameComposite = _toolkit.createComposite(shell, SWT.NONE);
         usernameComposite.setBackground(shell.getBackground());
-        usernameComposite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
+        GridData usernameCompGridData = new GridData(SWT.FILL, SWT.TOP, true, false);
+        usernameComposite.setLayoutData(usernameCompGridData);
         usernameComposite.setLayout(new GridLayout(2,false));
         
         _toolkit.createLabel(usernameComposite,"Username:").setBackground(shell.getBackground());
@@ -715,28 +775,45 @@ public class UserManagementTabControl ex
         
         Composite passwordComposite = _toolkit.createComposite(shell, SWT.NONE);
         passwordComposite.setBackground(shell.getBackground());
-        passwordComposite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
+        GridData passwordCompGridData = new GridData(SWT.FILL, SWT.TOP, true, false);
+        passwordComposite.setLayoutData(passwordCompGridData);
         passwordComposite.setLayout(new GridLayout(2,false));
         
         _toolkit.createLabel(passwordComposite,"Password:").setBackground(shell.getBackground());
         final Text passwordText = new Text(passwordComposite, SWT.BORDER | SWT.PASSWORD);
         passwordText.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
-        
-        Group buttonGroup = new Group(shell, SWT.NONE);
-        buttonGroup.setText("JMX Management Rights");
-        buttonGroup.setBackground(shell.getBackground());
-        buttonGroup.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
-        buttonGroup.setLayout(new GridLayout(4,false));
 
-        final Button noneButton = new Button(buttonGroup, SWT.RADIO);
-        noneButton.setText("No Access");
-        noneButton.setSelection(true);
-        final Button readButton = new Button(buttonGroup, SWT.RADIO);
-        readButton.setText("Read Only");
-        final Button writeButton = new Button(buttonGroup, SWT.RADIO);
-        writeButton.setText("Read + Write");
-        final Button adminButton = new Button(buttonGroup, SWT.RADIO);
-        adminButton.setText("Admin");
+        final Button readButton;
+        final Button writeButton;
+        final Button adminButton;
+        if(settingManagementRightsSupported())
+        {
+            Group buttonGroup = new Group(shell, SWT.NONE);
+            buttonGroup.setText("JMX Management Rights");
+            buttonGroup.setBackground(shell.getBackground());
+            buttonGroup.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
+            buttonGroup.setLayout(new GridLayout(4,false));
+
+            final Button noneButton = new Button(buttonGroup, SWT.RADIO);
+            noneButton.setText("No Access");
+            noneButton.setSelection(true);
+            readButton = new Button(buttonGroup, SWT.RADIO);
+            readButton.setText("Read Only");
+            writeButton = new Button(buttonGroup, SWT.RADIO);
+            writeButton.setText("Read + Write");
+            adminButton = new Button(buttonGroup, SWT.RADIO);
+            adminButton.setText("Admin");
+        }
+        else
+        {
+            readButton = null;
+            writeButton = null;
+            adminButton = null;
+            //The lack of rights settings will cause the dialog to,
+            //shrink so add width hints to the other components
+            passwordCompGridData.widthHint = 350;
+            usernameCompGridData.widthHint = 350;
+        }
 
         Composite okCancelButtonsComp = _toolkit.createComposite(shell);
         okCancelButtonsComp.setBackground(shell.getBackground());
@@ -784,22 +861,36 @@ public class UserManagementTabControl ex
                         return;
                     }
                 }
-                
-                boolean read = readButton.getSelection();
-                boolean write = writeButton.getSelection();
-                boolean admin = adminButton.getSelection();
+
+                //read the access rights selections if required
+                boolean read = false;
+                boolean write = false;
+                boolean admin = false;
+                if(settingManagementRightsSupported())
+                {
+                    read = readButton.getSelection();
+                    write = writeButton.getSelection();
+                    admin = adminButton.getSelection();
+                }
                 
                 shell.dispose();
                 try
                 {
                     boolean result = false;
-                    // If we have Qpid JMX API 1.7 or above, use newer createUser method with String based password.
-                    if (_ApiVersion.greaterThanOrEqualTo(1,7))
+
+                    if (!settingManagementRightsSupported())
+                    {
+                        // If we have Qpid JMX API 2.3 / 1.12 or above, use newer createUser method without rights parameters.
+                        result = _ummb.createUser(username, password);
+                    }
+                    else if (_ApiVersion.greaterThanOrEqualTo(1,7))
                     {
+                        // If we have Qpid JMX API 1.7 or above, use newer createUser method with String based password.
                         result = _ummb.createUser(username, password, read, write, admin);
                     }
                     else
                     {
+                        // Else we have Qpid JMX API 1.6 or below, use older createUser method with char[] based password.
                         result = _ummb.createUser(username, passwordChars, read, write, admin);
                     }
                     

Propchange: qpid/branches/QPID-2519/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -1,3 +1,5 @@
 /incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc:443187-726139
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc:805429-821809
+/qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc:1061302-1072333
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/resources/macosx/Contents/MacOS/qpidmc:1072051-1187351

Modified: qpid/branches/QPID-2519/java/module.xml
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/module.xml?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/module.xml (original)
+++ qpid/branches/QPID-2519/java/module.xml Fri Oct 21 14:42:12 2011
@@ -66,6 +66,8 @@
   <property name="module.release.bz2"  location="${module.release}/${module.namever}.tar.bz2"/>
 
   <property name="module.genpom.args"  value=""/>
+  <property name="maven.remote.repo"     value="file://${module.release.base}/maven"/>
+
   <property name="broker.log.prefix" value="BROKER: "/> 
   <property name="broker.log.interleave" value="true"/>
 
@@ -75,6 +77,7 @@
   <property name="module.coverage"     location="${module.build}/coverage"/>
   <property name="cobertura.datafile"  location="${module.instrumented}/cobetura.ser"/>
 
+
   <available property="module.test.src.exists" file="${module.test.src}"/>
   <available property="module.etc.exists" file="${module.etc}"/>
   <available property="module.bin.exists" file="${module.bin}"/>
@@ -204,7 +207,6 @@
     <mkdir dir="${build.etc}"/>
     <mkdir dir="${build.lib}"/>
     <mkdir dir="${build.results}"/>
-    <mkdir dir="${build.data}"/>
     <mkdir dir="${build.plugins}"/>
     <mkdir dir="${module.classes}"/>
     <mkdir dir="${module.precompiled}"/>
@@ -220,8 +222,8 @@
         <arg line='"${project.root}/genpom"'/>
         <arg line='-s "${project.root}/lib/poms"'/>
         <arg line='-o "${build.scratch}/qpid-${module.name}.pom"'/>
-        <arg line="-u http://qpid.apache.org"/>
-        <arg line="-g org.apache.qpid"/>
+        <arg line="-u ${project.url}"/>
+        <arg line="-g ${project.groupid}"/>
         <arg line="-v ${project.version}${maven.version.suffix}"/>
         <arg line="-p qpid"/>
         <arg line='-m "${module.depends}"'/>
@@ -237,14 +239,14 @@
 
     <artifact:pom id="module.pom" file="${build.scratch}/qpid-${module.name}.pom"/>
 
-    <artifact:install file="${module.jar}" pomRefId="module.pom">
+    <artifact:install file="${module.jar}" pomRefId="module.pom" settingsFile="${maven.settings.xml}">
         <localRepository path="${maven.local.repo}"/>
     </artifact:install>
 
-    <artifact:deploy file="${module.jar}" pomRefId="module.pom" uniqueVersion="${maven.unique.version}">
+    <artifact:deploy file="${module.jar}" pomRefId="module.pom" uniqueVersion="${maven.unique.version}" settingsFile="${maven.settings.xml}">
       <attach file="${module.source.jar}" classifier="sources"/>
       <localRepository path="${maven.local.repo}"/>
-      <remoteRepository url="file://${module.release.base}/maven"/>
+      <remoteRepository url="${maven.remote.repo}"/>
     </artifact:deploy>
   </target>
 
@@ -278,7 +280,8 @@
     <javac target="${java.target}" source="${java.source}"
            destdir="${module.test.classes}" debug="on"
            deprecation="${javac.deprecation}"
-           srcdir="${module.test.src}">
+           srcdir="${module.test.src}"
+           includeantruntime="false">
       <classpath refid="module.test.path"/>
     </javac>
 
@@ -292,7 +295,7 @@
   </target>
 
 
-  <property name="profile" value="default"/>
+  <property name="profile" value="java-mms.0-10"/>
   <property name="testprofile.file" value="${test.profiles}/${profile}.testprofile"/>
   
   <available file="${testprofile.file}" property="testprofile.file.present"/>
@@ -300,29 +303,29 @@
 
   <property file="${testprofile.file}" prefix="preload"/>
   <property name="preload.include" value=""/>
-  <condition property="profiles"
-             value="${preload.include} ${profile}"
-             else="default ${preload.include} ${profile}">
-    <equals arg1="${profile}" arg2="default"/>
-  </condition>
+  <property name="profiles" value="${preload.include} ${profile}"/>
   <map property="_profile_files" value="${profiles}" join=" ">
     <globmapper from="*" to="*.testprofile"/>
   </map>
+  
+  <delete file="${build.scratch}/test-${profile}.properties" quiet="true"/>
   <concat destfile="${build.scratch}/test-${profile}.properties" force="no" fixlastline="yes">
+    <filelist dir="${test.profiles}" files="testprofile.defaults"/>
     <filelist dir="${test.profiles}" files="${_profile_files}"/>
   </concat>
   <property file="${build.scratch}/test-${profile}.properties"/>
 
   <map property="test.excludefiles" value="${test.excludes}">
-    <globmapper from="*" to="${test.profiles}/*"/>
+    <globmapper from="*" to="${test.profiles}/*;"/>
   </map>
 
-
   <condition property="dontruntest" value="dontruntest" else="runtest">
          <contains substring="${module.name}" string="${exclude.modules}" />
   </condition>
 
   <property name="jvm.args" value=""/>
+  <property name="broker.existing.qpid.work" value=""/>
+
   <target name="test" depends="build,compile-tests" if="module.test.src.exists"
          unless="${dontruntest}" description="execute unit tests">
 
@@ -331,7 +334,8 @@
     <echo message="Using profile:${profile}" level="info"/>
     <junit fork="yes" forkmode="once" maxmemory="${test.mem}" reloading="no"
            haltonfailure="${haltonfailure}" haltonerror="${haltonerror}"
-           failureproperty="test.failures" printsummary="on" timeout="6000000" >
+           failureproperty="test.failures" printsummary="on" timeout="6000000"
+           dir="${project.root}" >
 
       <jvmarg line="${jvm.args}" />
 
@@ -343,14 +347,6 @@
       <sysproperty key="log4j.configuration" value="${log4j.configuration}"/>
       <sysproperty key="java.naming.factory.initial" value="${java.naming.factory.initial}"/>
       <sysproperty key="java.naming.provider.url" value="${java.naming.provider.url}"/>
-      <sysproperty key="broker" value="${broker}"/>
-      <sysproperty key="broker.clean" value="${broker.clean}"/>
-      <sysproperty key="broker.clean.between.tests" value="${broker.clean.between.tests}"/>
-      <sysproperty key="broker.persistent" value="${broker.persistent}"/>
-      <sysproperty key="broker.version" value="${broker.version}"/>
-      <sysproperty key="broker.ready" value="${broker.ready}" />
-      <sysproperty key="broker.stopped" value="${broker.stopped}" />
-      <sysproperty key="broker.config" value="${broker.config}" />
       <sysproperty key="messagestore.class.name" value="${messagestore.class.name}" />
       <sysproperty key="test.output" value="${module.results}"/>
       <sysproperty key="qpid.amqp.version" value="${qpid.amqp.version}"/>
@@ -401,6 +397,15 @@
 
   </target>
 
+  <target name="report-module" description="generate junit reports for each module">
+    <junitreport todir="${module.results}">
+        <fileset dir="${module.results}">
+            <include name="TEST-*.xml"/>
+        </fileset>
+        <report format="frames" todir="${module.results}/report/html"/>
+    </junitreport> 
+  </target>
+
   <target name="touch-failed" if="test.failures">
     <touch file="${module.failed}"/>
     <touch file="${build.failed}"/>
@@ -647,9 +652,6 @@
       <fileset dir="${module.classes}">
         <include name="**/*.class"/>
       </fileset>
-      <fileset dir="${module.test.classes}">
-        <include name="**/*.class"/>
-      </fileset>      
     </cobertura-instrument>
   </target>
 
@@ -658,7 +660,8 @@
     <mkdir dir="${build.coveragereport}" />
     <junit fork="yes" forkmode="once" maxmemory="${test.mem}" reloading="no"
            haltonfailure="${haltonfailure}" haltonerror="${haltonerror}"
-           failureproperty="test.failures" printsummary="on" timeout="600000" >
+           failureproperty="test.failures" printsummary="on" timeout="600000"
+           dir="${project.root}" >
 
       <sysproperty key="amqj.logging.level" value="${amqj.logging.level}"/>
       <sysproperty key="amqj.protocol.logging.level" value="${amqj.protocol.logging.level}"/>
@@ -668,7 +671,6 @@
       <sysproperty key="java.naming.factory.initial" value="${java.naming.factory.initial}"/>
       <sysproperty key="java.naming.provider.url" value="${java.naming.provider.url}"/>
       <sysproperty key="broker" value="${broker}"/>
-      <sysproperty key="broker.clean" value="${broker.clean}"/>
       <sysproperty key="broker.version" value="${broker.version}"/>
       <sysproperty key="broker.ready" value="${broker.ready}" />
       <sysproperty key="test.output" value="${module.results}"/>
@@ -814,4 +816,84 @@ qpid.name=${project.name}
       <touch file="${velocity.timestamp}" />
     </target>
 
+    <target name="eclipse" depends="eclipse-setup,eclipse-project,eclipse-source-only,eclipse-source-and-test"/>
+
+    <target name="eclipse-setup">
+      <taskdef name="eclipse" classname="prantl.ant.eclipse.EclipseTask" />
+
+      <!-- Build set of directories representing the dependencies -->
+
+      <dirset id="eclipse.required.projectdirs.path" dir="${project.root}" includes="${module.depends} ${module.test.depends} neverBeEmpty">
+        <!-- Select only those projects from module.depends that contain a build.xml.  This serves to exclude dependencies that
+             don't become Eclipse projects e.g. broker-plugins and common-tests -->
+        <present targetdir="${project.root}">
+          <mapper type="glob" from="*" to="*/build.xml"/>
+        </present>
+      </dirset>
+
+      <!-- Convert from the set of directories into Eclipse project names proceeded by forward slashes -->
+
+      <pathconvert property="eclipse.required.projectnames" refid="eclipse.required.projectdirs.path" pathsep=" " dirsep="-">
+        <map from="${project.root}${file.separator}" to=''/>
+      </pathconvert>
+      <map property="eclipse.required.slashedprojectnames" value="${eclipse.required.projectnames}" join="${path.separator}">
+        <globmapper from="*" to="/*"/>
+      </map>
+
+      <echo message="Ant module dependencies : ${module.depends} ${module.test.depends} converted to Eclipse required project(s): ${eclipse.required.slashedprojectnames}"/>
+      <path id="eclipse.required.slashedprojectnames.path">
+        <pathelement path="${eclipse.required.slashedprojectnames}"/>
+      </path>
+    </target>
+
+    <!-- Create the Eclipse .project -->
+    <target name="eclipse-project">
+      <eclipse updatealways="${eclipse.updatealways}">
+        <project name="${module.name}"/>
+
+        <!-- If the Eclipse task were to ever support the generation of
+             linked resources, we would configure it to generate
+             the following:
+
+             scratch_src -> ${module.precompiled}
+
+             in each project.   This would avoid the 'linked sources'
+             manual step documented on the Wiki.
+        -->
+      </eclipse>
+    </target>
+    
+    <!-- Create the Eclipse .classpath -->
+    <target name="eclipse-source-only" unless="module.test.src.exists">
+      <eclipse updatealways="${eclipse.updatealways}">
+        <settings>
+          <jdtcore compilercompliance="${eclipse.compilercompliance}" />
+        </settings>
+        <classpath>
+          <container path="${eclipse.container}" />
+          <source path="${module.src}" />
+          <source pathref="eclipse.required.slashedprojectnames.path" />
+          <library pathref="module.libs"/>
+          <output path="classes" />
+        </classpath>
+      </eclipse>
+    </target>
+
+    <!-- Create the Eclipse .classpath -->
+    <target name="eclipse-source-and-test" if="module.test.src.exists">
+      <eclipse updatealways="${eclipse.updatealways}">
+        <settings>
+          <jdtcore compilercompliance="${eclipse.compilercompliance}" />
+        </settings>
+        <classpath>
+          <container path="${eclipse.container}" />
+          <source path="${module.src}" />
+          <source path="${module.test.src}" />
+          <source pathref="eclipse.required.slashedprojectnames.path" />
+          <library pathref="module.libs"/>
+          <library pathref="module.test.libs"/>
+          <output path="classes" />
+        </classpath>
+      </eclipse>
+    </target>
 </project>

Propchange: qpid/branches/QPID-2519/java/perftests/etc/perftests.log4j
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Oct 21 14:42:12 2011
@@ -3,5 +3,5 @@
 /qpid/branches/java-broker-0-10/qpid/java/perftests/etc/perftests.log4j:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/perftests/etc/perftests.log4j:805429-821809
 /qpid/branches/qpid-2935/qpid/java/perftests/etc/perftests.log4j:1061302-1072333
-/qpid/trunk/qpid/java/perftests/etc/perftests.log4j:1072051-1185907
+/qpid/trunk/qpid/java/perftests/etc/perftests.log4j:1072051-1187351
 /qpid/trunk/qpid/perftests/etc/perftests.log4j:796646-796653

Modified: qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/client/message/TestMessageFactory.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/client/message/TestMessageFactory.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/client/message/TestMessageFactory.java (original)
+++ qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/client/message/TestMessageFactory.java Fri Oct 21 14:42:12 2011
@@ -20,9 +20,6 @@
  */
 package org.apache.qpid.client.message;
 
-import org.apache.mina.common.ByteBuffer;
-import org.apache.mina.common.SimpleByteBufferAllocator;
-
 import javax.jms.JMSException;
 import javax.jms.Session;
 import javax.jms.ObjectMessage;

Modified: qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/config/AMQConnectionFactoryInitialiser.java
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/config/AMQConnectionFactoryInitialiser.java?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/config/AMQConnectionFactoryInitialiser.java (original)
+++ qpid/branches/QPID-2519/java/perftests/src/main/java/org/apache/qpid/config/AMQConnectionFactoryInitialiser.java Fri Oct 21 14:42:12 2011
@@ -21,8 +21,11 @@
 package org.apache.qpid.config;
 
 import org.apache.qpid.client.AMQConnectionFactory;
+import org.apache.qpid.client.AMQConnectionURL;
 import org.apache.qpid.config.ConnectionFactoryInitialiser;
 import org.apache.qpid.config.ConnectorConfig;
+import org.apache.qpid.jms.ConnectionURL;
+import org.apache.qpid.url.URLSyntaxException;
 
 import javax.jms.ConnectionFactory;
 
@@ -30,6 +33,15 @@ class AMQConnectionFactoryInitialiser im
 {
     public ConnectionFactory getFactory(ConnectorConfig config)
     {
-        return new AMQConnectionFactory(config.getHost(), config.getPort(), "/test_path");
+        try
+        {
+            final ConnectionURL connectionUrl = new AMQConnectionURL(ConnectionURL.AMQ_PROTOCOL + 
+                    "://guest:guest@/test_path?brokerlist='tcp://" + config.getHost() + ":" + config.getPort() + "'");
+            return new AMQConnectionFactory(connectionUrl);
+        }
+        catch (URLSyntaxException e)
+        {
+            throw new RuntimeException("Problem building URL", e);
+        }
     }
 }

Modified: qpid/branches/QPID-2519/java/resources/NOTICE
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/resources/NOTICE?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/resources/NOTICE (original)
+++ qpid/branches/QPID-2519/java/resources/NOTICE Fri Oct 21 14:42:12 2011
@@ -10,13 +10,6 @@ available from
 
    http://www.slf4j.org/
 
-Concurrency utlitity classes are provided by the backport-util-concurrent
-library package, which is open source software, written by
-Dawid Kurzyniec, and copyright by Distributed Computing Laboratory,
-Emory University.  The original software is available from
-
-   http://dcl.mathcs.emory.edu/util/backport-util-concurrent/
-
 Data compression support is provided by the JZLib library package,
 which is open source software, written by JCraft, and copyright
 by JCraft.  The original software is available from

Modified: qpid/branches/QPID-2519/java/systests/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/systests/build.xml?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/systests/build.xml (original)
+++ qpid/branches/QPID-2519/java/systests/build.xml Fri Oct 21 14:42:12 2011
@@ -19,10 +19,18 @@ nn - or more contributor license agreeme
  -
  -->
 <project name="System Tests" default="build">
-    <property name="module.depends" value="client management/tools/qpid-cli management/common broker broker/test common common/test junit-toolkit"/>
+
+    <condition property="systests.optional.depends" value="bdbstore" else="">
+        <and>
+            <contains string="${modules.opt}" substring="bdbstore"/>
+            <contains string="${profile}" substring="bdb"/>
+        </and>
+    </condition>
+
+    <property name="module.depends" value="client management/common broker broker/test common common/test junit-toolkit ${systests.optional.depends}"/>
     <property name="module.test.src" location="src/main/java"/>
     <property name="module.test.excludes"
-              value="**/TTLTest.java,**/DropInTest.java,**/TestClientControlledTest.java"/>
+              value="**/DropInTest.java,**/TestClientControlledTest.java"/>
 
     <import file="../module.xml"/>
 

Modified: qpid/branches/QPID-2519/java/systests/etc/config-systests-aclv2.xml
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/systests/etc/config-systests-aclv2.xml?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/systests/etc/config-systests-aclv2.xml (original)
+++ qpid/branches/QPID-2519/java/systests/etc/config-systests-aclv2.xml Fri Oct 21 14:42:12 2011
@@ -22,7 +22,7 @@
 <configuration>
     <system/>
     <override>
-        <xml fileName="${test.config}" optional="true"/>
+        <xml fileName="${QPID_HOME}/${test.config}" optional="true"/>
         <xml fileName="${QPID_HOME}/etc/config-systests-aclv2-settings.xml"/>
         <xml fileName="${QPID_HOME}/etc/config-systests-settings.xml"/>
         <xml fileName="${QPID_HOME}/etc/config.xml"/>

Modified: qpid/branches/QPID-2519/java/systests/etc/config-systests-derby.xml
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/systests/etc/config-systests-derby.xml?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/systests/etc/config-systests-derby.xml (original)
+++ qpid/branches/QPID-2519/java/systests/etc/config-systests-derby.xml Fri Oct 21 14:42:12 2011
@@ -22,7 +22,7 @@
 <configuration>
     <system/>
     <override>
-        <xml fileName="${test.config}" optional="true"/>
+        <xml fileName="${QPID_HOME}/${test.config}" optional="true"/>
         <xml fileName="${QPID_HOME}/etc/config-systests-derby-settings.xml"/>
         <xml fileName="${QPID_HOME}/etc/config-systests-settings.xml"/>
         <xml fileName="${QPID_HOME}/etc/config.xml"/>

Modified: qpid/branches/QPID-2519/java/systests/etc/config-systests-firewall-2.xml
URL: http://svn.apache.org/viewvc/qpid/branches/QPID-2519/java/systests/etc/config-systests-firewall-2.xml?rev=1187375&r1=1187374&r2=1187375&view=diff
==============================================================================
--- qpid/branches/QPID-2519/java/systests/etc/config-systests-firewall-2.xml (original)
+++ qpid/branches/QPID-2519/java/systests/etc/config-systests-firewall-2.xml Fri Oct 21 14:42:12 2011
@@ -32,30 +32,16 @@
         <ssl>
             <enabled>false</enabled>
             <sslOnly>false</sslOnly>
-            <keystorePath>/path/to/keystore.ks</keystorePath>
-            <keystorePassword>keystorepass</keystorePassword>
+            <keyStorePath>/path/to/keystore.ks</keyStorePath>
+            <keyStorePassword>keystorepass</keyStorePassword>
         </ssl>
-        <qpidnio>false</qpidnio>
-        <protectio>
-            <enabled>false</enabled>
-            <readBufferLimitSize>262144</readBufferLimitSize>
-            <writeBufferLimitSize>262144</writeBufferLimitSize>	    
-        </protectio>
-        <transport>nio</transport>
         <port>5672</port>
         <sslport>8672</sslport>
-        <socketReceiveBuffer>32768</socketReceiveBuffer>
-        <socketSendBuffer>32768</socketSendBuffer>
+        <socketReceiveBuffer>262144</socketReceiveBuffer>
+        <socketSendBuffer>262144</socketSendBuffer>
     </connector>
     <management>
         <enabled>false</enabled>
-        <jmxport>8999</jmxport>
-        <ssl>
-            <enabled>false</enabled>
-            <!-- Update below path to your keystore location, eg ${conf}/qpid.keystore  -->
-            <keyStorePath>${prefix}/../test-profiles/test_resources/ssl/keystore.jks</keyStorePath>
-            <keyStorePassword>password</keyStorePassword>
-        </ssl>
     </management>
     <advanced>
         <filterchain enableExecutorPool="true"/>
@@ -68,10 +54,8 @@
     </advanced>
 
     <security>
-        <principal-databases>
-            <!-- Example use of Base64 encoded MD5 hashes for authentication via CRAM-MD5-Hashed -->
+        <pd-auth-manager>
             <principal-database>
-                <name>passwordfile</name>
                 <class>org.apache.qpid.server.security.auth.database.PlainPasswordFilePrincipalDatabase</class>
                 <attributes>
                     <attribute>
@@ -80,15 +64,10 @@
                     </attribute>
                 </attributes>
             </principal-database>
-        </principal-databases>
+        </pd-auth-manager>
 
         <msg-auth>false</msg-auth>
         
-        <jmx>
-            <access>${conf}/jmxremote.access</access>
-            <principal-database>passwordfile</principal-database>
-        </jmx>
-
         <firewall default-action="deny"/>
     </security>
 



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