You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2017/06/27 09:34:27 UTC

[1/3] qpid-broker-j git commit: QPID-7839: [Java Broker] Manage inter module dependencies with dependencyManagement too

Repository: qpid-broker-j
Updated Branches:
  refs/heads/master a0773955c -> ae54418f1


QPID-7839: [Java Broker] Manage inter module dependencies with dependencyManagement too

Also standardised on the approach to inter-module test dependencies i.e. favour <classifier/> over <type/>.


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/07a16bbe
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/07a16bbe
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/07a16bbe

Branch: refs/heads/master
Commit: 07a16bbe50a542ac998aa6621114eb67c7b5bfc7
Parents: a077395
Author: Keith Wall <kw...@apache.org>
Authored: Fri Jun 23 09:14:56 2017 +0100
Committer: Keith Wall <kw...@apache.org>
Committed: Tue Jun 27 10:12:33 2017 +0100

----------------------------------------------------------------------
 bdbstore/pom.xml                                |   8 +-
 bdbstore/systests/pom.xml                       |   5 +-
 broker-core/pom.xml                             |   2 -
 broker-plugins/access-control/pom.xml           |   6 +-
 broker-plugins/amqp-0-10-protocol/pom.xml       |   6 +-
 broker-plugins/amqp-0-8-protocol/pom.xml        |   6 +-
 broker-plugins/amqp-1-0-bdb-store/pom.xml       |   8 +-
 broker-plugins/amqp-1-0-jdbc-store/pom.xml      |   7 +-
 broker-plugins/amqp-1-0-protocol/pom.xml        |   6 +-
 .../amqp-msg-conv-0-10-to-1-0/pom.xml           |   6 +-
 .../amqp-msg-conv-0-8-to-0-10/pom.xml           |   4 -
 broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml |   5 -
 broker-plugins/derby-store/pom.xml              |   6 +-
 broker-plugins/jdbc-provider-bone/pom.xml       |   2 -
 broker-plugins/jdbc-store/pom.xml               |   6 +-
 broker-plugins/logging-logback/pom.xml          |   6 +-
 broker-plugins/management-amqp/pom.xml          |   2 -
 broker-plugins/management-http/pom.xml          |   4 -
 broker-plugins/memory-store/pom.xml             |   6 +-
 broker-plugins/websocket/pom.xml                |   2 -
 broker/pom.xml                                  |  20 ---
 perftests/pom.xml                               |   1 -
 perftests/visualisation-jfc/pom.xml             |   3 -
 pom.xml                                         | 168 +++++++++++++++++++
 qpid-perftests-systests/pom.xml                 |   4 -
 systests/pom.xml                                |  21 +--
 systests/protocol-tests-amqp-1-0/pom.xml        |  11 --
 systests/qpid-systests-jms_2.0/pom.xml          |   3 -
 28 files changed, 182 insertions(+), 152 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/bdbstore/pom.xml
----------------------------------------------------------------------
diff --git a/bdbstore/pom.xml b/bdbstore/pom.xml
index 946858d..c438d13 100644
--- a/bdbstore/pom.xml
+++ b/bdbstore/pom.xml
@@ -32,21 +32,18 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
@@ -58,22 +55,19 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/bdbstore/systests/pom.xml
----------------------------------------------------------------------
diff --git a/bdbstore/systests/pom.xml b/bdbstore/systests/pom.xml
index bc76dc4..7580d78 100644
--- a/bdbstore/systests/pom.xml
+++ b/bdbstore/systests/pom.xml
@@ -40,20 +40,17 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-systests</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-core/pom.xml
----------------------------------------------------------------------
diff --git a/broker-core/pom.xml b/broker-core/pom.xml
index 60d6a63..c8feefb 100644
--- a/broker-core/pom.xml
+++ b/broker-core/pom.xml
@@ -40,7 +40,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -80,7 +79,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/access-control/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/access-control/pom.xml b/broker-plugins/access-control/pom.xml
index 68d8e8b..989321f 100644
--- a/broker-plugins/access-control/pom.xml
+++ b/broker-plugins/access-control/pom.xml
@@ -37,14 +37,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -52,15 +50,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-0-10-protocol/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-10-protocol/pom.xml b/broker-plugins/amqp-0-10-protocol/pom.xml
index 3d08bfa..39cc10d 100644
--- a/broker-plugins/amqp-0-10-protocol/pom.xml
+++ b/broker-plugins/amqp-0-10-protocol/pom.xml
@@ -33,14 +33,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -53,15 +51,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-0-8-protocol/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-0-8-protocol/pom.xml b/broker-plugins/amqp-0-8-protocol/pom.xml
index 60ed62e..a40955f 100644
--- a/broker-plugins/amqp-0-8-protocol/pom.xml
+++ b/broker-plugins/amqp-0-8-protocol/pom.xml
@@ -37,14 +37,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -52,15 +50,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-1-0-bdb-store/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-bdb-store/pom.xml b/broker-plugins/amqp-1-0-bdb-store/pom.xml
index 2dfba63..b3fc2a4 100644
--- a/broker-plugins/amqp-1-0-bdb-store/pom.xml
+++ b/broker-plugins/amqp-1-0-bdb-store/pom.xml
@@ -38,42 +38,36 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-core</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-codegen</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-bdbstore</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <!-- test dependencies -->
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-test-utils</artifactId>
-            <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-            <version>${project.version}</version>
             <scope>test</scope>
-            <type>test-jar</type>
+            <classifier>tests</classifier>
         </dependency>
     </dependencies>
 </project>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-1-0-jdbc-store/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-jdbc-store/pom.xml b/broker-plugins/amqp-1-0-jdbc-store/pom.xml
index e7dab48..9e8c3dc 100644
--- a/broker-plugins/amqp-1-0-jdbc-store/pom.xml
+++ b/broker-plugins/amqp-1-0-jdbc-store/pom.xml
@@ -40,36 +40,31 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-codegen</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <!-- test dependencies -->
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-test-utils</artifactId>
-            <version>${project.version}</version>
             <scope>test</scope>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-            <version>${project.version}</version>
             <scope>test</scope>
-            <type>test-jar</type>
+            <classifier>tests</classifier>
         </dependency>
 
         <dependency>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-1-0-protocol/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-1-0-protocol/pom.xml b/broker-plugins/amqp-1-0-protocol/pom.xml
index fab8106..c2aae3f 100644
--- a/broker-plugins/amqp-1-0-protocol/pom.xml
+++ b/broker-plugins/amqp-1-0-protocol/pom.xml
@@ -33,14 +33,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -48,15 +46,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-msg-conv-0-10-to-1-0/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-msg-conv-0-10-to-1-0/pom.xml b/broker-plugins/amqp-msg-conv-0-10-to-1-0/pom.xml
index 6ba0d7d..e9a9c9b 100644
--- a/broker-plugins/amqp-msg-conv-0-10-to-1-0/pom.xml
+++ b/broker-plugins/amqp-msg-conv-0-10-to-1-0/pom.xml
@@ -33,27 +33,23 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
-      <version>${project.version}</version>
-    </dependency> 
+    </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
   </dependencies>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-msg-conv-0-8-to-0-10/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-msg-conv-0-8-to-0-10/pom.xml b/broker-plugins/amqp-msg-conv-0-8-to-0-10/pom.xml
index edadb1a..abf8795 100644
--- a/broker-plugins/amqp-msg-conv-0-8-to-0-10/pom.xml
+++ b/broker-plugins/amqp-msg-conv-0-8-to-0-10/pom.xml
@@ -33,27 +33,23 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
   </dependencies>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml b/broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml
index 5f9fe50..a1f088b 100644
--- a/broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml
+++ b/broker-plugins/amqp-msg-conv-0-8-to-1-0/pom.xml
@@ -33,33 +33,28 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/derby-store/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/derby-store/pom.xml b/broker-plugins/derby-store/pom.xml
index 4f96103..d5edc52 100644
--- a/broker-plugins/derby-store/pom.xml
+++ b/broker-plugins/derby-store/pom.xml
@@ -33,13 +33,11 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -52,15 +50,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/jdbc-provider-bone/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/jdbc-provider-bone/pom.xml b/broker-plugins/jdbc-provider-bone/pom.xml
index 50174f6..1f218ba 100644
--- a/broker-plugins/jdbc-provider-bone/pom.xml
+++ b/broker-plugins/jdbc-provider-bone/pom.xml
@@ -33,13 +33,11 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/jdbc-store/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/jdbc-store/pom.xml b/broker-plugins/jdbc-store/pom.xml
index 7ec0eb7..5c16eaa 100644
--- a/broker-plugins/jdbc-store/pom.xml
+++ b/broker-plugins/jdbc-store/pom.xml
@@ -33,13 +33,11 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -47,15 +45,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/logging-logback/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/logging-logback/pom.xml b/broker-plugins/logging-logback/pom.xml
index 3df0526..31bb77b 100644
--- a/broker-plugins/logging-logback/pom.xml
+++ b/broker-plugins/logging-logback/pom.xml
@@ -33,14 +33,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -53,15 +51,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/management-amqp/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/management-amqp/pom.xml b/broker-plugins/management-amqp/pom.xml
index 220eb1c..91fc015 100644
--- a/broker-plugins/management-amqp/pom.xml
+++ b/broker-plugins/management-amqp/pom.xml
@@ -33,7 +33,6 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-core</artifactId>
-            <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
@@ -41,7 +40,6 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-codegen</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
         </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/management-http/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/management-http/pom.xml b/broker-plugins/management-http/pom.xml
