This is an automated email from the ASF dual-hosted git repository.

robbie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git


The following commit(s) were added to refs/heads/main by this push:
     new c5bfb32ed2 ARTEMIS-5319: remove unused old console bits left by 
2bee1dbbfbfc2aea6c56b8235f409c2ea0027678
c5bfb32ed2 is described below

commit c5bfb32ed2b71c0510d9df373c8e6a7f75ea89f4
Author: Robbie Gemmell <[email protected]>
AuthorDate: Wed Mar 12 12:17:02 2025 +0000

    ARTEMIS-5319: remove unused old console bits left by 
2bee1dbbfbfc2aea6c56b8235f409c2ea0027678
---
 .../src/main/resources/META-INF/detectors          |   9 -
 .../main/webapp/plugin/js/components/addresses.js  | 260 ---------------
 .../webapp/plugin/js/components/connections.js     | 281 ----------------
 .../main/webapp/plugin/js/components/consumers.js  | 354 --------------------
 .../main/webapp/plugin/js/components/producers.js  | 249 --------------
 .../src/main/webapp/plugin/js/components/queues.js | 361 ---------------------
 .../main/webapp/plugin/js/components/sessions.js   | 297 -----------------
 .../src/main/webapp/plugin/js/services/toolbar.js  | 128 --------
 8 files changed, 1939 deletions(-)

diff --git 
a/artemis-hawtio/artemis-console/src/main/resources/META-INF/detectors 
b/artemis-hawtio/artemis-console/src/main/resources/META-INF/detectors
deleted file mode 100644
index 8cecfccad6..0000000000
--- a/artemis-hawtio/artemis-console/src/main/resources/META-INF/detectors
+++ /dev/null
@@ -1,9 +0,0 @@
-!org.jolokia.detector.GeronimoDetector
-!org.jolokia.detector.JBossDetector
-!org.jolokia.detector.ActiveMQDetector
-!org.jolokia.detector.TomcatDetector
-!org.jolokia.detector.JettyDetector
-!org.jolokia.detector.GlassfishDetector
-!org.jolokia.detector.WeblogicDetector
-!org.jolokia.detector.WebsphereDetector
-!org.jolokia.detector.LightstreamerDetector
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/addresses.js
 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/addresses.js
deleted file mode 100644
index b1707921ae..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/addresses.js
+++ /dev/null
@@ -1,260 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    //Artemis.log.debug("loading addresses");
-    Artemis._module.component('artemisAddresses', {
-        template:
-            `<h1>Browse Addresses
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          uib-popover-template="'addresses-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-             <div ng-include="'plugin/artemistoolbar.html'"></div>
-             <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            action-buttons="$ctrl.tableActionButtons"
-                            items="$ctrl.addresses">
-             </pf-table-view>
-             <div ng-include="'plugin/artemispagination.html'"></div>
-             <script type="text/ng-template" 
id="addresses-anchor-column-template">
-                <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-             </script>
-             <script type="text/ng-template" id="addresses-instructions.html">
-             <div>
-                <p>
-                    This page allows you to browse all address on the broker. 
These can be narrowed down
-                    by specifying a filter and also sorted using the sort 
function in the toolbar. To execute a query
-                    click on the <span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    You can also navigate directly to the JMX attributes and 
operations tabs by using the  <code>attributes</code>
-                    and <code>operations</code> button under the 
<code>Actions</code> column.You can navigate to the
-                    addresses queues by clicking on the <code>Queue 
Count</code> field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-             </script>
-             `,
-              controller: AddressesController
-    })
-    .name;
-
-
-    function AddressesController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisAddress) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allAddresses = [];
-        ctrl.addresses = [];
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-                {name: "ID", visible: true},
-                {name: "Name", visible: true},
-                {name: "Internal", visible: false},
-                {name: "Routing Types", visible: true},
-                {name: "Queue Count", visible: true}
-           ]
-        };
-
-        Artemis.log.debug('sessionStorage: addressColumnDefs =', 
localStorage.getItem('addressColumnDefs'));
-        if (localStorage.getItem('addressColumnDefs')) {
-            loadedDefs = JSON.parse(localStorage.getItem('addressColumnDefs'));
-            //sanity check to make sure columns havent been added
-            if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-                ctrl.dtOptions.columns = loadedDefs;
-            }
-
-        }
-
-        ctrl.updateColumns = function () {
-            var attributes = [];
-            ctrl.dtOptions.columns.forEach(function (column) {
-                attributes.push({name: column.name, visible: column.visible});
-            });
-            Artemis.log.debug("saving columns " + JSON.stringify(attributes));
-            localStorage.setItem('addressColumnDefs', 
JSON.stringify(attributes));
-        }
-
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'id', name: 'ID'},
-                {id: 'name', name: 'Name'},
-                {id: 'internal', name: 'Internal'},
-                {id: 'routingTypes', name: 'Routing Types'},
-                {id: 'queueCount', name: 'Queue Count'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'},
-                {id: 'NOT_CONTAINS', name: 'Does Not Contain'},
-                {id: 'GREATER_THAN', name: 'Greater Than'},
-                {id: 'LESS_THAN', name: 'Less Than'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "id"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-
-        ctrl.tableActionButtons = [
-            {
-                name: 'attributes',
-                title: 'Navigate to attributes',
-                actionFn: navigateToAddressAtts
-            },
-            {
-               name: 'operations',
-               title: 'navigate to operations',
-               actionFn: navigateToAddressOps
-            }
-        ];
-        ctrl.tableConfig = {
-            selectionMatchProp: 'id',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'id' },
-            { header: 'Name', itemField: 'name' },
-            { header: 'Internal', itemField: 'internal' },
-            { header: 'Routing Types', itemField: 'routingTypes' },
-            { header: 'Queue Count', itemField: 'queueCount' , htmlTemplate: 
'addresses-anchor-column-template', colActionFn: (item) => 
selectQueues(item.idx) }
-        ];
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "id";
-            ctrl.refreshed = true;
-            artemisAddress.address = null;
-            ctrl.pagination.load();
-        };
-
-        if (artemisAddress.address) {
-            Artemis.log.debug("navigating to address = " + 
artemisAddress.address.address);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[1].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisAddress.address.address;
-            artemisAddress.address = null;
-        }
-
-        selectQueues = function (idx) {
-            var address = ctrl.addresses[idx].name;
-            Artemis.log.debug("navigating to queues:" + address)
-            artemisAddress.address = { address: address };
-            $location.path("artemis/artemisQueues");
-        };
-
-        function navigateToAddressAtts(action, item) {
-            $location.path("artemis/attributes").search({"tab": "artemis", 
"nid": getAddressNid(item.name, $location)});
-        };
-        function navigateToAddressOps(action, item) {
-            $location.path("artemis/operations").search({"tab": "artemis", 
"nid": getAddressNid(item.name, $location)});
-        };
-        function getAddressNid(address, $location) {
-            var rootNID = getRootNid($location);
-            var targetNID = rootNID + "addresses-" + address;
-            Artemis.log.debug("targetNID=" + targetNID);
-            return targetNID;
-        }
-        function getRootNid($location) {
-            var currentNid = $location.search()['nid'];
-            Artemis.log.debug("current nid=" + currentNid);
-            var firstDash = currentNid.indexOf('-');
-            var secondDash = currentNid.indexOf('-', firstDash + 1);
-            var thirdDash = currentNid.indexOf('-', secondDash + 1);
-            if (thirdDash < 0) {
-                return currentNid + "-";
-            }
-            var rootNID = currentNid.substring(0, thirdDash + 1);
-            return rootNID;
-        }
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listAddresses(java.lang.String, int, int)';
-                var addressFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(addressFilter), ctrl.pagination.pageNumber, 
ctrl.pagination.pageSize] }, Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        ctrl.pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list sessions" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.addresses = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                ctrl.addresses.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allAddresses = ctrl.addresses;
-            ctrl.addresses = allAddresses;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    AddressesController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisAddress'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/connections.js
 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/connections.js