index 85f6507..ad83158 100644
--- a/broker-plugins/management-http/pom.xml
+++ b/broker-plugins/management-http/pom.xml
@@ -39,14 +39,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -116,14 +114,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/memory-store/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/memory-store/pom.xml b/broker-plugins/memory-store/pom.xml
index 39af559..45db2b4 100644
--- a/broker-plugins/memory-store/pom.xml
+++ b/broker-plugins/memory-store/pom.xml
@@ -33,14 +33,12 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
       <scope>provided</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-codegen</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
@@ -48,15 +46,13 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker-plugins/websocket/pom.xml
----------------------------------------------------------------------
diff --git a/broker-plugins/websocket/pom.xml b/broker-plugins/websocket/pom.xml
index f4315a8..23e9048 100644
--- a/broker-plugins/websocket/pom.xml
+++ b/broker-plugins/websocket/pom.xml
@@ -33,14 +33,12 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-core</artifactId>
-            <version>${project.version}</version>
             <scope>provided</scope>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-codegen</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
         </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/broker/pom.xml
----------------------------------------------------------------------
diff --git a/broker/pom.xml b/broker/pom.xml
index cbca62c..b8ac0cb 100644
--- a/broker/pom.xml
+++ b/broker/pom.xml
@@ -36,7 +36,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
@@ -47,7 +46,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-logging-logback</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
@@ -58,105 +56,90 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-access-control</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-0-10</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-1-0</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-10-to-1-0</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-derby-store</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-provider-bone</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol-jdbc-link-store</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-management-http</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-management-amqp</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-memory-store</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-websocket</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
 
@@ -164,7 +147,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
       <optional>true</optional>
     </dependency>
@@ -172,7 +154,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol-bdb-link-store</artifactId>
-      <version>${project.version}</version>
       <scope>runtime</scope>
       <optional>true</optional>
     </dependency>
@@ -181,7 +162,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/perftests/pom.xml
----------------------------------------------------------------------
diff --git a/perftests/pom.xml b/perftests/pom.xml
index dd2d727..bda5113 100644
--- a/perftests/pom.xml
+++ b/perftests/pom.xml
@@ -102,7 +102,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
   </dependencies>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/perftests/visualisation-jfc/pom.xml
----------------------------------------------------------------------
diff --git a/perftests/visualisation-jfc/pom.xml b/perftests/visualisation-jfc/pom.xml
index 52f8aa7..5feda3f 100644
--- a/perftests/visualisation-jfc/pom.xml
+++ b/perftests/visualisation-jfc/pom.xml
@@ -33,7 +33,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-perftests</artifactId>
-      <version>${project.version}</version>
       <exclusions>
         <exclusion>
           <groupId>org.apache.qpid</groupId>
@@ -46,7 +45,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
@@ -77,7 +75,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 612ba6d..f9a2f6b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -218,6 +218,174 @@
 
   <dependencyManagement>
     <dependencies>
+      <!-- Internal dependencies -->
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-bdbstore</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-bdbstore</artifactId>
+        <version>${project.version}</version>
+        <classifier>tests</classifier>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-core</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-core</artifactId>
+        <version>${project.version}</version>
+        <classifier>tests</classifier>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-codegen</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-access-control</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-jdbc-provider-bone</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-0-10</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-1-0</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-msg-conv-0-10-to-1-0</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
+        <version>${project.version}</version>
+        <classifier>tests</classifier>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-derby-store</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-logging-logback</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-memory-store</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-1-0-protocol-jdbc-link-store</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-amqp-1-0-protocol-bdb-link-store</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-management-http</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-management-amqp</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-broker-plugins-websocket</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-perftests</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-systests</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <dependency>
+        <groupId>org.apache.qpid</groupId>
+        <artifactId>qpid-test-utils</artifactId>
+        <version>${project.version}</version>
+      </dependency>
+
+      <!-- External dependencies -->
       <dependency>
         <groupId>org.apache.qpid</groupId>
         <artifactId>qpid-client</artifactId>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/qpid-perftests-systests/pom.xml
----------------------------------------------------------------------
diff --git a/qpid-perftests-systests/pom.xml b/qpid-perftests-systests/pom.xml
index acf976a..f7106cd 100644
--- a/qpid-perftests-systests/pom.xml
+++ b/qpid-perftests-systests/pom.xml
@@ -37,20 +37,17 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-perftests</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-systests</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <!-- client deps -->
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-client</artifactId>
-      <version>${qpid-jms-client-amqp-0-x-version}</version>
     </dependency>
 
     <!-- other deps -->
@@ -64,7 +61,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
       <optional>true</optional>
     </dependency>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/systests/pom.xml
----------------------------------------------------------------------
diff --git a/systests/pom.xml b/systests/pom.xml
index 49615c8..6ca1708 100644
--- a/systests/pom.xml
+++ b/systests/pom.xml
@@ -34,7 +34,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-test-utils</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <!-- Many systests have a compile/runtime dependency on qpid-client -->
@@ -47,111 +46,93 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-core</artifactId>
-      <version>${project.version}</version>
-      <type>test-jar</type>
+      <classifier>tests</classifier>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-access-control</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-8-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-0-10-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-0-10</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-8-to-1-0</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-msg-conv-0-10-to-1-0</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-derby-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-provider-bone</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-jdbc-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-logging-logback</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-management-http</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-memory-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol-jdbc-link-store</artifactId>
-      <version>${project.version}</version>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol-bdb-link-store</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
       <optional>true</optional>
     </dependency>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/systests/protocol-tests-amqp-1-0/pom.xml
----------------------------------------------------------------------
diff --git a/systests/protocol-tests-amqp-1-0/pom.xml b/systests/protocol-tests-amqp-1-0/pom.xml
index 9aa5295..d90f967 100644
--- a/systests/protocol-tests-amqp-1-0/pom.xml
+++ b/systests/protocol-tests-amqp-1-0/pom.xml
@@ -34,40 +34,33 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-core</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-websocket</artifactId>
-            <version>${project.version}</version>
         </dependency>
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-codegen</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-test-utils</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-logging-logback</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-derby-store</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
             <scope>test</scope>
         </dependency>
@@ -75,13 +68,11 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-memory-store</artifactId>
-            <version>${project.version}</version>
         </dependency>
 
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol-jdbc-link-store</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
             <scope>test</scope>
         </dependency>
@@ -89,7 +80,6 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-broker-plugins-amqp-1-0-protocol-bdb-link-store</artifactId>
-            <version>${project.version}</version>
             <optional>true</optional>
             <scope>test</scope>
         </dependency>
@@ -97,7 +87,6 @@
         <dependency>
             <groupId>org.apache.qpid</groupId>
             <artifactId>qpid-bdbstore</artifactId>
-            <version>${project.version}</version>
             <scope>test</scope>
             <optional>true</optional>
         </dependency>

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/07a16bbe/systests/qpid-systests-jms_2.0/pom.xml
----------------------------------------------------------------------
diff --git a/systests/qpid-systests-jms_2.0/pom.xml b/systests/qpid-systests-jms_2.0/pom.xml
index 4d828f0..c27d593 100644
--- a/systests/qpid-systests-jms_2.0/pom.xml
+++ b/systests/qpid-systests-jms_2.0/pom.xml
@@ -44,7 +44,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-systests</artifactId>
-      <version>${project.version}</version>
       <exclusions>
         <exclusion>
           <groupId>org.apache.geronimo.specs</groupId>
@@ -56,7 +55,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-bdbstore</artifactId>
-      <version>${project.version}</version>
       <scope>test</scope>
       <optional>true</optional>
     </dependency>
@@ -69,7 +67,6 @@
     <dependency>
       <groupId>org.apache.qpid</groupId>
       <artifactId>qpid-broker-plugins-amqp-1-0-protocol-bdb-link-store</artifactId>
-      <version>${project.version}</version>
       <optional>true</optional>
     </dependency>
 


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


[2/3] qpid-broker-j git commit: QPID-7838: [AMQP Management] Respect semantics of model secure attributes and operations

Posted by kw...@apache.org.
QPID-7838: [AMQP Management] Respect semantics of model secure attributes and operations

Also:
* fixed defect that prevented the invocation of operations that were declared of a non-category class.
* managed operations now return a response message payload appropiate to their return type (rather than serialised java object).
* pushed up HttpPort#allowConfidentialOperationsOnInsecureChannels Port as it also applies to AmqpPorts too.


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/3d042838
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/3d042838
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/3d042838

Branch: refs/heads/master
Commit: 3d0428385349a01c1a8f231a7e1407ec4069b32b
Parents: 07a16bb
Author: Keith Wall <ke...@gmail.com>
Authored: Sat Jun 24 17:30:12 2017 +0100
Committer: Keith Wall <kw...@apache.org>
Committed: Tue Jun 27 10:33:07 2017 +0100