deleted file mode 100644
index 63a5225f47..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/connections.js
+++ /dev/null
@@ -1,281 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    Artemis.log.debug("loading connections");
-    Artemis._module.component('artemisConnections', {
-        template:
-            `
-            <h1>Browse Connections
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          
uib-popover-template="'connections-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-            <div ng-include="'plugin/artemistoolbar.html'"></div>
-            <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            action-buttons="$ctrl.tableActionButtons"
-                            items="$ctrl.connections">
-            </pf-table-view>
-            <div ng-include="'plugin/artemispagination.html'"></div>
-            <div hawtio-confirm-dialog="$ctrl.closeDialog" title="Close 
Connection?"
-                ok-button-text="Close"
-                cancel-button-text="Cancel"
-                on-ok="$ctrl.closeConnection()">
-                 <div class="dialog-body">
-                    <p class="alert alert-warning">
-                        <span class="pficon pficon-warning-triangle-o"></span>
-                        You are about to close the selected connection: 
{{$ctrl.connectionToDelete}}
-                        <p>Are you sure you want to continue.</p>
-                    </p>
-                 </div>
-            </div>
-            <script type="text/ng-template" 
id="connections-anchor-column-template">
-               <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-            </script>
-            <script type="text/ng-template" id="connections-instructions.html">
-            <div>
-                <p>
-                    This page allows you to browse all connections currently 
connected to the broker, including client, cluster
-                    and bridge connections. These can be narrowed down by 
specifying a filter and also sorted using the sort
-                    function in the toolbar. To execute a query click on the 
<span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    Connections can be closed by using the <code>close</code> 
button under the <code>Actions</code> column and you can
-                    navigate to the connections sessions open by clicking on 
the <code>Session Count</code> field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-            </script>
-            `,
-              controller: ConnectionsController
-    })
-    .name;
-
-
-    function ConnectionsController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisConnection, 
artemisSession) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allConnections = [];
-        ctrl.connections = [];
-        ctrl.pageNumber = 1;
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.connectionToDelete = '';
-        ctrl.closeDialog = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-                {name: "ID", visible: true},
-                {name: "Client ID", visible: true},
-                {name: "Users", visible: true},
-                {name: "Protocol", visible: true},
-                {name: "Session Count", visible: true},
-                {name: "Remote Address", visible: true},
-                {name: "Local Address", visible: true},
-                {name: "Session ID", visible: true},
-                {name: "Creation Time", visible: true}
-           ]
-        };
-
-        Artemis.log.debug('localStorage: connectionsColumnDefs =', 
localStorage.getItem('connectionsColumnDefs'));
-        if (localStorage.getItem('connectionsColumnDefs')) {
-            loadedDefs = 
JSON.parse(localStorage.getItem('connectionsColumnDefs'));
-            //sanity check to make sure columns havent been added
-            if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-                ctrl.dtOptions.columns = loadedDefs;
-            }
-            Artemis.log.debug('loaded' + ctrl.dtOptions.columns);
-        }
-
-        ctrl.updateColumns = function () {
-            var attributes = [];
-            ctrl.dtOptions.columns.forEach(function (column) {
-                attributes.push({name: column.name, visible: column.visible});
-            });
-            Artemis.log.debug("saving columns " + JSON.stringify(attributes));
-            localStorage.setItem('connectionsColumnDefs', 
JSON.stringify(attributes));
-        }
-
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'connectionID', name: 'ID'},
-                {id: 'clientID', name: 'Client ID'},
-                {id: 'users', name: 'Users'},
-                {id: 'protocol', name: 'Protocol'},
-                {id: 'sessionCount', name: 'Session Count'},
-                {id: 'remoteAddress', name: 'Remote Address'},
-                {id: 'localAddress', name: 'Local Address'},
-                {id: 'sessionID', name: 'Session ID'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'},
-                {id: 'NOT_CONTAINS', name: 'Does Not Contain'},
-                {id: 'GREATER_THAN', name: 'Greater Than'},
-                {id: 'LESS_THAN', name: 'Less Than'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "connectionID"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-
-        ctrl.tableActionButtons = [
-          {
-            name: 'Close',
-            title: 'Close the Connection',
-            actionFn: openCloseDialog
-          }
-        ];
-
-        ctrl.tableConfig = {
-            selectionMatchProp: 'connectionID',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'connectionID' },
-            { header: 'Client ID', itemField: 'clientID' },
-            { header: 'Users', itemField: 'users' },
-            { header: 'protocol', itemField: 'protocol' },
-            { header: 'Session Count', itemField: 'sessionCount', 
htmlTemplate: 'connections-anchor-column-template', colActionFn: (item) => 
selectSessions(item.idx) },
-
-            { header: 'Remote Address', itemField: 'remoteAddress' },
-            { header: 'Local Address', itemField: 'localAddress' },
-            { header: 'Creation Time', itemField: 'creationTime' }
-        ];
-
-        selectSessions = function (idx) {
-            var connection = ctrl.connections[idx].connectionID;
-            Artemis.log.debug("navigating to connection:" + connection)
-            artemisConnection.connection = { connectionID: connection };
-            $location.path("artemis/artemisSessions");
-        };
-
-        if (artemisSession.session) {
-            Artemis.log.debug("navigating to session = " + 
artemisSession.session.connectionID);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[0].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisSession.session.connectionID;
-            artemisSession.session = null;
-        }
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "connectionID";
-            ctrl.filter.text.fieldText = "Filter Field..";
-            ctrl.filter.text.operationText = "Operation..";
-            ctrl.filter.text.sortOrderText = "ascending";
-            ctrl.filter.text.sortByText = "ID";
-            ctrl.refreshed = true;
-            artemisSession.session = null;
-            ctrl.pagination.load();
-        };
-
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listConnections(java.lang.String, int, int)';
-                var connectionsFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-                Artemis.log.info(JSON.stringify(connectionsFilter));
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(connectionsFilter), 
ctrl.pagination.pageNumber, ctrl.pagination.pageSize] }, 
Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        function openCloseDialog(action, item) {
-            ctrl.connectionToDelete = item.connectionID;
-            ctrl.closeDialog = true;
-        }
-
-        ctrl.closeConnection = function () {
-           Artemis.log.debug("closing connection: " + ctrl.connectionToDelete);
-              if (mbean) {
-                  jolokia.request({ type: 'exec',
-                     mbean: mbean,
-                     operation: 'closeConnectionWithID(java.lang.String)',
-                     arguments: [ctrl.connectionToDelete] },
-                     Core.onSuccess(ctrl.pagination.load(), { error: function 
(response) {
-                        Core.defaultJolokiaErrorHandler("Could not close 
connection: " + response);
-                 }}));
-           }
-        };
-
-        pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list connections" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.connections = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                ctrl.connections.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allConnections = ctrl.connections;
-            ctrl.connections = allConnections;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    ConnectionsController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisConnection', 'artemisSession'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/consumers.js
 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/consumers.js
deleted file mode 100644
index ec9ab72caf..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/consumers.js
+++ /dev/null
@@ -1,354 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    Artemis._module.component('artemisConsumers', {
-        template:
-            `<h1>Browse Consumers
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          uib-popover-template="'consumers-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-             <div ng-include="'plugin/artemistoolbar.html'"></div>
-             <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            action-buttons="$ctrl.tableActionButtons"
-                            items="$ctrl.consumers">
-             </pf-table-view>
-             <div ng-include="'plugin/artemispagination.html'"></div>
-             <div hawtio-confirm-dialog="$ctrl.closeDialog" title="Close 
Consumer?"
-                  ok-button-text="Close"
-                  cancel-button-text="Cancel"
-                  on-ok="$ctrl.closeConsumer()">
-                  <div class="dialog-body">
-                      <p class="alert alert-warning">
-                          <span class="pficon 
pficon-warning-triangle-o"></span>
-                          You are about to close the selected consumer: 
{{$ctrl.consumerToDelete}}
-                          <p>Are you sure you want to continue.</p>
-                      </p>
-                  </div>
-             </div>
-             <script type="text/ng-template" 
id="consumers-anchor-column-template">
-                <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-             </script>
-             <script type="text/ng-template" id="consumers-instructions.html">
-             <div>
-                <p>
-                    This page allows you to browse all consumers currently 
open on the broker. These can be narrowed down
-                    by specifying a filter and also sorted using the sort 
function in the toolbar. To execute a query
-                    click on the <span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    Consumers can be closed by using the <code>close</code> 
button under the <code>Actions</code> column and you can
-                    navigate to the consumers  session, address and queue by 
clicking on the appropriate field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-             </script>
-             `,
-              controller: ConsumersController
-    })
-    .name;
-
-
-    function ConsumersController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisConsumer, 
artemisQueue, artemisAddress, artemisSession) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allConsumers = [];
-        ctrl.consumers = [];
-        ctrl.pageNumber = 1;
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.consumerToDeletesSession = '';
-        ctrl.consumerToDelete = '';
-        ctrl.closeDialog = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-              {name: "ID", visible: true},
-              {name: "Session", visible: true},
-              {name: "Client ID", visible: true},
-              {name: "Validated User", visible: false},
-              {name: "Protocol", visible: true},
-              {name: "Queue", visible: true},
-              {name: "Queue Type", visible: true},
-              {name: "Filter", visible: true},
-              {name: "Address", visible: true},
-              {name: "Remote Address", visible: true},
-              {name: "Local Address", visible: true},
-              {name: "Creation Time", visible: true},
-              {name: "Messages in Transit", visible: false},
-              {name: "Messages in Transit Size", visible: false},
-              {name: "Messages Delivered", visible: false},
-              {name: "Messages Delivered Size", visible: false},
-              {name: "Messages Acknowledged", visible: false},
-              {name: "Messages Acknowledged awaiting Commit", visible: false},
-              {name: "Last Delivered Time", visible: false},
-              {name: "Last Acknowledged Time", visible: false},
-              {name: "Status", visible: false}
-         ]
-        };
-
-        Artemis.log.debug('localStorage: consumersColumnDefs =', 
localStorage.getItem('consumersColumnDefs'));
-        if (localStorage.getItem('consumersColumnDefs')) {
-          loadedDefs = JSON.parse(localStorage.getItem('consumersColumnDefs'));
-          //sanity check to make sure columns havent been added
-          if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-              ctrl.dtOptions.columns = loadedDefs;
-          }
-        }
-
-        ctrl.updateColumns = function () {
-          var attributes = [];
-          ctrl.dtOptions.columns.forEach(function (column) {
-              attributes.push({name: column.name, visible: column.visible});
-          });
-          Artemis.log.debug("saving columns " + JSON.stringify(attributes));
-          localStorage.setItem('consumersColumnDefs', 
JSON.stringify(attributes));
-        }
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'id', name: 'ID'},
-                {id: 'session', name: 'Session'},
-                {id: 'clientID', name: 'Client ID'},
-                {id: 'user', name: 'User'},
-                {id: 'validatedUser', name: 'Validated User'},
-                {id: 'address', name: 'Address'},
-                {id: 'queue', name: 'Queue'},
-                {id: 'protocol', name: 'Protocol'},
-                {id: 'localAddress', name: 'Local Address'},
-                {id: 'remoteAddress', name: 'Remote Address'},
-                {id: 'messagesInTransit', name: 'Messages in Transit'},
-                {id: 'messagesInTransitSize', name: 'Messages in Transit 
Size'},
-                {id: 'messagesDelivered', name: 'Messages Delivered'},
-                {id: 'messagesDeliveredSize', name: 'Messages Delivered Size'},
-                {id: 'messagesAcknowledged', name: 'Messages Acknowledged'},
-                {id: 'messagesAcknowledgedAwaitingCommit', name: 'Messages 
Acknowledged awaiting Commit'},
-                {id: 'status', name: 'status'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'},
-                {id: 'NOT_CONTAINS', name: 'Does Not Contain'},
-                {id: 'GREATER_THAN', name: 'Greater Than'},
-                {id: 'LESS_THAN', name: 'Less Than'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "id"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-
-        ctrl.tableActionButtons = [
-           {
-            name: 'Close',
-            title: 'Close the Consumer',
-            actionFn: openCloseDialog
-           }
-        ];
-        ctrl.tableConfig = {
-            selectionMatchProp: 'id',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'id' },
-            { header: 'Session', itemField: 'session' , htmlTemplate: 
'consumers-anchor-column-template', colActionFn: (item) => 
selectSession(item.idx) },
-            { header: 'Client ID', itemField: 'clientID' },
-            { header: 'Validated User', itemField: 'validatedUser' },
-            { header: 'Protocol', itemField: 'protocol' },
-            { header: 'Queue', itemField: 'queueName', htmlTemplate: 
'consumers-anchor-column-template', colActionFn: (item) => 
selectQueue(item.idx) },
-            { header: 'Queue Type', itemField: 'queueType' },
-            { header: 'Filter', itemField: 'filter' },
-            { header: 'Address', itemField: 'addressName' , htmlTemplate: 
'consumers-anchor-column-template', colActionFn: (item) => 
selectAddress(item.idx) },
-            { header: 'Remote Address', itemField: 'remoteAddress' },
-            { header: 'Local Address', itemField: 'localAddress' },
-            { header: 'Creation Time', itemField: 'creationTime' },
-            { header: 'Messages in Transit', itemField: 'messagesInTransit' },
-            { header: 'Messages in Transit Size', itemField: 
'messagesInTransitSize' },
-            { header: 'Messages Delivered', itemField: 'messagesDelivered' },
-            { header: 'Messages Delivered Size', itemField: 
'messagesDeliveredSize' },
-            { header: 'Messages Acknowledged', itemField: 
'messagesAcknowledged' },
-            { header: 'Messages Acknowledged awaiting Commit', itemField: 
'messagesAcknowledgedAwaitingCommit' },
-            { header: 'Last Delivered Time', itemField: 'lastDeliveredTime', 
templateFn: function(value) { return formatTimestamp(value);} },
-            { header: 'Last Acknowledged Time', itemField: 
'lastAcknowledgedTime' ,  templateFn: function(value) { return 
formatTimestamp(value);} },
-            { header: 'Status', itemField: 'status' }
-        ];
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "id";
-            ctrl.filter.text.fieldText = "Filter Field..";
-            ctrl.filter.text.operationText = "Operation..";
-            ctrl.filter.text.sortOrderText = "ascending";
-            ctrl.filter.text.sortByText = "ID";
-            ctrl.refreshed = true;
-            artemisConsumer.consumer = null;
-            ctrl.pagination.load();
-        };
-
-        if (artemisConsumer.consumer) {
-            Artemis.log.debug("navigating to consumer = " + 
artemisConsumer.consumer.sessionID);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[1].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisConsumer.consumer.sessionID;
-            artemisConsumer.consumer = null;
-        }
-
-        if (artemisQueue.queue) {
-            Artemis.log.info("navigating to consumer = " + 
artemisQueue.queue.queue);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[5].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisQueue.queue.queue;
-            artemisQueue.queue = null;
-        }
-
-        selectQueue = function (idx) {
-            var queue = ctrl.consumers[idx].queue;
-            Artemis.log.debug("navigating to queue:" + queue)
-            artemisQueue.queue = { queue: queue };
-            $location.path("artemis/artemisQueues");
-        };
-
-        selectAddress = function (idx) {
-            var address = ctrl.consumers[idx].address;
-            Artemis.log.debug("navigating to address:" + address)
-            artemisAddress.address = { address: address };
-            $location.path("artemis/artemisAddresses");
-        };
-
-        selectSession = function (idx) {
-            var session = ctrl.consumers[idx].session;
-            Artemis.log.debug("navigating to session:" + session)
-            artemisSession.session = { session: session };
-            $location.path("artemis/artemisSessions");
-        };
-
-        function openCloseDialog(action, item) {
-            ctrl.consumerToDelete = item.id;
-            ctrl.consumerToDeletesSession = item.session;
-            ctrl.closeDialog = true;
-        }
-
-        ctrl.closeConsumer = function () {
-           Artemis.log.debug("closing session: " + ctrl.consumerToDelete);
-              if (mbean) {
-                  jolokia.request({ type: 'exec',
-                     mbean: mbean,
-                     operation: 
'closeConsumerWithID(java.lang.String,java.lang.String)',
-                     arguments: [ctrl.consumerToDeletesSession, 
ctrl.consumerToDelete] },
-                     Core.onSuccess(ctrl.pagination.load(), { error: function 
(response) {
-                        Core.defaultJolokiaErrorHandler("Could not close 
session: " + response);
-                 }}));
-           }
-        };
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listConsumers(java.lang.String, int, int)';
-                var sessionsFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-
-                Artemis.log.info(JSON.stringify(sessionsFilter));
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(sessionsFilter), ctrl.pagination.pageNumber, 
ctrl.pagination.pageSize] }, Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        function formatTimestamp(timestamp) {
-             Artemis.log.info("in timestamp " + timestamp + " " + (typeof 
timestamp !== "number"));
-             if (isNaN(timestamp) || typeof timestamp !== "number") {
-                Artemis.log.info("returning timestamp " + timestamp + " " + 
(typeof timestamp !== "number"));
-                return timestamp;
-             }
-             if (timestamp === 0) {
-                return "N/A";
-             }
-             var d = new Date(timestamp);
-             // "yyyy-MM-dd HH:mm:ss"
-             //add 1 to month as getmonth returns the position not the actual 
month
-             return d.getFullYear() + "-" + pad2(d.getMonth() + 1) + "-" + 
pad2(d.getDate()) + " " + pad2(d.getHours()) + ":" + pad2(d.getMinutes()) + ":" 
+ pad2(d.getSeconds());
-        }
-        function pad2(value) {
-            return (value < 10 ? '0' : '') + value;
-        }
-
-
-        ctrl.pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list sessions" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.consumers = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                value.addressName = value.address;
-                value.queueName = value.queue;
-                ctrl.consumers.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allConsumers = ctrl.consumers;
-            ctrl.consumers = allConsumers;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    ConsumersController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisConsumer', 'artemisQueue', 'artemisAddress', 
'artemisSession'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/producers.js
 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/producers.js
deleted file mode 100644
index 66d10afa4f..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/producers.js
+++ /dev/null
@@ -1,249 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    Artemis.log.debug("loading producers");
-    Artemis._module.component('artemisProducers', {
-        template:
-            `<h1>Browse Producers
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          uib-popover-template="'producers-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-             <div ng-include="'plugin/artemistoolbar.html'"></div>
-             <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            items="$ctrl.producers">
-             </pf-table-view>
-             <div ng-include="'plugin/artemispagination.html'"></div>
-             <script type="text/ng-template" 
id="producers-anchor-column-template">
-                <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-             </script>
-             <script type="text/ng-template" id="producers-instructions.html">
-             <div>
-                <p>
-                    This page allows you to browse all producers currently 
open on the broker. These can be narrowed down
-                    by specifying a filter and also sorted using the sort 
function in the toolbar. To execute a query
-                    click on the <span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    You can navigate to the producers  session by clicking on 
the <code>Session</code> field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-             </script>
-             `,
-              controller: ProducersController
-    })
-    .name;
-
-
-    function ProducersController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisProducer, 
artemisAddress, artemisSession) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allProducers = [];
-        ctrl.producers = [];
-        ctrl.pageNumber = 1;
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-                {name: "ID", visible: true},
-                {name: "Name", visible: true},
-                {name: "Session", visible: true},
-                {name: "Client ID", visible: true},
-                {name: "Protocol", visible: true},
-                {name: "User", visible: true},
-                {name: "Validated User", visible: false},
-                {name: "Address", visible: true},
-                {name: "Remote Address", visible: true},
-                {name: "Local Address", visible: true},
-                {name: "Messages Sent", visible: false},
-                {name: "Messages Sent Size", visible: false},
-                {name: "Last Produced Message ID", visible: false}
-           ]
-          };
-
-        Artemis.log.debug('localStorage: producersColumnDefs =', 
localStorage.getItem('producersColumnDefs'));
-        if (localStorage.getItem('producersColumnDefs')) {
-            loadedDefs = 
JSON.parse(localStorage.getItem('producersColumnDefs'));
-            //sanity check to make sure columns havent been added
-            if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-                ctrl.dtOptions.columns = loadedDefs;
-            }
-        }
-
-        ctrl.updateColumns = function () {
-            var attributes = [];
-            ctrl.dtOptions.columns.forEach(function (column) {
-                attributes.push({name: column.name, visible: column.visible});
-            });
-            Artemis.log.debug("saving columns " + JSON.stringify(attributes));
-            localStorage.setItem('producersColumnDefs', 
JSON.stringify(attributes));
-        }
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'id', name: 'ID'},
-                {id: 'name', name: 'Name'},
-                {id: 'session', name: 'Session'},
-                {id: 'clientID', name: 'Client ID'},
-                {id: 'user', name: 'User'},
-                {id: 'validatedUser', name: 'Validated User'},
-                {id: 'address', name: 'Address'},
-                {id: 'protocol', name: 'Protocol'},
-                {id: 'localAddress', name: 'Local Address'},
-                {id: 'remoteAddress', name: 'Remote Address'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "id"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-        ctrl.tableConfig = {
-            selectionMatchProp: 'id',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'id' },
-            { header: 'Name', itemField: 'name' },
-            { header: 'Session', itemField: 'session' , htmlTemplate: 
'producers-anchor-column-template', colActionFn: (item) => 
selectSession(item.idx) },
-            { header: 'Client ID', itemField: 'clientID' },
-            { header: 'Protocol', itemField: 'protocol' },
-            { header: 'User', itemField: 'user' },
-            { header: 'Validated User', name: 'validatedUser'},
-            { header: 'Address', itemField: 'addressName' , htmlTemplate: 
'producers-anchor-column-template', colActionFn: (item) => 
selectAddress(item.idx) },
-            { header: 'Remote Address', itemField: 'remoteAddress' },
-            { header: 'Local Address', itemField: 'localAddress' },
-            { header: 'Messages Sent', itemField: 'msgSent'},
-            { header: 'Messages Sent Size', itemField: 'msgSizeSent'},
-            { header: 'Last Produced Message ID', itemField: 
'lastProducedMessageID'}
-        ];
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "id";
-            ctrl.filter.text.fieldText = "Filter Field..";
-            ctrl.filter.text.operationText = "Operation..";
-            ctrl.filter.text.sortOrderText = "ascending";
-            ctrl.filter.text.sortByText = "ID";
-            ctrl.refreshed = true;
-            artemisProducer.producer = null;
-            ctrl.pagination.load();
-        };
-
-        selectAddress = function (idx) {
-            var address = ctrl.producers[idx].address;
-            Artemis.log.debug("navigating to address:" + address)
-            artemisAddress.address = { address: address };
-            $location.path("artemis/artemisAddresses");
-        };
-
-        selectSession = function (idx) {
-            var session = ctrl.producers[idx].session;
-            Artemis.log.debug("navigating to session:" + session)
-            artemisSession.session = { session: session };
-            $location.path("artemis/artemisSessions");
-        };
-
-        if (artemisProducer.producer) {
-            Artemis.log.debug("navigating to producer = " + 
artemisProducer.producer.sessionID);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[1].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisProducer.producer.sessionID;
-            artemisProducer.producer = null;
-        }
-
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listProducers(java.lang.String, int, int)';
-                var producerFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(producerFilter), ctrl.pagination.pageNumber, 
ctrl.pagination.pageSize] }, Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        ctrl.pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list sessions" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.producers = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                value.addressName = value.address;
-                ctrl.producers.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allProducers = ctrl.producers;
-            ctrl.producers = allProducers;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    ProducersController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisProducer', 'artemisAddress', 'artemisSession'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/queues.js 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/queues.js
deleted file mode 100644
index ce26f728b6..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/queues.js
+++ /dev/null
@@ -1,361 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    //Artemis.log.debug("loading addresses");
-    Artemis._module.component('artemisQueues', {
-        template:
-            `<h1>Browse Queues
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          uib-popover-template="'queues-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-             <div ng-include="'plugin/artemistoolbar.html'"></div>
-             <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            action-buttons="$ctrl.tableActionButtons"
-                            items="$ctrl.queues">
-             </pf-table-view>
-             <div ng-include="'plugin/artemispagination.html'"></div>
-             <script type="text/ng-template" 
id="queues-anchor-column-template">
-                <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-             </script>
-             <script type="text/ng-template" id="queues-instructions.html">
-             <div>
-                <p>
-                    This page allows you to browse all queues on the broker. 
These can be narrowed down
-                    by specifying a filter and also sorted using the sort 
function in the toolbar. To execute a query
-                    click on the <span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    You can also navigate directly to the JMX attributes and 
operations tabs by using the  <code>attributes</code>
-                    and <code>operations</code> button under the 
<code>Actions</code> column.You can navigate to the
-                    queues address by clicking on the <code>Address</code> 
field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-             </script>
-             `,
-              controller: QueuesController
-    })
-    .name;
-
-
-    function QueuesController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisQueue, 
artemisAddress) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allAddresses = [];
-        ctrl.queues = [];
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-                  {name: "ID", visible: true},
-                  {name: "name", visible: true},
-                  {name: "Address", visible: true},
-                  {name: "Routing Type", visible: true},
-                  {name: "Filter", visible: true},
-                  {name: "Durable", visible: true},
-                  {name: "Max Consumers", visible: true},
-                  {name: "Purge On No Consumers", visible: true},
-                  {name: "Consumer Count", visible: true},
-                  {name: "Message Count", visible: true},
-                  {name: "Paused", visible: false},
-                  {name: "Temporary", visible: false},
-                  {name: "Auto Created", visible: false},
-                  {name: "User", visible: false},
-                  {name: "Total Messages Added", visible: false},
-                  {name: "Total Messages Acked", visible: false},
-                  {name: "Delivering Count", visible: false},
-                  {name: "Messages Killed", visible: false},
-                  {name: "Direct Deliver", visible: false},
-                  {name: "Exclusive", visible: false},
-                  {name: "Last Value", visible: false},
-                  {name: "Last Value Key", visible: false},
-                  {name: "Scheduled Count", visible: false},
-                  {name: "Group Rebalance", visible: false},
-                  {name: "Group Rebalance Pause Dispatch", visible: false},
-                  {name: "Group Buckets", visible: false},
-                  {name: "Group First Key", visible: false},
-                  {name: "Queue Enabled", visible: false},
-                  {name: "Ring Size", visible: false},
-                  {name: "Consumers Before Dispatch", visible: false},
-                  {name: "Delay Before Dispatch", visible: false},
-                  {name: "Auto Delete", visible: false},
-                  {name: "Internal", visible: false}
-             ]
-        };
-
-        Artemis.log.debug('localStorage: queuesColumnDefs =', 
localStorage.getItem('queuesColumnDefs'));
-        if (localStorage.getItem('queuesColumnDefs')) {
-        Artemis.log.info("loading columns " + 
localStorage.getItem('queuesColumnDefs'))
-              loadedDefs = 
JSON.parse(localStorage.getItem('queuesColumnDefs'));
-              //sanity check to make sure columns havent been added
-              if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-                  ctrl.dtOptions.columns = loadedDefs;
-              }
-        }
-
-        ctrl.updateColumns = function () {
-              var attributes = [];
-              ctrl.dtOptions.columns.forEach(function (column) {
-                  attributes.push({name: column.name, visible: 
column.visible});
-              });
-              Artemis.log.debug("saving columns " + 
JSON.stringify(attributes));
-              localStorage.setItem('queuesColumnDefs', 
JSON.stringify(attributes));
-        }
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'id', name: 'ID'},
-                {id: 'name', name: 'Name'},
-                {id: 'consumerCount', name: 'Consumer Count'},
-                {id: 'address', name: 'Address'},
-                {id: 'filter', name: 'Filter'},
-                {id: 'maxConsumers', name: 'Max Consumers'},
-                {id: 'routingType', name: 'Routing Type'},
-                {id: 'purgeOnNoConsumers', name: 'Purge On No Consumers'},
-                {id: 'user', name: 'User'},
-                {id: 'messageCount', name: 'Message Count'},
-                {id: 'deliveringCount', name: 'Delivering Count'},
-                {id: 'paused', name: 'Paused'},
-                {id: 'temporary', name: 'Temporary'},
-                {id: 'autoCreated', name: 'Auto Created'},
-                {id: 'autoDelete', name: 'Auto Delete'},
-                {id: 'internalQueue', name: 'Internal'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'},
-                {id: 'NOT_CONTAINS', name: 'Does Not Contain'},
-                {id: 'GREATER_THAN', name: 'Greater Than'},
-                {id: 'LESS_THAN', name: 'Less Than'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "id"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-
-        ctrl.tableActionButtons = [
-            {
-                name: 'attributes',
-                title: 'Navigate to attributes',
-                actionFn: navigateToQueuesAtts
-            },
-            {
-               name: 'operations',
-               title: 'navigate to operations',
-               actionFn: navigateToQueuesOps
-            }
-        ];
-        ctrl.tableConfig = {
-            selectionMatchProp: 'id',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'id' },
-            { header: 'Name', itemField: 'name', htmlTemplate: 
'queues-anchor-column-template', colActionFn: (item) => selectQueue(item.idx) },
-            { header: 'Address', itemField: 'address', htmlTemplate: 
'queues-anchor-column-template', colActionFn: (item) => selectAddress(item.idx) 
},
-            { header: 'Routing Type', itemField: 'routingType'},
-            { header: 'Filter', itemField: 'filter' },
-            { header: 'Durable', itemField: 'durable' },
-            { header: 'Max Consumers', itemField: 'maxConsumers' },
-            { header: 'Purge On No Consumers', itemField: 'purgeOnNoConsumers' 
},
-            { header: 'Consumer Count', itemField: 'consumerCount', 
htmlTemplate: 'queues-anchor-column-template', colActionFn: (item) => 
selectConsumers(item.idx) },
-            { header: 'Message Count', itemField: 'messageCount', 
htmlTemplate: 'queues-anchor-column-template', colActionFn: (item) => 
browseQueue(item.idx) },
-            { header: 'Paused', itemField: 'paused' },
-            { header: 'Temporary', itemField: 'temporary' },
-            { header: 'Auto Created', itemField: 'autoCreated' },
-            { header: 'User', itemField: 'user' },
-            { header: 'Total Messages Added', itemField: 'messagesAdded' },
-            { header: 'Total Messages Acked', itemField: 'messagesAcked' },
-            { header: 'Delivering Count', itemField: 'deliveringCount' },
-            { header: 'Messages Killed', itemField: 'messagesKilled' },
-            { header: 'Direct Deliver', itemField: 'directDeliver' },
-            { header: 'exclusive', itemField: 'exclusive' },
-            { header: 'Last Value', itemField: 'lastValue' },
-            { header: 'Last Value Key', itemField: 'lastValueKey' },
-            { header: 'Scheduled Count', itemField: 'scheduledCount' },
-            { header: 'Group Rebalance', itemField: 'groupRebalance' },
-            { header: 'Group Rebalance Pause Dispatch', itemField: 
'groupRebalancePauseDispatch' },
-            { header: 'Group Buckets', itemField: 'groupBuckets' },
-            { header: 'Group First Key', itemField: 'groupFirstKey' },
-            { header: 'Enabled', itemField: 'enabled'},
-            { header: 'Ring Size', itemField: 'ringSize'},
-            { header: 'Consumers Before Dispatch', itemField: 
'consumersBeforeDispatch'},
-            { header: 'Delay Before Dispatch', itemField: 
'delayBeforeDispatch'},
-            { header: 'Auto Delete', itemField: 'autoDelete'},
-            { header: 'Internal', itemField: 'internalQueue'}
-        ];
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "id";
-            ctrl.filter.text.fieldText = "Filter Field..";
-            ctrl.filter.text.operationText = "Operation..";
-            ctrl.filter.text.sortOrderText = "ascending";
-            ctrl.filter.text.sortByText = "ID";
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-
-        if (artemisQueue.queue) {
-            Artemis.log.debug("navigating to queue = " + 
artemisQueue.queue.queue);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[1].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisQueue.queue.queue;
-            artemisQueue.queue = null;
-        }
-
-        if (artemisAddress.address) {
-            Artemis.log.debug("navigating to address = " + 
artemisAddress.address.address);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[3].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisAddress.address.address;
-            artemisAddress.address = null;
-        }
-
-        function navigateToQueuesAtts(action, item) {
-            qnid = getQueuesNid(item, $location);
-            Artemis.log.info(qnid);
-            $location.path("artemis/attributes").search({"tab": "artemis", 
"nid": qnid });
-        };
-        function navigateToQueuesOps(action, item) {
-            $location.path("artemis/operations").search({"tab": "artemis", 
"nid": getQueuesNid(item, $location)});
-        };
-        selectAddress = function (idx) {
-            var item = ctrl.queues[idx]
-            Artemis.log.debug("navigating to address:" + item.address);
-            artemisAddress.address = { address: item.address };
-            $location.path("artemis/artemisAddresses").search({"tab": 
"artemis", "nid": getAddressesNid(item, $location)});
-        };
-        selectQueue = function (idx) {
-            var item = ctrl.queues[idx];
-            var nid = getQueuesNid(item, $location);
-            Artemis.log.debug("navigating to queue:" + nid);
-            artemisQueue.queue = { queue: item.name };
-            $location.path("artemis/artemisQueues").search({"tab": "artemis", 
"nid": nid});
-        };
-        selectConsumers = function (idx) {
-            var item = ctrl.queues[idx];
-            var nid = getQueuesNid(item, $location);
-            artemisQueue.queue = { queue: item.name };
-            $location.path("artemis/artemisConsumers").search({"tab": 
"artemis", "nid": nid});
-        };
-        browseQueue = function (idx) {
-            var item = ctrl.queues[idx];
-            var nid = getQueuesNid(item, $location);
-            Artemis.log.debug("navigating to queue browser:" + nid);
-            $location.path("artemis/artemisBrowseQueue").search({"tab": 
"artemis", "nid": nid});
-        };
-        function getQueuesNid(item, $location) {
-            var rootNID = getRootNid($location);
-            var targetNID = rootNID + "addresses-" + item.address + "-queues-" 
+ item.routingType.toLowerCase() + "-" + item.name;
-            Artemis.log.debug("targetNID=" + targetNID);
-            return targetNID;
-        }
-        function getAddressesNid(item, $location) {
-            var rootNID = getRootNid($location);
-            var targetNID = rootNID + "addresses-" + item.address;
-            Artemis.log.debug("targetNID=" + targetNID);
-            return targetNID;
-        }
-        function getRootNid($location) {
-            var mBean = Artemis.getBrokerMBean(workspace, jolokia);
-            var details = Core.parseMBean(mBean);
-            var properties = details['attributes'];
-            var brokerAddress = properties["broker"] || "unknown";
-            var artemisJmxDomain = localStorage['artemisJmxDomain'] || 
"org.apache.activemq.artemis";
-            //we have to remove the surrounding quotes
-            return "root-" + artemisJmxDomain + "-" + 
brokerAddress.replace(/^"|"$/g, '') + "-";
-
-        }
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listQueues(java.lang.String, int, int)';
-                var queuesFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(queuesFilter), ctrl.pagination.pageNumber, 
ctrl.pagination.pageSize] }, Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        ctrl.pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list queues" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.queues = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                ctrl.queues.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allQueues = ctrl.queues;
-            ctrl.queues = allQueues;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    QueuesController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisQueue', 'artemisAddress'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/sessions.js
 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/sessions.js
deleted file mode 100644
index eb8cb3c94e..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/components/sessions.js
+++ /dev/null
@@ -1,297 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    Artemis.log.debug("loading sessions");
-    Artemis._module.component('artemisSessions', {
-        template:
-            `<h1>Browse Sessions
-                <button type="button" class="btn btn-link jvm-title-popover"
-                          uib-popover-template="'sessions-instructions.html'" 
popover-placement="bottom-left"
-                          popover-title="Instructions" 
popover-trigger="'outsideClick'">
-                    <span class="pficon pficon-help"></span>
-                </button>
-            </h1>
-             <div ng-include="'plugin/artemistoolbar.html'"></div>
-             <pf-table-view config="$ctrl.tableConfig"
-                            dt-options="$ctrl.dtOptions"
-                            columns="$ctrl.tableColumns"
-                            action-buttons="$ctrl.tableActionButtons"
-                            items="$ctrl.sessions">
-             </pf-table-view>
-             <div ng-include="'plugin/artemispagination.html'"></div>
-             <div hawtio-confirm-dialog="$ctrl.closeDialog" title="Close 
Session?"
-                 ok-button-text="Close"
-                 cancel-button-text="Cancel"
-                 on-ok="$ctrl.closeSession()">
-                 <div class="dialog-body">
-                     <p class="alert alert-warning">
-                         <span class="pficon pficon-warning-triangle-o"></span>
-                         You are about to close the selected session: 
{{$ctrl.sessionToDelete}}
-                         <p>Are you sure you want to continue.</p>
-                     </p>
-                 </div>
-             </div>
-             <script type="text/ng-template" 
id="sessions-anchor-column-template">
-                <a href="#" ng-click="$ctrl.handleColAction(key, 
item)">{{value}}</a>
-             </script>
-             <script type="text/ng-template" id="sessions-instructions.html">
-             <div>
-                <p>
-                    This page allows you to browse all session currently open 
on the broker. These can be narrowed down
-                    by specifying a filter and also sorted using the sort 
function in the toolbar. To execute a query
-                    click on the <span class="fa fa-search"></span> button.
-                </p>
-                <p>
-                    Sessions can be closed by using the <code>close</code> 
button under the <code>Actions</code> column and you can
-                    navigate to the connection, consumers and producers by 
clicking on the appropriate field.
-                  </p>
-                  <p>
-                    Note that each page is loaded in from the broker when 
navigating to a new page or when a query is executed.
-                  </p>
-                </div>
-             </script>
-             `,
-              controller: SessionsController
-    })
-    .name;
-
-
-    function SessionsController($scope, workspace, jolokia, localStorage, 
artemisMessage, $location, $timeout, $filter, pagination, artemisConnection, 
artemisSession, artemisConsumer, artemisProducer) {
-        var ctrl = this;
-        ctrl.pagination = pagination;
-        ctrl.pagination.reset();
-        var mbean = Artemis.getBrokerMBean(workspace, jolokia);
-        ctrl.allSessions = [];
-        ctrl.sessions = [];
-        ctrl.pageNumber = 1;
-        ctrl.workspace = workspace;
-        ctrl.refreshed = false;
-        ctrl.sessionToDeletesConnection = '';
-        ctrl.sessionToDelete = '';
-        ctrl.closeDialog = false;
-        ctrl.dtOptions = {
-           // turn of ordering as we do it ourselves
-           ordering: false,
-           columns: [
-                {name: "ID", visible: true},
-                {name: "Connection", visible: true},
-                {name: "User", visible: true},
-                {name: "Validated User", visible: false},
-                {name: "Consumer Count", visible: true},
-                {name: "Producer Count", visible: true},
-                {name: "Creation Time", visible: true}
-             ]
-        };
-
-        Artemis.log.debug('localStorage: sessionsColumnDefs =', 
localStorage.getItem('sessionsColumnDefs'));
-        if (localStorage.getItem('sessionsColumnDefs')) {
-            loadedDefs = 
JSON.parse(localStorage.getItem('sessionsColumnDefs'));
-            //sanity check to make sure columns havent been added
-            if(loadedDefs.length === ctrl.dtOptions.columns.length) {
-                ctrl.dtOptions.columns = loadedDefs;
-            }
-        }
-
-        ctrl.updateColumns = function () {
-                var attributes = [];
-                ctrl.dtOptions.columns.forEach(function (column) {
-                    attributes.push({name: column.name, visible: 
column.visible});
-                });
-                Artemis.log.debug("saving columns " + 
JSON.stringify(attributes));
-                localStorage.setItem('sessionsColumnDefs', 
JSON.stringify(attributes));
-        }
-        ctrl.filter = {
-            fieldOptions: [
-                {id: 'id', name: 'ID'},
-                {id: 'connectionID', name: 'Connection ID'},
-                {id: 'consumerCount', name: 'Consumer Count'},
-                {id: 'user', name: 'User'},
-                {id: 'validatedUser', name: 'Validated User'},
-                {id: 'protocol', name: 'Protocol'},
-                {id: 'clientID', name: 'Client ID'},
-                {id: 'localAddress', name: 'Local Address'},
-                {id: 'remoteAddress', name: 'Remote Address'}
-            ],
-            operationOptions: [
-                {id: 'EQUALS', name: 'Equals'},
-                {id: 'NOT_EQUALS', name: 'Not Equals'},
-                {id: 'CONTAINS', name: 'Contains'},
-                {id: 'NOT_CONTAINS', name: 'Does Not Contain'},
-                {id: 'GREATER_THAN', name: 'Greater Than'},
-                {id: 'LESS_THAN', name: 'Less Than'}
-            ],
-            sortOptions: [
-                {id: 'asc', name: 'ascending'},
-                {id: 'desc', name: 'descending'}
-            ],
-            values: {
-                field: "",
-                operation: "",
-                value: "",
-                sortOrder: "asc",
-                sortField: "id"
-            },
-            text: {
-                fieldText: "Filter Field..",
-                operationText: "Operation..",
-                sortOrderText: "ascending",
-                sortByText: "ID"
-            }
-        };
-        ctrl.tableActionButtons = [
-           {
-            name: 'Close',
-            title: 'Close the Session',
-            actionFn: openCloseDialog
-           }
-        ];
-        ctrl.tableConfig = {
-            selectionMatchProp: 'id',
-            showCheckboxes: false
-        };
-        ctrl.tableColumns = [
-            { header: 'ID', itemField: 'id' },
-            { header: 'Connection', itemField: 'connectionID', htmlTemplate: 
'sessions-anchor-column-template', colActionFn: (item) => 
selectConnection(item.idx) },
-            { header: 'User', itemField: 'user' },
-            { header: 'Validated User', itemField: 'validatedUser' },
-            { header: 'Consumer Count', itemField: 'consumerCount', 
htmlTemplate: 'sessions-anchor-column-template', colActionFn: (item) => 
selectConsumers(item.idx) },
-            { header: 'Producer Count', itemField: 'producerCount', 
htmlTemplate: 'sessions-anchor-column-template', colActionFn: (item) => 
selectProducers(item.idx) },
-            { header: 'Creation Time', itemField: 'creationTime' }
-        ];
-
-        ctrl.refresh = function () {
-            ctrl.refreshed = true;
-            ctrl.pagination.load();
-        };
-        ctrl.reset = function () {
-            ctrl.filter.values.field = "";
-            ctrl.filter.values.operation = "";
-            ctrl.filter.values.value = "";
-            ctrl.filter.sortOrder = "asc";
-            ctrl.filter.sortField = "id";
-            ctrl.filter.text.fieldText = "Filter Field..";
-            ctrl.filter.text.operationText = "Operation..";
-            ctrl.filter.text.sortOrderText = "ascending";
-            ctrl.filter.text.sortByText = "ID";
-            ctrl.refreshed = true;
-            artemisConnection.connection = null;
-            artemisSession.session = null;
-            artemisConsumer.consumer = null;
-            ctrl.pagination.load();
-        };
-
-        selectConnection = function (idx) {
-            var connection = ctrl.sessions[idx].connectionID;
-            Artemis.log.debug("navigating to connection:" + connection)
-            artemisSession.session = { connectionID: connection };
-            $location.path("artemis/artemisConnections");
-        };
-
-        selectConsumers = function (idx) {
-            var session = ctrl.sessions[idx].id;
-            Artemis.log.debug("navigating to consumers:" + session)
-            artemisConsumer.consumer = { sessionID: session };
-            $location.path("artemis/artemisConsumers");
-        };
-
-        selectProducers = function (idx) {
-            var session = ctrl.sessions[idx].id;
-            Artemis.log.debug("navigating to producers:" + session)
-            artemisProducer.producer = { sessionID: session };
-            $location.path("artemis/artemisProducers");
-        };
-
-        if (artemisConnection.connection) {
-            Artemis.log.debug("navigating to connection = " + 
artemisConnection.connection.connectionID);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[1].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = 
artemisConnection.connection.connectionID;
-            artemisConnection.connection = null;
-        }
-
-        if (artemisSession.session) {
-            Artemis.log.debug("navigating to session = " + 
artemisSession.session.session);
-            ctrl.filter.values.field = ctrl.filter.fieldOptions[0].id;
-            ctrl.filter.values.operation = ctrl.filter.operationOptions[0].id;
-            ctrl.filter.values.value = artemisSession.session.session;
-            artemisSession.session = null;
-        }
-
-        function openCloseDialog(action, item) {
-            ctrl.sessionToDelete = item.id;
-            ctrl.sessionToDeletesConnection = item.connectionID;
-            ctrl.closeDialog = true;
-        }
-
-        ctrl.closeSession = function () {
-           Artemis.log.debug("closing session: " + ctrl.sessionToDelete);
-              if (mbean) {
-                  jolokia.request({ type: 'exec',
-                     mbean: mbean,
-                     operation: 
'closeSessionWithID(java.lang.String,java.lang.String)',
-                     arguments: [ctrl.sessionToDeletesConnection, 
ctrl.sessionToDelete] },
-                     Core.onSuccess(ctrl.pagination.load(), { error: function 
(response) {
-                        Core.defaultJolokiaErrorHandler("Could not close 
session: " + response);
-                 }}));
-           }
-        };
-        ctrl.loadOperation = function () {
-            if (mbean) {
-                var method = 'listSessions(java.lang.String, int, int)';
-                var sessionsFilter = {
-                    field: ctrl.filter.values.field,
-                    operation: ctrl.filter.values.operation,
-                    value: ctrl.filter.values.value,
-                    sortOrder: ctrl.filter.values.sortOrder,
-                    sortField: ctrl.filter.values.sortField
-                };
-
-                if (ctrl.refreshed == true) {
-                    ctrl.pagination.reset();
-                    ctrl.refreshed = false;
-                }
-                jolokia.request({ type: 'exec', mbean: mbean, operation: 
method, arguments: [JSON.stringify(sessionsFilter), ctrl.pagination.pageNumber, 
ctrl.pagination.pageSize] }, Core.onSuccess(populateTable, { error: onError }));
-            }
-        };
-
-        ctrl.pagination.setOperation(ctrl.loadOperation);
-
-        function onError(response) {
-            Core.notification("error", "could not invoke list sessions" + 
response.error);
-            $scope.workspace.selectParentNode();
-        };
-
-        function populateTable(response) {
-            var data = JSON.parse(response.value);
-            ctrl.sessions = [];
-            angular.forEach(data["data"], function (value, idx) {
-                value.idx = idx;
-                ctrl.sessions.push(value);
-            });
-            ctrl.pagination.page(data["count"]);
-            allSessions = ctrl.sessions;
-            ctrl.sessions = allSessions;
-            Core.$apply($scope);
-        }
-
-        ctrl.pagination.load();
-    }
-    SessionsController.$inject = ['$scope', 'workspace', 'jolokia', 
'localStorage', 'artemisMessage', '$location', '$timeout', '$filter', 
'pagination', 'artemisConnection', 'artemisSession', 'artemisConsumer', 
'artemisProducer'];
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file
diff --git 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/services/toolbar.js 
b/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/services/toolbar.js
deleted file mode 100644
index 733862cfa5..0000000000
--- 
a/artemis-hawtio/artemis-plugin/src/main/webapp/plugin/js/services/toolbar.js
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-var Artemis;
-(function (Artemis) {
-    Artemis._module.run(configureToolbar);
-
-       function configureToolbar($templateCache) {
-           $templateCache.put('plugin/artemistoolbar.html',
-                `
-                <div class="row toolbar-pf table-view-pf-toolbar" 
id="toolbar1">
-                    <form class="toolbar-pf-actions">
-                        <div class="form-group toolbar-pf-filter">
-                            <div class="input-group">
-                                <div class="input-group-btn" 
style="padding-left: 10px">
-                                    <button id="filter.values.field" 
type="button" class="btn btn-default dropdown-toggle" id="filter" 
data-toggle="dropdown" aria-haspopup="true" 
aria-expanded="false">{{$ctrl.filter.text.fieldText}} <span 
class="caret"></span></button>
-                                    <ul class="dropdown-menu">
-                                        <li ng-repeat="option in 
$ctrl.filter.fieldOptions"
-                                            id="option.id" 
ng-click="$ctrl.filter.values.field = option.id;$ctrl.filter.text.fieldText = 
option.name">{{ option.name }}</ul>
-                                    </ul>
-                                </div>
-                                <div class="input-group-btn">
-                                      <button type="button" class="btn 
btn-default dropdown-toggle" id="filter" data-toggle="dropdown" 
aria-haspopup="true" 
aria-expanded="false">{{$ctrl.filter.text.operationText}}<span 
class="caret"></span></button>
-                                      <ul class="dropdown-menu">
-                                        <li ng-repeat="option in 
$ctrl.filter.operationOptions"
-                                              id="option.id" 
ng-click="$ctrl.filter.values.operation = 
option.id;$ctrl.filter.text.operationText = option.name">{{ option.name }}</ul>
-                                      </ul>
-                                </div>
-                                <input type="text" class="form-control" 
ng-model="$ctrl.filter.values.value" placeholder="Value" autocomplete="off" 
id="filterInput">
-                                <div class="input-group-btn" 
style="padding-left: 10px">
-                                      <button type="button" class="btn 
btn-default dropdown-toggle" id="filter" data-toggle="dropdown" 
aria-haspopup="true" 
aria-expanded="false">{{$ctrl.filter.text.sortOrderText}}<span 
class="caret"></span></button>
-                                      <ul class="dropdown-menu">
-                                        <li ng-repeat="option in 
$ctrl.filter.sortOptions"
-                                              id="option.id" 
ng-click="$ctrl.filter.values.sortOrder = 
option.id;$ctrl.filter.text.sortOrderText = option.name">{{ option.name }}</ul>
-                                      </ul>
-                                </div>
-                                <div class="input-group-btn">
-                                      <button type="button" class="btn 
btn-default dropdown-toggle" id="filter" data-toggle="dropdown" 
aria-haspopup="true" 
aria-expanded="false">{{$ctrl.filter.text.sortByText}}<span 
class="caret"></span></button>
-                                      <ul class="dropdown-menu">
-                                        <li ng-repeat="option in 
$ctrl.filter.fieldOptions"
-                                              id="option.id" 
ng-click="$ctrl.filter.values.sortField = 
option.id;$ctrl.filter.text.sortByText = option.name">{{ option.name }}</ul>
-                                      </ul>
-                                </div>
-                                <div class="input-group-btn">
-                                    <button class="btn btn-link btn-find" 
ng-click="$ctrl.refresh()" type="button">
-                                        &nbsp;&nbsp;<span class="fa 
fa-search"></span>&nbsp;&nbsp;
-                                    </button>
-                                </div>
-                                <div class="input-group-btn">
-                                    <button class="btn btn-default 
primary-action ng-binding ng-scope"
-                                        type="button"
-                                        title=""
-                                        ng-click="$ctrl.reset()">Reset
-                                    </button>
-                                </div>
-                                <div class="input-group-btn" 
style="padding-left: 10px">
-                                    <button class="btn btn-default 
primary-action ng-binding ng-scope"
-                                        type="button"
-                                        title=""
-                                        ng-click="$ctrl.showColumns = 
true">Columns
-                                    </button>
-                                </div>
-                            </div>
-                        </div>
-                        <div hawtio-confirm-dialog="$ctrl.showColumns"
-                          title="Column Selector"
-                          cancel-button-text="Close"
-                          on-cancel="$ctrl.updateColumns()"
-                          show-ok-button="false">
-                            <div class="dialog-body ng-non-bindable" >
-                                <table class="table-view-container table 
table-striped table-bordered table-hover dataTable no-footer">
-                                    <tr ng-repeat="col in 
$ctrl.dtOptions.columns">
-                                        <td>{{ col.name }}</td>
-                                        <td><input type="checkbox" 
ng-model="col.visible" placeholder="Name" autocomplete="off" id="name"></td>
-                                    </tr>
-                                </table>
-                            </div>
-                        </div>
-                    </form>
-                 </div>
-               `
-           )
-           $templateCache.put('plugin/artemismessagetoolbar.html',
-                `
-                <div class="row toolbar-pf table-view-pf-toolbar" 
id="toolbar1">
-                    <div class="col-sm-20">
-                        <form class="toolbar-pf-actions">
-                            <div class="form-group toolbar-pf-filter">
-                                <div class="input-group">
-                                    <input type="text" class="form-control" 
ng-model="$ctrl.filter.values.value" placeholder="Filter..." autocomplete="off" 
id="filterInput">
-                                    <div class="input-group-btn">
-                                        <button class="btn btn-link btn-find" 
ng-click="$ctrl.refresh()" type="button">
-                                            &nbsp;&nbsp;<span class="fa 
fa-search"></span>&nbsp;&nbsp;
-                                        </button>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-group">
-                                    <button class="btn btn-default 
primary-action ng-binding ng-scope"
-                                        type="button"
-                                        title=""
-                                        ng-click="$ctrl.reset()">Reset
-                                    </button>
-                            </div>
-                        </form>
-                    </div>
-                </div>
-                `
-          )
-       }
-       configureToolbar.$inject = ['$templateCache'];
-
-
-
-})(Artemis || (Artemis = {}));
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to