----------------------------------------------------------------------
 .../org/apache/qpid/server/model/Broker.java    |   2 +-
 .../ConfiguredObjectCustomSerialization.java    |  48 +++-
 .../java/org/apache/qpid/server/model/Port.java |   5 +
 .../qpid/server/model/port/AbstractPort.java    |   7 +
 .../apache/qpid/server/model/port/HttpPort.java |   5 -
 .../qpid/server/model/port/HttpPortImpl.java    |   9 -
 .../security/auth/SocketConnectionMetaData.java |   3 +-
 .../server/management/amqp/ManagementNode.java  | 217 ++++++++------
 .../amqp/ManagementOutputConverter.java         | 100 ++++---
 .../qpid/systest/MessageCompressionTest.java    |   3 +-
 .../management/amqp/AmqpManagementTest.java     | 287 ++++++++++++-------
 .../rest/ExportImportMessagesRestTest.java      |   3 +-
 .../qpid/systest/rest/MessagesRestTest.java     |   3 +-
 .../systest/rest/PublishMessageRestTest.java    |   3 +-
 14 files changed, 423 insertions(+), 272 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
index 044f035..98523c3 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
@@ -35,7 +35,7 @@ import org.apache.qpid.server.security.auth.SocketConnectionMetaData;
 import org.apache.qpid.server.stats.StatisticsGatherer;
 import org.apache.qpid.server.store.preferences.UserPreferencesCreator;
 
-@ManagedObject( defaultType = Broker.BROKER_TYPE)
+@ManagedObject( defaultType = Broker.BROKER_TYPE, amqpName = "org.apache.qpid.Broker")
 public interface Broker<X extends Broker<X>> extends ConfiguredObject<X>, EventLoggerProvider, StatisticsGatherer, Container<X>,
                                                      UserPreferencesCreator
 {

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectCustomSerialization.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectCustomSerialization.java b/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectCustomSerialization.java
index 5a4628e..1aae0ca 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectCustomSerialization.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/ConfiguredObjectCustomSerialization.java
@@ -20,6 +20,8 @@
  */
 package org.apache.qpid.server.model;
 
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
 import java.security.Principal;
@@ -187,8 +189,13 @@ public class ConfiguredObjectCustomSerialization
                         String propertyName =
                                 methodName.startsWith("is") ? methodName.substring(2) : methodName.substring(3);
                         propertyName = Character.toLowerCase(propertyName.charAt(0)) + propertyName.substring(1);
+                        final boolean originalAccessible = method.isAccessible();
                         try
                         {
+                            if (!originalAccessible)
+                            {
+                                method.setAccessible(true);
+                            }
                             final Object attrValue = method.invoke(value);
                             if (attrValue != null)
                             {
@@ -197,7 +204,14 @@ public class ConfiguredObjectCustomSerialization
                         }
                         catch (IllegalAccessException | InvocationTargetException e)
                         {
-                            throw new ServerScopedRuntimeException(e);
+                            throw new ServerScopedRuntimeException(String.format("Failed to access %s", propertyName), e);
+                        }
+                        finally
+                        {
+                            if (!originalAccessible)
+                            {
+                                method.setAccessible(originalAccessible);
+                            }
                         }
                     }
                 }
@@ -258,4 +272,36 @@ public class ConfiguredObjectCustomSerialization
             return false;
         }
     }
+
+    @SuppressWarnings("unused")
+    private static final Converter<Content> CONTENT_CONVERTER = new ContentConverter();
+
+    private static class ContentConverter extends AbstractConverter<Content>
+    {
+
+        public ContentConverter()
+        {
+            super(Content.class, true, false);
+        }
+
+        @Override
+        public Object convert(final Content content)
+        {
+            final byte[] resultBytes;
+            try(ByteArrayOutputStream baos = new ByteArrayOutputStream())
+            {
+                content.write(baos);
+                return baos.toByteArray();
+            }
+            catch (IOException e)
+            {
+                throw new RuntimeException(String.format(
+                        "Unexpected failure whilst streaming operation content from content : %s", content));
+            }
+            finally
+            {
+                content.release();
+            }
+        }
+    }
 }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/Port.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/Port.java b/broker-core/src/main/java/org/apache/qpid/server/model/Port.java
index e3fc340..b34f400 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/Port.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/Port.java
@@ -59,6 +59,7 @@ public interface Port<X extends Port<X>> extends ConfiguredObject<X>
 
     @ManagedContextDefault(name = CONNECTION_MAXIMUM_AUTHENTICATION_DELAY)
     long DEFAULT_MAX_CONNECTION_AUTHENTICATION_DELAY = 10000l;
+    String ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS = "allowConfidentialOperationsOnInsecureChannels";
 
     // Attributes
 
@@ -66,6 +67,10 @@ public interface Port<X extends Port<X>> extends ConfiguredObject<X>
                                                        + " will cause a dynamically allocated port to be assigned.")
     int getPort();
 
+    @ManagedAttribute( defaultValue = "false", description = "If true allow operations which may return confidential "
+                                                             + "information to be executed on insecure connections")
+    boolean isAllowConfidentialOperationsOnInsecureChannels();
+
     @DerivedAttribute( description = "Actual port used to accept incoming connections. Will be -1 if the port"
                                      + " is not currently bound.")
     int getBoundPort();

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java b/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
index b97dd7a..8349092 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/port/AbstractPort.java
@@ -76,6 +76,8 @@ public abstract class AbstractPort<X extends AbstractPort<X>> extends AbstractCo
     @ManagedAttributeField
     private TrustStore<?> _clientCertRecorder;
 
+    @ManagedAttributeField
+    private boolean _allowConfidentialOperationsOnInsecureChannels;
 
     private List<String> _tlsProtocolBlackList;
     private List<String> _tlsProtocolWhiteList;
@@ -204,6 +206,11 @@ public abstract class AbstractPort<X extends AbstractPort<X>> extends AbstractCo
         return _authenticationProvider;
     }
 
+    @Override
+    public boolean isAllowConfidentialOperationsOnInsecureChannels()
+    {
+        return _allowConfidentialOperationsOnInsecureChannels;
+    }
 
     private boolean isUsingTLSTransport()
     {

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java
index 3cc9158..06b4c2b 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPort.java
@@ -37,7 +37,6 @@ public interface HttpPort<X extends HttpPort<X>> extends Port<X>
     String DEFAULT_HTTP_WANT_CLIENT_AUTH = "false";
     String THREAD_POOL_MINIMUM = "threadPoolMinimum";
     String THREAD_POOL_MAXIMUM = "threadPoolMaximum";
-    String ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS = "allowConfidentialOperationsOnInsecureChannels";
 
     String PORT_HTTP_NUMBER_OF_SELECTORS = "qpid.port.http.threadPool.numberOfSelectors";
     @SuppressWarnings("unused")
@@ -95,10 +94,6 @@ public interface HttpPort<X extends HttpPort<X>> extends Port<X>
     @ManagedAttribute( defaultValue = "${" + PORT_HTTP_THREAD_POOL_MINIMUM + "}")
     int getThreadPoolMinimum();
 
-    @ManagedAttribute( defaultValue = "false", description = "If true allow operations which may return confidential "
-                                                             + "information to be executed on insecure connections")
-    boolean isAllowConfidentialOperationsOnInsecureChannels();
-
     @ManagedAttribute( defaultValue = "true", description = "If true then this port will provide HTTP management "
                                                             + "services for the broker, if no virtualhostalaias "
                                                             + "matches the HTTP Host in the request")

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPortImpl.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPortImpl.java b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPortImpl.java
index 88296df..74c5b98 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPortImpl.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/model/port/HttpPortImpl.java
@@ -45,9 +45,6 @@ public class HttpPortImpl extends AbstractPort<HttpPortImpl> implements HttpPort
     private int _threadPoolMinimum;
 
     @ManagedAttributeField
-    private boolean _allowConfidentialOperationsOnInsecureChannels;
-
-    @ManagedAttributeField
     private boolean _manageBrokerOnNoAliasMatch;
     private int _numberOfAcceptors;
     private int _numberOfSelectors;
@@ -91,12 +88,6 @@ public class HttpPortImpl extends AbstractPort<HttpPortImpl> implements HttpPort
     }
 
     @Override
-    public boolean isAllowConfidentialOperationsOnInsecureChannels()
-    {
-        return _allowConfidentialOperationsOnInsecureChannels;
-    }
-
-    @Override
     public boolean isManageBrokerOnNoAliasMatch()
     {
         return _manageBrokerOnNoAliasMatch;

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-core/src/main/java/org/apache/qpid/server/security/auth/SocketConnectionMetaData.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/security/auth/SocketConnectionMetaData.java b/broker-core/src/main/java/org/apache/qpid/server/security/auth/SocketConnectionMetaData.java
index 21b685c..038bdcd 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/security/auth/SocketConnectionMetaData.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/security/auth/SocketConnectionMetaData.java
@@ -20,12 +20,13 @@
  */
 package org.apache.qpid.server.security.auth;
 
+import org.apache.qpid.server.model.ManagedAttributeValue;
 import org.apache.qpid.server.model.ManagedAttributeValueType;
 import org.apache.qpid.server.model.Protocol;
 import org.apache.qpid.server.model.Transport;
 
 @ManagedAttributeValueType(isAbstract = true)
-public interface SocketConnectionMetaData
+public interface SocketConnectionMetaData extends ManagedAttributeValue
 {
     String getLocalAddress();
     String getRemoteAddress();

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java b/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
index 0df5591..7650546 100644
--- a/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
+++ b/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementNode.java
@@ -37,7 +37,6 @@ import java.util.Comparator;
 import java.util.EnumSet;
 import java.util.HashMap;
 import java.util.HashSet;
-import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
@@ -48,10 +47,13 @@ import java.util.regex.Pattern;
 
 import javax.security.auth.Subject;
 
+import com.google.common.collect.Sets;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.qpid.server.configuration.IllegalConfigurationException;
+import org.apache.qpid.server.connection.AmqpConnectionMetaData;
+import org.apache.qpid.server.connection.ConnectionPrincipal;
 import org.apache.qpid.server.connection.SessionPrincipal;
 import org.apache.qpid.server.consumer.ConsumerOption;
 import org.apache.qpid.server.consumer.ConsumerTarget;
@@ -133,7 +135,7 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
     public static final int STATUS_CODE_NOT_FOUND = 404;
     public static final int STATUS_CODE_CONFLICT = 409;
     public static final int STATUS_CODE_INTERNAL_ERROR = 500;
-    public static final int STATUS_CODE_NOT_IMPLEMENTED= 501;
+    public static final int STATUS_CODE_NOT_IMPLEMENTED = 501;
     private static final Comparator<? super ConfiguredObject<?>> OBJECT_COMPARATOR =
             new Comparator<ConfiguredObject<?>>()
             {
@@ -176,14 +178,7 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
 
     private final ManagementInputConverter _managementInputConverter;
 
-    private static final InstanceProperties CONSUMED_INSTANCE_PROPERTIES = new InstanceProperties()
-    {
-        @Override
-        public Object getProperty(final Property prop)
-        {
-            return null;
-        }
-    };
+    private static final InstanceProperties CONSUMED_INSTANCE_PROPERTIES = prop -> null;
 
     ManagementNode(final NamedAddressSpace addressSpace,
                    final ConfiguredObject<?> configuredObject)
@@ -401,12 +396,11 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
     }
 
     private synchronized void enqueue(InternalMessage message,
-                                      InstanceProperties properties,
                                       Action<? super MessageInstance> postEnqueueAction)
     {
         if(postEnqueueAction != null)
         {
-            postEnqueueAction.performAction(new ConsumedMessageInstance(message, properties));
+            postEnqueueAction.performAction(new ConsumedMessageInstance(message));
         }
 
 
@@ -444,12 +438,13 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
                         final Action<? super MessageInstance> action,
                         final MessageEnqueueRecord record)
     {
+        @SuppressWarnings("unchecked")
         MessageConverter<ServerMessage, InternalMessage> converter =
                 (MessageConverter<ServerMessage, InternalMessage>) MessageConverterRegistry.getConverter((message.getClass()), InternalMessage.class);
 
         final InternalMessage msg = converter.convert(message, _addressSpace);
 
-        enqueue(msg, CONSUMED_INSTANCE_PROPERTIES, action);
+        enqueue(msg, action);
 
     }
 
@@ -539,30 +534,48 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
                 }
             };
 
+    private final Set<String> STANDARD_OPERATIONS = Sets.newHashSet(CREATE_OPERATION.getName(),
+                                                                    READ_OPERATION.getName(),
+                                                                    UPDATE_OPERATION.getName(),
+                                                                    DELETE_OPERATION.getName());
 
     private InternalMessage performOperation(final Class<? extends ConfiguredObject> clazz,
                                              final String operation,
                                              InternalMessage message)
     {
-        final Map<String, ConfiguredObjectOperation<?>> operations = _model.getTypeRegistry().getOperations(clazz);
-        @SuppressWarnings("unchecked")
-        final ConfiguredObjectOperation<ConfiguredObject<?>> method =
-                (ConfiguredObjectOperation<ConfiguredObject<?>>) operations.get(operation);
-        StandardOperation standardOperation;
         try
         {
-            if (method != null)
+            if (STANDARD_OPERATIONS.contains(operation))
             {
-                return performConfiguredObjectOperation(clazz, message, method);
-            }
-            else if ((standardOperation = _standardOperations.get(clazz).get(operation)) != null)
-            {
-                return standardOperation.performOperation(clazz, message);
+                StandardOperation standardOperation;
+                if ((standardOperation = _standardOperations.get(clazz).get(operation)) != null)
+                {
+                    return standardOperation.performOperation(clazz, message);
+                }
             }
             else
             {
-                return createFailureResponse(message, STATUS_CODE_NOT_IMPLEMENTED, "Not implemented");
+                final InternalMessageHeader requestHeader = message.getMessageHeader();
+                final Map<String, Object> headers = requestHeader.getHeaderMap();
+
+                ConfiguredObject<?> object = findObject(clazz, headers);
+                if (object == null)
+                {
+                    return createFailureResponse(message, STATUS_CODE_NOT_FOUND, "Not found");
+                }
+
+                final Map<String, ConfiguredObjectOperation<?>> operations =
+                        _model.getTypeRegistry().getOperations(object.getClass());
+                @SuppressWarnings("unchecked") final ConfiguredObjectOperation<ConfiguredObject<?>> method =
+                        (ConfiguredObjectOperation<ConfiguredObject<?>>) operations.get(operation);
+
+                if (method != null)
+                {
+                    return performConfiguredObjectOperation(object, message, method);
+                }
             }
+            return createFailureResponse(message, STATUS_CODE_NOT_IMPLEMENTED, "Not implemented");
+
         }
         catch (RuntimeException e)
         {
@@ -697,8 +710,6 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
             responseHeader.setMessageId(UUID.randomUUID().toString());
             responseHeader.setHeader(STATUS_CODE_HEADER, STATUS_CODE_OK);
 
-            // TODO - remove insecure on insecure channel
-
             return InternalMessage.createMapMessage(_addressSpace.getMessageStore(), responseHeader,
                                                     _managementOutputConverter.convertToOutput(object, actuals));
         }
@@ -826,21 +837,13 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
         }
     }
 
-    private InternalMessage performConfiguredObjectOperation(final Class<? extends ConfiguredObject> clazz,
+    private InternalMessage performConfiguredObjectOperation(final ConfiguredObject<?> object,
                                                              final InternalMessage message,
                                                              final ConfiguredObjectOperation<ConfiguredObject<?>> method)
     {
-        InternalMessageHeader requestHeader = message.getMessageHeader();
-
+        final InternalMessageHeader requestHeader = message.getMessageHeader();
         final Map<String, Object> headers = requestHeader.getHeaderMap();
 
-        ConfiguredObject<?> object = findObject(clazz, headers);
-        if (object == null)
-        {
-            return createFailureResponse(message, STATUS_CODE_NOT_FOUND, "Not found");
-        }
-
-
         try
         {
             Map<String,Object> parameters = new HashMap<>(headers);
@@ -852,6 +855,13 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
 
             parameters.keySet().removeIf(paramName -> paramName.startsWith("JMS_QPID"));
 
+            AmqpConnectionMetaData callerConnectionMetaData = getCallerConnectionMetaData();
+
+            if (method.isSecure(object, parameters) && !(callerConnectionMetaData.getTransport().isSecure() || callerConnectionMetaData.getPort().isAllowConfidentialOperationsOnInsecureChannels()))
+            {
+                return createFailureResponse(message, STATUS_CODE_FORBIDDEN, "Operation '" + method.getName() + "' can only be performed over a secure (AMQPS) connection");
+            }
+
             final MutableMessageHeader responseHeader = new MutableMessageHeader();
             responseHeader.setCorrelationId(requestHeader.getCorrelationId() == null
                                                     ? requestHeader.getMessageId()
@@ -859,13 +869,8 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
             responseHeader.setMessageId(UUID.randomUUID().toString());
             responseHeader.setHeader(STATUS_CODE_HEADER, STATUS_CODE_OK);
 
-            Serializable result = (Serializable) method.perform(object, parameters);
-            if(result == null)
-            {
-                result = new byte[0];
-            }
-            return InternalMessage.createMessage(_addressSpace.getMessageStore(), responseHeader,
-                                                 result, false);
+            final Object result = method.perform(object, parameters);
+            return createManagedOperationResponse(method, responseHeader, result);
         }
         catch (IllegalArgumentException | IllegalStateException | IllegalConfigurationException e)
         {
@@ -877,6 +882,33 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
         }
     }
 
+    private InternalMessage createManagedOperationResponse(final ConfiguredObjectOperation<ConfiguredObject<?>> method,
+                                                           final MutableMessageHeader responseHeader,
+                                                           final Object result)
+    {
+        Object convertedValue = _managementOutputConverter.convertObjectToOutput(result);
+        if (convertedValue instanceof byte[])
+        {
+            return InternalMessage.createBytesMessage(_addressSpace.getMessageStore(), responseHeader,
+                                                      (byte[]) convertedValue, false);
+        }
+        else if (convertedValue instanceof Map)
+        {
+            return InternalMessage.createMapMessage(_addressSpace.getMessageStore(), responseHeader,
+                                                    ((Map<?,?>) convertedValue));
+        }
+        else if (convertedValue instanceof Serializable)
+        {
+            return InternalMessage.createMessage(_addressSpace.getMessageStore(), responseHeader,
+                                                 (Serializable) convertedValue, false);
+        }
+        else
+        {
+            return InternalMessage.createBytesMessage(_addressSpace.getMessageStore(), responseHeader,
+                                                      new byte[0], false);
+        }
+    }
+
     String generatePath(final ConfiguredObject<?> object)
     {
         return _configuredObjectFinder.getPath(object);
@@ -1143,7 +1175,7 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
         }
 
         List<ConfiguredObject<?>> objects = getObjects(entityType);
-        Collections.sort(objects, OBJECT_COMPARATOR);
+        objects.sort(OBJECT_COMPARATOR);
         if(headerMap.containsKey(OFFSET_HEADER))
         {
             int offset;
@@ -1331,7 +1363,7 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
     private static <C extends ConfiguredObject<?>> Collection<ConfiguredObject<?>> getAssociatedChildren(final ConfiguredObjectOperation<C> op, final ConfiguredObject<?> managedObject)
     {
         @SuppressWarnings("unchecked")
-        final Collection<ConfiguredObject<?>> associated = (Collection<ConfiguredObject<?>>) op.perform((C)managedObject, Collections.<String, Object>emptyMap());
+        final Collection<ConfiguredObject<?>> associated = (Collection<ConfiguredObject<?>>) op.perform((C)managedObject, Collections.emptyMap());
         return associated;
     }
 
@@ -1434,37 +1466,26 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
     private Map<String,List<String>> performGetTypes(final Map<String, Object> header)
     {
         return performManagementOperation(header,
-                                                 new TypeOperation<List<String>>()
-                                                 {
-                                                     @Override
-                                                     public List<String> evaluateType(final Class<? extends ConfiguredObject> clazz)
-                                                     {
-                                                         Class<? extends ConfiguredObject> category =
-                                                                 ConfiguredObjectTypeRegistry.getCategory(clazz);
-                                                         if(category == clazz)
-                                                         {
-                                                             return Collections.emptyList();
-                                                         }
-                                                         else
-                                                         {
-                                                             return Collections.singletonList(getAmqpName(category));
-                                                         }
-                                                     }
-                                                 }, Collections.<String>emptyList());
+                                          clazz ->
+                                          {
+                                              Class<? extends ConfiguredObject> category =
+                                                      ConfiguredObjectTypeRegistry.getCategory(clazz);
+                                              if(category == clazz)
+                                              {
+                                                  return Collections.emptyList();
+                                              }
+                                              else
+                                              {
+                                                  return Collections.singletonList(getAmqpName(category));
+                                              }
+                                          }, Collections.<String>emptyList());
 
     }
 
     private Map<String,List<String>> performGetAttributes(final Map<String, Object> headers)
     {
         return performManagementOperation(headers,
-                                                 new TypeOperation<List<String>>()
-                                                 {
-                                                     @Override
-                                                     public List<String> evaluateType(final Class<? extends ConfiguredObject> clazz)
-                                                     {
-                                                         return new ArrayList<>(_model.getTypeRegistry().getAttributeNames(clazz));
-                                                     }
-                                                 }, Collections.<String>emptyList());
+                                          clazz -> new ArrayList<>(_model.getTypeRegistry().getAttributeNames(clazz)), Collections.<String>emptyList());
 
     }
 
@@ -1475,27 +1496,23 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
         final Map<String, List<String>> managementOperations = new HashMap<>();
 
         return performManagementOperation(headers,
-                                                 new TypeOperation<Map<String,List<String>>>()
-                                                 {
-                                                     @Override
-                                                     public Map<String,List<String>> evaluateType(final Class<? extends ConfiguredObject> clazz)
-                                                     {
-                                                         final Map<String, ConfiguredObjectOperation<?>> operations =
-                                                                 _model.getTypeRegistry().getOperations(clazz);
-                                                         Map<String,List<String>> result = new HashMap<>();
-                                                         for(Map.Entry<String, ConfiguredObjectOperation<?>> operation : operations.entrySet())
-                                                         {
-
-                                                             List<String> arguments = new ArrayList<>();
-                                                             for(OperationParameter param : operation.getValue().getParameters())
-                                                             {
-                                                                 arguments.add(param.getName());
-                                                             }
-                                                             result.put(operation.getKey(), arguments);
-                                                         }
-                                                         return result;
-                                                     }
-                                                 }, managementOperations);
+                                          clazz ->
+                                          {
+                                              final Map<String, ConfiguredObjectOperation<?>> operations =
+                                                      _model.getTypeRegistry().getOperations(clazz);
+                                              Map<String,List<String>> result = new HashMap<>();
+                                              for(Map.Entry<String, ConfiguredObjectOperation<?>> operation : operations.entrySet())
+                                              {
+
+                                                  List<String> arguments = new ArrayList<>();
+                                                  for(OperationParameter param : operation.getValue().getParameters())
+                                                  {
+                                                      arguments.add(param.getName());
+                                                  }
+                                                  result.put(operation.getKey(), arguments);
+                                              }
+                                              return result;
+                                          }, managementOperations);
 
     }
 
@@ -1564,13 +1581,25 @@ class ManagementNode implements MessageSource, MessageDestination, BaseQueue
         _consumers.remove(managementNodeConsumer);
     }
 
+    private AmqpConnectionMetaData getCallerConnectionMetaData()
+    {
+        Subject currentSubject = Subject.getSubject(AccessController.getContext());
+        Set<ConnectionPrincipal> connectionPrincipals = currentSubject.getPrincipals(ConnectionPrincipal.class);
+        if (connectionPrincipals.isEmpty())
+        {
+            throw new IllegalStateException("Cannot find connection principal on calling thread");
+        }
+
+        ConnectionPrincipal principal = connectionPrincipals.iterator().next();
+        return principal.getConnectionMetaData();
+    }
+
     private class ConsumedMessageInstance implements MessageInstance
     {
 
         private final ServerMessage _message;
 
-        ConsumedMessageInstance(final ServerMessage message,
-                                final InstanceProperties properties)
+        ConsumedMessageInstance(final ServerMessage message)
         {
             _message = message;
         }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementOutputConverter.java
----------------------------------------------------------------------
diff --git a/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementOutputConverter.java b/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementOutputConverter.java
index 74d096d..16e13f8 100644
--- a/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementOutputConverter.java
+++ b/broker-plugins/management-amqp/src/main/java/org/apache/qpid/server/management/amqp/ManagementOutputConverter.java
@@ -28,6 +28,7 @@ import java.util.List;
 import java.util.Map;
 
 import org.apache.qpid.server.model.ConfiguredObject;
+import org.apache.qpid.server.model.ConfiguredObjectAttribute;
 import org.apache.qpid.server.model.ConfiguredObjectCustomSerialization;
 
 class ManagementOutputConverter
@@ -40,37 +41,66 @@ class ManagementOutputConverter
         _managementNode = managementNode;
     }
 
-    private Map<Object, Object> convertMapToOutput(final Map<?, ?> attributes)
+    Map<?, ?> convertToOutput(final ConfiguredObject<?> object,
+                              final boolean actuals)
     {
-        Map<Object,Object> result = new LinkedHashMap<>();
-        for(Map.Entry<?,?> entry : attributes.entrySet())
+        Map<String, Object> attributes = new LinkedHashMap<>();
+        attributes.put(ManagementNode.IDENTITY_ATTRIBUTE, object.getId());
+        attributes.put(ManagementNode.OBJECT_PATH, _managementNode.generatePath(object));
+        attributes.put(ManagementNode.TYPE_ATTRIBUTE, _managementNode.getAmqpName(object.getTypeClass()));
+        attributes.put(ManagementNode.QPID_TYPE, object.getType());
+
+        if(object != _managementNode.getManagedObject() && !_managementNode.isSyntheticChildClass(object.getCategoryClass()))
         {
-            result.put(convertObjectToOutput(entry.getKey()), convertObjectToOutput(entry.getValue()));
-        }
-        return result;
-    }
+            Class<? extends ConfiguredObject> parentType = object.getModel().getParentType(object.getCategoryClass());
 
-    private Collection<?> convertCollectionToOutput(final Collection<?> value)
-    {
+            if (parentType != _managementNode.getManagedObject().getCategoryClass())
+            {
+                attributes.put(parentType.getSimpleName().toLowerCase(), object.getParent());
+            }
 
-        List<Object> result = new ArrayList<>();
-        for(Object entry : value)
+        }
+
+        for(String name : object.getAttributeNames())
         {
-            result.add(convertObjectToOutput(entry));
+            if(!ID_AND_TYPE.contains(name))
+            {
+                ConfiguredObjectAttribute<?, ?> attribute = object.getModel()
+                                                                  .getTypeRegistry()
+                                                                  .getAttributeTypes(object.getClass())
+                                                                  .get(name);
+
+                Object value = actuals
+                        ? object.getActualAttributes().get(name)
+                        : object.getAttribute(name);
+
+                if (attribute.isSecureValue(value))
+                {
+                    value = object.getAttribute(name);
+                }
+
+                if (value != null)
+                {
+                    attributes.put(name, value);
+                }
+            }
         }
-        return result;
+
+        return convertMapToOutput(attributes);
     }
 
-    private Object convertObjectToOutput(final Object value)
+    Object convertObjectToOutput(final Object value)
     {
         if(value == null)
         {
             return null;
         }
         else if(value instanceof String
+                || value instanceof Short
                 || value instanceof Integer
                 || value instanceof Long
                 || value instanceof Byte
+                || value instanceof Boolean
                 || value instanceof Character
                 || value instanceof Float
                 || value instanceof Double
@@ -105,40 +135,24 @@ class ManagementOutputConverter
         }
     }
 
-    protected Map<?, ?> convertToOutput(final ConfiguredObject<?> object,
-                                        final boolean actuals)
+    private Map<Object, Object> convertMapToOutput(final Map<?, ?> attributes)
     {
-        Map<String, Object> attributes = new LinkedHashMap<>();
-        attributes.put(ManagementNode.IDENTITY_ATTRIBUTE, object.getId());
-        attributes.put(ManagementNode.OBJECT_PATH, _managementNode.generatePath(object));
-        attributes.put(ManagementNode.TYPE_ATTRIBUTE, _managementNode.getAmqpName(object.getTypeClass()));
-        attributes.put(ManagementNode.QPID_TYPE, object.getType());
-
-        if(object != _managementNode.getManagedObject() && !_managementNode.isSyntheticChildClass(object.getCategoryClass()))
+        Map<Object,Object> result = new LinkedHashMap<>();
+        for(Map.Entry<?,?> entry : attributes.entrySet())
         {
-            Class<? extends ConfiguredObject> parentType = object.getModel().getParentType(object.getCategoryClass());
-
-            if (parentType != _managementNode.getManagedObject().getCategoryClass())
-            {
-                attributes.put(parentType.getSimpleName().toLowerCase(), object.getParent());
-            }
-
+            result.put(convertObjectToOutput(entry.getKey()), convertObjectToOutput(entry.getValue()));
         }
+        return result;
+    }
 
-        for(String name : object.getAttributeNames())
+    private Collection<?> convertCollectionToOutput(final Collection<?> value)
+    {
+
+        List<Object> result = new ArrayList<>();
+        for(Object entry : value)
         {
-            if(!ID_AND_TYPE.contains(name))
-            {
-                Object value = actuals
-                        ? object.getActualAttributes().get(name)
-                        : object.getAttribute(name);
-                if (value != null)
-                {
-                    attributes.put(name, value);
-                }
-            }
+            result.add(convertObjectToOutput(entry));
         }
-
-        return convertMapToOutput(attributes);
+        return result;
     }
 }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/systests/src/test/java/org/apache/qpid/systest/MessageCompressionTest.java
----------------------------------------------------------------------
diff --git a/systests/src/test/java/org/apache/qpid/systest/MessageCompressionTest.java b/systests/src/test/java/org/apache/qpid/systest/MessageCompressionTest.java
index e413a13..1d048ae 100644
--- a/systests/src/test/java/org/apache/qpid/systest/MessageCompressionTest.java
+++ b/systests/src/test/java/org/apache/qpid/systest/MessageCompressionTest.java
@@ -47,7 +47,6 @@ import org.apache.qpid.client.AMQConnectionFactory;
 import org.apache.qpid.jms.ConnectionURL;
 import org.apache.qpid.server.model.Broker;
 import org.apache.qpid.server.model.Port;
-import org.apache.qpid.server.model.port.HttpPort;
 import org.apache.qpid.systest.rest.RestTestHelper;
 import org.apache.qpid.test.utils.QpidBrokerTestCase;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
@@ -67,7 +66,7 @@ public class MessageCompressionTest extends QpidBrokerTestCase
         TestBrokerConfiguration config = getDefaultBrokerConfiguration();
         config.addHttpManagementConfiguration();
         config.setObjectAttribute(Port.class, TestBrokerConfiguration.ENTRY_NAME_HTTP_PORT,
-                                  HttpPort.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
+                                  Port.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
                                   true);
         super.startDefaultBroker();
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/systests/src/test/java/org/apache/qpid/systest/management/amqp/AmqpManagementTest.java
----------------------------------------------------------------------
diff --git a/systests/src/test/java/org/apache/qpid/systest/management/amqp/AmqpManagementTest.java b/systests/src/test/java/org/apache/qpid/systest/management/amqp/AmqpManagementTest.java
index 39188e6..4ce6c67 100644
--- a/systests/src/test/java/org/apache/qpid/systest/management/amqp/AmqpManagementTest.java
+++ b/systests/src/test/java/org/apache/qpid/systest/management/amqp/AmqpManagementTest.java
@@ -21,11 +21,15 @@
 package org.apache.qpid.systest.management.amqp;
 
 import static org.apache.qpid.server.model.Queue.ALERT_THRESHOLD_QUEUE_DEPTH_MESSAGES;
+import static org.apache.qpid.test.utils.TestSSLConstants.TRUSTSTORE;
+import static org.apache.qpid.test.utils.TestSSLConstants.TRUSTSTORE_PASSWORD;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 
@@ -41,9 +45,18 @@ import javax.jms.ObjectMessage;
 import javax.jms.Queue;
 import javax.jms.Session;
 
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+import org.apache.qpid.server.exchange.ExchangeDefaults;
+import org.apache.qpid.server.model.DefaultVirtualHostAlias;
+import org.apache.qpid.server.model.Port;
+import org.apache.qpid.server.model.Transport;
+import org.apache.qpid.server.model.VirtualHostAlias;
+import org.apache.qpid.server.model.VirtualHostNameAlias;
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.queue.PriorityQueue;
 import org.apache.qpid.test.utils.QpidBrokerTestCase;
+import org.apache.qpid.test.utils.TestBrokerConfiguration;
 
 public class AmqpManagementTest extends QpidBrokerTestCase
 {
@@ -59,6 +72,32 @@ public class AmqpManagementTest extends QpidBrokerTestCase
     @Override
     public void setUp() throws Exception
     {
+        TestBrokerConfiguration config = getDefaultBrokerConfiguration();
+
+        Map<String, Object> ampqSslPort = new HashMap<>();
+        ampqSslPort.put(Port.TRANSPORTS, Collections.singletonList(Transport.SSL));
+        ampqSslPort.put(Port.PORT, DEFAULT_SSL_PORT);
+        ampqSslPort.put(Port.NAME, TestBrokerConfiguration.ENTRY_NAME_SSL_PORT);
+        ampqSslPort.put(Port.KEY_STORE, TestBrokerConfiguration.ENTRY_NAME_SSL_KEYSTORE);
+        ampqSslPort.put(Port.AUTHENTICATION_PROVIDER, TestBrokerConfiguration.ENTRY_NAME_AUTHENTICATION_PROVIDER);
+        ampqSslPort.put(Port.PROTOCOLS, System.getProperty(TEST_AMQP_PORT_PROTOCOLS_PROPERTY));
+
+        config.addObjectConfiguration(Port.class, ampqSslPort);
+
+        Map<String, Object> aliasAttributes = new HashMap<>();
+        aliasAttributes.put(VirtualHostAlias.NAME, "defaultAlias");
+        aliasAttributes.put(VirtualHostAlias.TYPE, DefaultVirtualHostAlias.TYPE_NAME);
+        getDefaultBrokerConfiguration().addObjectConfiguration(Port.class, TestBrokerConfiguration.ENTRY_NAME_SSL_PORT, VirtualHostAlias.class, aliasAttributes);
+
+        aliasAttributes = new HashMap<>();
+        aliasAttributes.put(VirtualHostAlias.NAME, "nameAlias");
+        aliasAttributes.put(VirtualHostAlias.TYPE, VirtualHostNameAlias.TYPE_NAME);
+        getDefaultBrokerConfiguration().addObjectConfiguration(Port.class, TestBrokerConfiguration.ENTRY_NAME_SSL_PORT, VirtualHostAlias.class, aliasAttributes);
+
+        // set the ssl system properties
+        setSystemProperty("javax.net.ssl.trustStore", TRUSTSTORE);
+        setSystemProperty("javax.net.ssl.trustStorePassword", TRUSTSTORE_PASSWORD);
+
         super.setUp();
 
         if (isBroker10())
@@ -73,6 +112,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
             _runTest =  !( metaData.getProviderMajorVersion() < 6 || (metaData.getProviderMajorVersion() == 6 && metaData.getProviderMinorVersion() <= 1));
             con.close();
         }
+        setSystemProperty("test.port.ssl", ""+getDefaultBroker().getAmqpTlsPort());
     }
 
     private void setupSession() throws Exception
@@ -88,7 +128,6 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         }
         else
         {
-            final ConnectionMetaData metaData = _connection.getMetaData();
             _queue = _session.createQueue("ADDR:$management");
             _replyAddress = _session.createQueue("ADDR:!response");
             _replyConsumer = _session.createQueue(
@@ -134,12 +173,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertEquals("The correlation id does not match the sent message's messageId", message.getJMSMessageID(), responseMessage.getJMSCorrelationID());
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
-
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertNotNull("The response did not include the org.amqp.Management type", getValueFromMapResponse(responseMessage, "org.amqp.management"));
         assertNotNull("The response did not include the org.apache.qpid.Port type", getValueFromMapResponse(responseMessage, "org.apache.qpid.Port"));
@@ -150,7 +184,8 @@ public class AmqpManagementTest extends QpidBrokerTestCase
     {
         if (isBroker10())
         {
-            assertTrue("The response was not an Object Message", responseMessage instanceof ObjectMessage);
+            assertTrue(String.format("The response was not an Object Message. It was a : %s ",
+                                     responseMessage.getClass()), responseMessage instanceof ObjectMessage);
             assertTrue("The Object Message did not contain a Map",
                        ((ObjectMessage) responseMessage).getObject() instanceof Map);
         }
@@ -160,7 +195,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         }
     }
 
-    Object getValueFromMapResponse(final Message responseMessage, String name) throws JMSException
+    private Object getValueFromMapResponse(final Message responseMessage, String name) throws JMSException
     {
         if (isBroker10())
         {
@@ -172,7 +207,8 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         }
     }
 
-    Collection getMapResponseKeys(final Message responseMessage) throws JMSException
+    @SuppressWarnings("unchecked")
+    private Collection<String> getMapResponseKeys(final Message responseMessage) throws JMSException
     {
         if (isBroker10())
         {
@@ -187,7 +223,6 @@ public class AmqpManagementTest extends QpidBrokerTestCase
     // test get types on $management
     public void testQueryBrokerManagement() throws Exception
     {
-
         if (!_runTest)
         {
             return;
@@ -206,13 +241,10 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
+        assertResponseCode(responseMessage, 200);
         assertEquals("The correlation id does not match the sent message's messageId", message.getJMSMessageID(), responseMessage.getJMSCorrelationID());
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
         checkResponseIsMapType(responseMessage);
-        ArrayList resultMessageKeys = new ArrayList(getMapResponseKeys(responseMessage));
+        List<String> resultMessageKeys = new ArrayList<>(getMapResponseKeys(responseMessage));
         assertEquals("The response map has two entries", 2, resultMessageKeys.size());
         assertTrue("The response map does not contain attribute names", resultMessageKeys.contains("attributeNames"));
         assertTrue("The response map does not contain results ", resultMessageKeys.contains("results"));
@@ -235,13 +267,11 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertEquals("The correlation id does not match the sent message's messageId", message.getJMSMessageID(), responseMessage.getJMSCorrelationID());
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
-        resultMessageKeys = new ArrayList(getMapResponseKeys(responseMessage));
+
+        assertEquals("The correlation id does not match the sent message's messageId", message.getJMSMessageID(), responseMessage.getJMSCorrelationID());
+        resultMessageKeys = new ArrayList<>(getMapResponseKeys(responseMessage));
         assertEquals("The response map has two entries", 2, resultMessageKeys.size());
         assertTrue("The response map does not contain attribute names", resultMessageKeys.contains("attributeNames"));
         assertTrue("The response map does not contain results ", resultMessageKeys.contains("results"));
@@ -298,9 +328,8 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         assertNotNull("A response message was not sent", responseMessage);
         assertTrue("The correlation id does not match the sent message's correlationId", Arrays.equals(correlationID, responseMessage.getJMSCorrelationIDAsBytes()));
 
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
+
         assertTrue("The response was not a MapMessage", responseMessage instanceof MapMessage);
         assertNotNull("The response did not include the org.amqp.Management type",
                       ((MapMessage) responseMessage).getObject("org.amqp.management"));
@@ -333,10 +362,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 201, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 201);
         checkResponseIsMapType(responseMessage);
         assertEquals("The created queue was not a standard queue", "org.apache.qpid.StandardQueue", getValueFromMapResponse(responseMessage, "type"));
         assertEquals("The created queue was not a standard queue", "standard", getValueFromMapResponse(responseMessage, "qpid-type"));
@@ -354,10 +380,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertEquals("the created queue did not have the correct alerting threshold", 250L, getValueFromMapResponse(responseMessage, ALERT_THRESHOLD_QUEUE_DEPTH_MESSAGES));
 
@@ -372,10 +395,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 204, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 204);
 
         message = _session.createMapMessage();
 
@@ -387,12 +407,9 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate not found", 404, responseMessage.getIntProperty("statusCode"));
-
+        assertResponseCode(responseMessage, 404);
     }
+
     // create / update / read / delete a queue via vhost
 
     public void testCreateQueueOnVhostManagement() throws Exception
@@ -416,10 +433,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 201, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 201);
         checkResponseIsMapType(responseMessage);
         assertEquals("The created queue was not a priority queue", "org.apache.qpid.PriorityQueue", getValueFromMapResponse(responseMessage, "type"));
         assertEquals("The created queue was not a standard queue", "priority", getValueFromMapResponse(responseMessage, "qpid-type"));
@@ -438,10 +452,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate conflict", 409, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 409);
 
         message.setStringProperty("type", "org.apache.qpid.Queue");
         message.setStringProperty("operation", "READ");
@@ -451,10 +462,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         assertEquals("the queue did not have the correct number of priorities", 13, Integer.valueOf(getValueFromMapResponse(responseMessage, PriorityQueue.PRIORITIES).toString()).intValue());
         assertEquals("the queue did not have the expected path", getTestName(), getValueFromMapResponse(responseMessage, "object-path"));
 
@@ -470,10 +478,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertEquals("The updated queue did not have the correct alerting threshold", 250L, Long.valueOf(getValueFromMapResponse(responseMessage, ALERT_THRESHOLD_QUEUE_DEPTH_MESSAGES).toString()).longValue());
 
@@ -488,10 +493,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate success", 204, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 204);
 
         message = _session.createMapMessage();
         message.setStringProperty("type", "org.apache.qpid.Queue");
@@ -503,10 +505,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate not found", 404, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 404);
     }
 
     // read virtual host from virtual host management
@@ -528,19 +527,14 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertEquals("The name of the virtual host is not as expected", "test", getValueFromMapResponse(responseMessage, "name"));
 
         message.setBooleanProperty("actuals", false);
         _producer.send(message);
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertNotNull("Derived attribute (productVersion) should be available", getValueFromMapResponse(responseMessage, "productVersion"));
     }
@@ -563,10 +557,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 404, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 404);
     }
 
     public void testInvokeOperation_ObjectNotFound() throws Exception
@@ -587,10 +578,98 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 404, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 404);
+    }
+
+    public void testInvokeOperationReturningMap() throws Exception
+    {
+        if (!_runTest)
+        {
+            return;
+        }
+        setupBrokerManagementConnection();
+
+        MapMessage message = _session.createMapMessage();
+
+        message.setStringProperty("type", "org.apache.qpid.Broker");
+        message.setStringProperty("operation", "getStatistics");
+        message.setStringProperty("index", "object-path");
+        message.setStringProperty("key", "");
+        message.setJMSReplyTo(_replyAddress);
+        _producer.send(message);
+
+        Message responseMessage = _consumer.receive(getReceiveTimeout());
+        assertResponseCode(responseMessage, 200);
+        checkResponseIsMapType(responseMessage);
+        assertNotNull(getValueFromMapResponse(responseMessage, "numberOfLiveThreads"));
+    }
+
+    public void testInvokeOperationReturningManagedAttributeValue() throws Exception
+    {
+        if (!_runTest)
+        {
+            return;
+        }
+        setupBrokerManagementConnection();
+
+        MapMessage message = _session.createMapMessage();
+
+        message.setStringProperty("type", "org.apache.qpid.Broker");
+        message.setStringProperty("operation", "getConnectionMetaData");
+        message.setStringProperty("index", "object-path");
+        message.setStringProperty("key", "");
+        message.setJMSReplyTo(_replyAddress);
+        _producer.send(message);
+
+        Message responseMessage = _consumer.receive(getReceiveTimeout());
+        assertResponseCode(responseMessage, 200);
+        checkResponseIsMapType(responseMessage);
+        assertNotNull(getValueFromMapResponse(responseMessage, "port"));
+    }
+
+    public void testInvokeSecureOperation() throws Exception
+    {
+        if (!_runTest)
+        {
+            return;
+        }
+        String secureOperation = "publishMessage";  // // a secure operation
+        Map<String, String> operationArg = new HashMap<>();
+        operationArg.put("address", ExchangeDefaults.FANOUT_EXCHANGE_NAME);
+        operationArg.put("content", "Hello, world!");
+
+        setupVirtualHostManagementConnection();
+
+        MapMessage plainRequest = _session.createMapMessage();
+
+        plainRequest.setStringProperty("type", "org.apache.qpid.VirtualHost");
+        plainRequest.setStringProperty("operation", secureOperation);
+        plainRequest.setStringProperty("index", "object-path");
+        plainRequest.setStringProperty("key", "");
+        plainRequest.setStringProperty("message", new ObjectMapper().writeValueAsString(operationArg));
+        plainRequest.setJMSReplyTo(_replyAddress);
+        _producer.send(plainRequest);
+
+        Message responseMessage = _consumer.receive(getReceiveTimeout());
+        assertResponseCode(responseMessage, 403);
+
+        _connection.close();
+
+        _connection = getConnectionBuilder().setTls(true).build();
+        setupSession();
+        MapMessage secureRequest = _session.createMapMessage();
+
+        secureRequest.setStringProperty("type", "org.apache.qpid.VirtualHost");
+        secureRequest.setStringProperty("operation", secureOperation);
+        secureRequest.setStringProperty("index", "object-path");
+        secureRequest.setStringProperty("key", "");
+        secureRequest.setStringProperty("message", new ObjectMapper().writeValueAsString(operationArg));
+        secureRequest.setJMSReplyTo(_replyAddress);
+        _producer.send(secureRequest);
+
+        responseMessage = _consumer.receive(getReceiveTimeout());
+        assertResponseCode(responseMessage, 200);
+   //     responseMessage.get
     }
 
     // create a virtual host from $management
@@ -612,10 +691,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 201, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 201);
         _connection.close();
         _connection = getConnectionForVHost(virtualHostName);
         setupSession();
@@ -630,10 +706,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 200, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 200);
         checkResponseIsMapType(responseMessage);
         assertEquals("The name of the virtual host is not as expected", virtualHostName, getValueFromMapResponse(responseMessage, "name"));
         assertEquals("The type of the virtual host is not as expected", "Memory", getValueFromMapResponse(responseMessage, "qpid-type"));
@@ -658,10 +731,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 501, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 501);
     }
 
     // create a queue with the qpid type
@@ -685,10 +755,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 201, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 201);
         checkResponseIsMapType(responseMessage);
         assertEquals("The created queue did not have the correct type", "org.apache.qpid.LastValueQueue", getValueFromMapResponse(responseMessage, "type"));
     }
@@ -714,10 +781,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 201, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 201);
         checkResponseIsMapType(responseMessage);
         assertEquals("The created queue did not have the correct type", "sorted", getValueFromMapResponse(responseMessage, "qpid-type"));
     }
@@ -742,10 +806,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("Incorrect response code", 400, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 400);
     }
 
 
@@ -770,10 +831,7 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
-        assertNotNull("A response message was not sent", responseMessage);
-        assertTrue("The response message does not have a status code",
-                   Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate not implemented", 501, responseMessage.getIntProperty("statusCode"));
+        assertResponseCode(responseMessage, 501);
     }
 
     public void testCreateConnectionOnBrokerManagement() throws Exception
@@ -795,10 +853,19 @@ public class AmqpManagementTest extends QpidBrokerTestCase
         _producer.send(message);
 
         Message responseMessage = _consumer.receive(getReceiveTimeout());
+        assertResponseCode(responseMessage, 501);
+
+    }
+
+    @SuppressWarnings("unchecked")
+    private void assertResponseCode(final Message responseMessage, final int expectedResponseCode) throws JMSException
+    {
         assertNotNull("A response message was not sent", responseMessage);
         assertTrue("The response message does not have a status code",
                    Collections.list(responseMessage.getPropertyNames()).contains("statusCode"));
-        assertEquals("The response code did not indicate not implemented", 501, responseMessage.getIntProperty("statusCode"));
+        assertEquals("The response code did not indicate success",
+                     expectedResponseCode, responseMessage.getIntProperty("statusCode"));
     }
 
+
 }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/systests/src/test/java/org/apache/qpid/systest/rest/ExportImportMessagesRestTest.java
----------------------------------------------------------------------
diff --git a/systests/src/test/java/org/apache/qpid/systest/rest/ExportImportMessagesRestTest.java b/systests/src/test/java/org/apache/qpid/systest/rest/ExportImportMessagesRestTest.java
index 37f7b96..9d9ecd0 100644
--- a/systests/src/test/java/org/apache/qpid/systest/rest/ExportImportMessagesRestTest.java
+++ b/systests/src/test/java/org/apache/qpid/systest/rest/ExportImportMessagesRestTest.java
@@ -39,7 +39,6 @@ import org.apache.qpid.server.model.Port;
 import org.apache.qpid.server.model.Queue;
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
-import org.apache.qpid.server.model.port.HttpPort;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 import org.apache.qpid.util.DataUrlUtils;
 
@@ -84,7 +83,7 @@ public class ExportImportMessagesRestTest extends QpidRestTestCase
     {
         super.customizeConfiguration();
         getDefaultBrokerConfiguration().setObjectAttribute(Port.class, TestBrokerConfiguration.ENTRY_NAME_HTTP_PORT,
-                                                           HttpPort.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
+                                                           Port.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
                                                            true);
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/systests/src/test/java/org/apache/qpid/systest/rest/MessagesRestTest.java
----------------------------------------------------------------------
diff --git a/systests/src/test/java/org/apache/qpid/systest/rest/MessagesRestTest.java b/systests/src/test/java/org/apache/qpid/systest/rest/MessagesRestTest.java
index 281ef1c..9305ea8 100644
--- a/systests/src/test/java/org/apache/qpid/systest/rest/MessagesRestTest.java
+++ b/systests/src/test/java/org/apache/qpid/systest/rest/MessagesRestTest.java
@@ -42,7 +42,6 @@ import javax.jms.StreamMessage;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.qpid.server.model.Port;
-import org.apache.qpid.server.model.port.HttpPort;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 
 public class MessagesRestTest extends QpidRestTestCase
@@ -100,7 +99,7 @@ public class MessagesRestTest extends QpidRestTestCase
         super.customizeConfiguration();
         // Allow retrieval of message information on an insecure (non-tls) connection
         getDefaultBrokerConfiguration().setObjectAttribute(Port.class, TestBrokerConfiguration.ENTRY_NAME_HTTP_PORT,
-                                                           HttpPort.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
+                                                           Port.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
                                                            true);
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/3d042838/systests/src/test/java/org/apache/qpid/systest/rest/PublishMessageRestTest.java
----------------------------------------------------------------------
diff --git a/systests/src/test/java/org/apache/qpid/systest/rest/PublishMessageRestTest.java b/systests/src/test/java/org/apache/qpid/systest/rest/PublishMessageRestTest.java
index 727ac9a..44838e3 100644
--- a/systests/src/test/java/org/apache/qpid/systest/rest/PublishMessageRestTest.java
+++ b/systests/src/test/java/org/apache/qpid/systest/rest/PublishMessageRestTest.java
@@ -44,7 +44,6 @@ import com.google.common.base.Strings;
 
 import org.apache.qpid.server.model.Port;
 import org.apache.qpid.server.model.Queue;
-import org.apache.qpid.server.model.port.HttpPort;
 import org.apache.qpid.test.utils.TestBrokerConfiguration;
 
 public class PublishMessageRestTest extends QpidRestTestCase
@@ -79,7 +78,7 @@ public class PublishMessageRestTest extends QpidRestTestCase
     {
         super.customizeConfiguration();
         getDefaultBrokerConfiguration().setObjectAttribute(Port.class, TestBrokerConfiguration.ENTRY_NAME_HTTP_PORT,
-                                                           HttpPort.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
+                                                           Port.ALLOW_CONFIDENTIAL_OPERATIONS_ON_INSECURE_CHANNELS,
                                                            true);
     }
 


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


[3/3] qpid-broker-j git commit: QPID-7836: Avoid possibility of a NPE when viewing a message

Posted by kw...@apache.org.
QPID-7836: Avoid possibility of a NPE when viewing a message


Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/ae54418f
Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/ae54418f
Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/ae54418f

Branch: refs/heads/master
Commit: ae54418f112eaca49d4bf9d2450776ed4f673403
Parents: 3d04283
Author: Keith Wall <kw...@apache.org>
Authored: Tue Jun 27 10:04:42 2017 +0100
Committer: Keith Wall <kw...@apache.org>
Committed: Tue Jun 27 10:33:57 2017 +0100

----------------------------------------------------------------------
 .../java/org/apache/qpid/server/message/MessageInfoImpl.java     | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/ae54418f/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
----------------------------------------------------------------------
diff --git a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
index c735932..60a820c 100644
--- a/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
+++ b/broker-core/src/main/java/org/apache/qpid/server/message/MessageInfoImpl.java
@@ -56,8 +56,8 @@ public class MessageInfoImpl implements MessageInfo
         final ServerMessage message = instance.getMessage();
         final AMQMessageHeader messageHeader = message.getMessageHeader();
 
-        _deliveredTo = instance.getAcquiringConsumer() == null ? null : String.valueOf(instance.getAcquiringConsumer()
-                                                                                                .getIdentifier());
+        MessageInstanceConsumer<?> acquiringConsumer = instance.getAcquiringConsumer();
+        _deliveredTo = acquiringConsumer == null ? null : String.valueOf(acquiringConsumer.getIdentifier());
         _arrivalTime = message.getArrivalTime() == 0L ? null : new Date(message.getArrivalTime());
         _messageType = message.getMessageType();
         _persistent = message.isPersistent();


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