[qpid-dispatch] branch 1.17.x updated: Updating console dependencies to latest minor version
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch 1.17.x in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/1.17.x by this push: new 607f57b Updating console dependencies to latest minor version 607f57b is described below commit 607f57bd5edb08a7db8cdf7d344a105b72690e0e Author: Ernest Allen AuthorDate: Fri Oct 15 09:48:41 2021 -0400 Updating console dependencies to latest minor version --- console/react/package-lock.json | 1757 ++- console/react/package.json | 28 +- 2 files changed, 1029 insertions(+), 756 deletions(-) diff --git a/console/react/package-lock.json b/console/react/package-lock.json index a6ff401..4dd48cf 100644 --- a/console/react/package-lock.json +++ b/console/react/package-lock.json @@ -8,13 +8,13 @@ "name": "dispatch-console", "version": "1.16.0", "dependencies": { -"@patternfly/patternfly": "^4.102.2", -"@patternfly/react-charts": "^6.14.17", -"@patternfly/react-core": "^4.115.2", -"@patternfly/react-icons": "^4.10.2", -"@patternfly/react-styles": "^4.10.2", -"@patternfly/react-table": "^4.26.7", -"@patternfly/react-topology": "^4.8.36", +"@patternfly/patternfly": "^4.144.5", +"@patternfly/react-charts": "^6.15.32", +"@patternfly/react-core": "^4.162.3", +"@patternfly/react-icons": "^4.13.1", +"@patternfly/react-styles": "^4.12.5", +"@patternfly/react-table": "^4.31.8", +"@patternfly/react-topology": "^4.9.104", "d3": "^3.5.17", "d3-queue": "^3.0.7", "express": "^4.17.1", @@ -23,21 +23,21 @@ "react": "^17.0.2", "react-dom": "^17.0.2", "react-fontawesome": "^1.7.1", -"react-router-dom": "^5.2.0", -"rhea": "^2.0.0", +"react-router-dom": "^5.3.0", +"rhea": "^2.0.4", "topojson-client": "^3.1.0" }, "devDependencies": { "@react-mock/localstorage": "^0.1.2", -"@testing-library/jest-dom": "^5.12.0", -"@testing-library/react": "^11.2.6", +"@testing-library/jest-dom": "^5.14.1", +"@testing-library/react": "^11.2.7", "@types/jest": "^26.0.22", "body-parser": "^1.19.0", -"browserslist": "^4.16.5", +"browserslist": "^4.17.4", "jest-axe": "^4.1.0", -"prettier": "^2.2.1", +"prettier": "^2.4.1", "react-scripts": "^4.0.3", -"typescript": "^4.2.4" +"typescript": "^4.4.4" } }, "node_modules/@babel/code-frame": { @@ -2088,87 +2088,118 @@ } }, "node_modules/@patternfly/patternfly": { - "version": "4.102.2", - "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-4.102.2.tgz";, - "integrity": "sha512-n51n3iW/lRHCvModGYDCEzeLJO+x4Z9ZRkdz6HtUqrStfjIRFHCKbKlpyPvpWacdQEC5Mx1oNIrHmNASmm/Zgw==" + "version": "4.144.5", + "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-4.144.5.tgz";, + "integrity": "sha512-ivY8nD7cU1+IDuLYQt7180/a9JRMTcJNBoOistpCfdkI6c9m0+xdID6WSIUiiceYWhV0BhKx1jU5pVJc4kQPtw==" }, "node_modules/@patternfly/react-charts": { - "version": "6.14.17", - "resolved": "https://registry.npmjs.org/@patternfly/react-charts/-/react-charts-6.14.17.tgz";, - "integrity": "sha512-UZCdszEcLiezR/3TDFijMZqy+qq7oWQJAbOpwiAaxiJwTYv/cuJXY7ss437oQL4zZBqrpGBdCCh0QPML9dPE7g==", + "version": "6.15.32", + "resolved": "https://registry.npmjs.org/@patternfly/react-charts/-/react-charts-6.15.32.tgz";, + "integrity": "sha512-5EuPS0jo62UUg0aWgCegYGOy/TgnZD9w+RKxAMgVEXtn/Fq9ymSUcQZ8WsKh5R2lqhgkQx9CnYapWQIuQc3dsg==", &q
[qpid-dispatch] branch main updated: NO-JIRA: Use simpler CMAKE syntax
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/main by this push: new aa750cd NO-JIRA: Use simpler CMAKE syntax new 18624c4 Merge pull request #1361 from ErnieAllen/ernie-cmake-console aa750cd is described below commit aa750cd46318b5cdf72c23f15f40b6ea1db448c2 Author: Ernest Allen AuthorDate: Tue Aug 31 14:42:15 2021 -0400 NO-JIRA: Use simpler CMAKE syntax --- console/CMakeLists.txt | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index 33aff77..c095c50 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -28,8 +28,9 @@ if(CONSOLE_INSTALL) if (NPM_EXECUTABLE) execute_process(COMMAND ${NPM_EXECUTABLE} --version OUTPUT_VARIABLE NPM_VERSION) -if(NOT (${NPM_VERSION} VERSION_LESS "3.1.10")) - +if(${NPM_VERSION} VERSION_LESS "3.1.10") + message(STATUS "Cannot build console. npm version 3.1.10 or greater is required.") +else(${NPM_VERSION} VERSION_LESS "3.1.10") set(CONSOLE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/console/react") set(CONSOLE_BUILD_DIR "${CMAKE_BINARY_DIR}/console") @@ -94,9 +95,7 @@ if(CONSOLE_INSTALL) PATTERN "*.map" EXCLUDE ) -else(NOT (${NPM_VERSION} VERSION_LESS "3.1.10")) - message(STATUS "Cannot build console. npm version 3.1.10 or greater is required.") -endif(NOT (${NPM_VERSION} VERSION_LESS "3.1.10")) +endif(${NPM_VERSION} VERSION_LESS "3.1.10") endif(NPM_EXECUTABLE) endif(CONSOLE_INSTALL) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch main updated (3e87d32 -> a4a6487)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 3e87d32 DISPATCH-2175: Suppress TSan failure caused by Proton (#1264) add 6eb668b DISPATCH-1914: Fixed typo in console's schema page that was causing extraneous console warnings. add a4a6487 DISPATCH-1623: Prevent console from erroneously showing the disconnected page a few minues after a failed auto-login attempt. No new revisions were added by this update. Summary of changes: console/react/src/common/amqp/connection.js| 38 +- console/react/src/details/schema/schemaPage.js | 10 +++ 2 files changed, 24 insertions(+), 24 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch main updated: DISPATCH-2097: Console ignores connections with property 'qd.adaptor' defined.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/main by this push: new d5889bc DISPATCH-2097: Console ignores connections with property 'qd.adaptor' defined. d5889bc is described below commit d5889bc3d1ba0f7c7db82d29dea49a931d072c0d Author: Ernest Allen AuthorDate: Mon Jun 14 10:38:46 2021 -0400 DISPATCH-2097: Console ignores connections with property 'qd.adaptor' defined. --- console/react/package-lock.json | 133 console/react/src/topology/links.js | 28 2 files changed, 91 insertions(+), 70 deletions(-) diff --git a/console/react/package-lock.json b/console/react/package-lock.json index 20b4b11..a6ff401 100644 --- a/console/react/package-lock.json +++ b/console/react/package-lock.json @@ -6001,13 +6001,13 @@ } }, "node_modules/cssnano": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz";, - "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz";, + "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==", "dev": true, "dependencies": { "cosmiconfig": "^5.0.0", -"cssnano-preset-default": "^4.0.7", +"cssnano-preset-default": "^4.0.8", "is-resolvable": "^1.0.0", "postcss": "^7.0.0" }, @@ -6016,9 +6016,9 @@ } }, "node_modules/cssnano-preset-default": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz";, - "integrity": "sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz";, + "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", "dev": true, "dependencies": { "css-declaration-sorter": "^4.0.1", @@ -6049,7 +6049,7 @@ "postcss-ordered-values": "^4.1.2", "postcss-reduce-initial": "^4.0.3", "postcss-reduce-transforms": "^4.0.2", -"postcss-svgo": "^4.0.2", +"postcss-svgo": "^4.0.3", "postcss-unique-selectors": "^4.0.1" }, "engines": { @@ -6851,9 +6851,9 @@ "dev": true }, "node_modules/dns-packet": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz";, - "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.3.tgz";, + "integrity": "sha512-dDwDMOJU+m6Qx+LhltSV+BWNrMaTqx3eXkAqgt/iouWTXGZMffg1rOSnG2xa3lWqmJ9xTBc7fgIe/css4S1rxA==", "dev": true, "dependencies": { "ip": "^1.1.0", @@ -9585,9 +9585,9 @@ } }, "node_modules/hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz";, - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz";, + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", "dev": true }, "node_modules/hpack.js": { @@ -12991,9 +12991,9 @@ "optional": true }, "node_modules/nanoid": { - "version": "3.1.22&quo
[qpid-dispatch] 02/02: DISPATCH-1914 Updated the console's schema page test
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 6c6cdd10cbf3b4d020a288df4d74614e4768f610 Author: Ernest Allen AuthorDate: Tue May 25 12:01:05 2021 -0400 DISPATCH-1914 Updated the console's schema page test --- .../react/src/details/schema/schemaPage.test.js| 25 +- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/console/react/src/details/schema/schemaPage.test.js b/console/react/src/details/schema/schemaPage.test.js index 84e8923..6e09ea4 100644 --- a/console/react/src/details/schema/schemaPage.test.js +++ b/console/react/src/details/schema/schemaPage.test.js @@ -18,31 +18,16 @@ under the License. */ import React from "react"; -import { render, fireEvent } from "@testing-library/react"; +import { render } from "@testing-library/react"; import { mockService } from "../../../test_data/qdrService.mock"; import SchemaPage from "./schemaPage"; it("renders a SchemaPage", () => { const service = mockService({}); const props = { -schema: service.schema +schema: service.schema, }; - const { getByTestId, queryByTestId } = render(); - - // the root node should be present - const root = getByTestId("entities"); - expect(root).toBeInTheDocument(); - - // the root node should be expanded by default - // therefore the address entity should be present - let addressEntity = getByTestId("address"); - expect(addressEntity).toBeInTheDocument(); - - fireEvent.click(addressEntity); - expect(getByTestId("address-egressPhase")).toBeInTheDocument(); - - // clicking on the root should collapse the tree - fireEvent.click(root); - addressEntity = queryByTestId("address"); - expect(addressEntity).toBeNull(); + const { getByText } = render(); + const addressText = getByText(/router.address/); + expect(addressText).toBeInTheDocument(); }); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch main updated (d08f33a -> 6c6cdd1)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from d08f33a DISPATCH-1914 Update console's schema page to fix formatting issues (using PF4 treeview component) new ebaf88f DISPATCH-1914 Removed some extraneous debugging log statements from the console's schema page new 6c6cdd1 DISPATCH-1914 Updated the console's schema page test The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/src/details/schema/schemaPage.js | 3 --- .../react/src/details/schema/schemaPage.test.js| 25 +- 2 files changed, 5 insertions(+), 23 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/02: DISPATCH-1914 Removed some extraneous debugging log statements from the console's schema page
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit ebaf88ff1a02153b8efbed1e376a65f38ec1cf2d Author: Ernest Allen AuthorDate: Tue May 25 12:00:19 2021 -0400 DISPATCH-1914 Removed some extraneous debugging log statements from the console's schema page --- console/react/src/details/schema/schemaPage.js | 3 --- 1 file changed, 3 deletions(-) diff --git a/console/react/src/details/schema/schemaPage.js b/console/react/src/details/schema/schemaPage.js index 4dc7ace..4ac88a2 100644 --- a/console/react/src/details/schema/schemaPage.js +++ b/console/react/src/details/schema/schemaPage.js @@ -58,9 +58,6 @@ class SchemaPage extends React.Component { const child = { name: entity, id: `ID.${this.nextId++}` }; const keys = Object.keys(schema[entity]); keys.forEach(key => { - console.log( -`processing schema[${entity}][${key}] which is type ${typeof schema[entity][key]}` - ); const isArray = Array.isArray(schema[entity][key]); if (typeof schema[entity][key] === "object" && !isArray) { if (!child.children) { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch main updated: DISPATCH-1914 Update console's schema page to fix formatting issues (using PF4 treeview component)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/main by this push: new d08f33a DISPATCH-1914 Update console's schema page to fix formatting issues (using PF4 treeview component) d08f33a is described below commit d08f33a45ddae8bafb556ad0df2f28eddb2c0003 Author: Ernest Allen AuthorDate: Tue May 25 11:44:38 2021 -0400 DISPATCH-1914 Update console's schema page to fix formatting issues (using PF4 treeview component) --- console/react/src/details/schema/schemaPage.js | 229 +++-- 1 file changed, 62 insertions(+), 167 deletions(-) diff --git a/console/react/src/details/schema/schemaPage.js b/console/react/src/details/schema/schemaPage.js index b18198b..4dc7ace 100644 --- a/console/react/src/details/schema/schemaPage.js +++ b/console/react/src/details/schema/schemaPage.js @@ -18,191 +18,86 @@ under the License. */ import React from "react"; -import { PageSection, PageSectionVariants } from "@patternfly/react-core"; -import { Stack, StackItem, TextContent, Text, TextVariants } from "@patternfly/react-core"; -import { Card, CardBody } from "@patternfly/react-core"; +import { TreeView, Button } from "@patternfly/react-core"; class SchemaPage extends React.Component { constructor(props) { super(props); - -this.state = { - root: { -key: "entities", -title: "Schema entities", -description: "List of management entities. Click on an entity to view its attributes.", -hidden: false - } -}; -this.initRoot(this.state.root, this.props.schema.entityTypes); +this.state = { activeItems: {}, allExpanded: false }; +this.nextId = 0; } - initRoot = (root, schema) => { -root.attributes = [ - { -key: Object.keys(schema).length, -value: "Entities" - } -]; -root.children = []; -const entities = Object.keys(schema).sort(); -for (let i = 0; i < entities.length; i++) { - const entity = entities[i]; - const child = { title: entity, key: entity }; - this.initChild(child, schema[entity]); - root.children.push(child); -} + handleTreeClick = (evt, treeViewItem, parentItem) => { +this.setState({ + activeItems: [treeViewItem, parentItem], +}); }; - initChild = (child, obj) => { -child.hidden = true; -child.description = obj.description; -child.attributes = []; -if (obj.attributes) { - child.hidden = false; - child.attributes.push({ -key: Object.keys(obj.attributes).length, -value: "Attributes" - }); - child.children = []; - for (const attr in obj.attributes) { -const sub = { title: attr, key: `${child.key}-${attr}` }; -this.initChild(sub, obj.attributes[attr]); -child.children.push(sub); - } -} -if (obj.operations) { - child.attributes.push({ -key: "Operations", -value: `[${obj.operations.join(", ")}]` - }); -} -if (obj.fullyQualifiedType) { - child.fqt = obj.fullyQualifiedType; -} -if (obj.type) { - child.attributes.push({ -key: "type", -value: obj.type.constructor === Array ? `[${obj.type.join(", ")}]` : obj.type - }); -} -if (obj.default) { - child.attributes.push({ key: "default", value: obj.default }); -} -if (obj.required) { - child.attributes.push({ key: "required", value: "" }); -} -if (obj.unique) { - child.attributes.push({ key: "unique", value: "" }); -} -if (obj.graph) { - child.attributes.push({ key: "statistic", value: "" }); -} + onToggle = evt => { +const { allExpanded } = this.state; +this.setState({ + allExpanded: allExpanded !== undefined ? !allExpanded : true, +}); }; - toggleChildren = (event, parent) => { -event.stopPropagation(); -if (parent.children && parent.children.length > 0) { - parent.children.forEach(child => { -child.hidden = !child.hidden; - }); - this.setState({ root: this.state.root }); -} + handleExpandAllToggle = (evt, treeViewItem, parentItem) => { +this.handleTreeClick(evt, treeViewItem, parentItem); }; - folderIconClass = item => { -if (item.children) { - return item.children.some(child => !child.hidden) -? "pficon-folder-open" -: "pficon-folder-close"; -} -return "pficon-catalog"; + buildTreeOptions = () => { +const schema = this.props.schema.entityTypes; +const options = []; +const entities
[qpid-dispatch] branch master updated: DISPATCH-1945: Remove unused function to avoid lint error.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 709d7c1 DISPATCH-1945: Remove unused function to avoid lint error. 709d7c1 is described below commit 709d7c1ebfcf132e7e8f4affbaa95e287a17ea42 Author: Ernest Allen AuthorDate: Tue Feb 2 16:01:20 2021 -0500 DISPATCH-1945: Remove unused function to avoid lint error. --- console/react/src/topology/svgUtils.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/console/react/src/topology/svgUtils.js b/console/react/src/topology/svgUtils.js index c9ecd36..1ac122e 100644 --- a/console/react/src/topology/svgUtils.js +++ b/console/react/src/topology/svgUtils.js @@ -252,6 +252,7 @@ export function addGradient(svg) { grad.append("stop").attr("offset", "50%").style("stop-color", "#F0F000"); } +/* function addStyles(stend, stateColor, radii) { // the
[qpid-dispatch] branch master updated: DISPATCH-1945: Clean up some graphic glitches on the console's visualization pages.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 5b243c3 DISPATCH-1945: Clean up some graphic glitches on the console's visualization pages. 5b243c3 is described below commit 5b243c35baf89fbe89412b8a68213a5297a26237 Author: Ernest Allen AuthorDate: Mon Feb 1 14:37:02 2021 -0500 DISPATCH-1945: Clean up some graphic glitches on the console's visualization pages. --- console/react/src/App.css | 11 ++- .../src/overview/dashboard/activeAddressesCard.js | 12 .../react/src/overview/dashboard/dashboardPage.js | 9 ++- console/react/src/topology/svgUtils.js | 82 ++ 4 files changed, 55 insertions(+), 59 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index f03a3c1..35d83ac 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -103,8 +103,17 @@ g.selected line { #topologyPage .pf-l-stack__item, #messageFlowPage .pf-l-stack__item { - border-bottom: 1px solid #aaa; + /* border-bottom: 1px solid #aaa; */ } + +#pf-topology-view-2 { + padding-bottom: 0; +} + +.pf-topology-container__with-sidebar { + overflow-y: hidden; +} + .node.client rect { stroke: black; fill: white; diff --git a/console/react/src/overview/dashboard/activeAddressesCard.js b/console/react/src/overview/dashboard/activeAddressesCard.js index 302adc6..d204566 100644 --- a/console/react/src/overview/dashboard/activeAddressesCard.js +++ b/console/react/src/overview/dashboard/activeAddressesCard.js @@ -74,8 +74,6 @@ class ActiveAddressesCard extends React.Component { ); if (link.linkType === "endpoint") { if (link.owningAddr && !link.owningAddr.startsWith("Ltemp.")) { -console.log(`adding deliveries for ${link.owningAddr}`); -console.log(link); if (!active[link.owningAddr]) { active[link.owningAddr] = { addr: this.props.service.utilities.addr_text(link.owningAddr), @@ -90,20 +88,10 @@ class ActiveAddressesCard extends React.Component { if (address) { if (link.linkDir === "in") { active[link.owningAddr].in += parseInt(address.deliveriesIngress); -console.log( - `in: ${parseInt(address.deliveriesIngress)} for a total of ${ -active[link.owningAddr].in - }` -); } if (link.linkDir === "out") { active[link.owningAddr].out += parseInt(address.deliveriesEgress); active[link.owningAddr].settleRate += parseInt(link.settleRate); -console.log( - `out: ${parseInt(address.deliveriesEgress)} for a total of ${ -active[link.owningAddr].out - }` -); } } } diff --git a/console/react/src/overview/dashboard/dashboardPage.js b/console/react/src/overview/dashboard/dashboardPage.js index f1e8415..3a95733 100644 --- a/console/react/src/overview/dashboard/dashboardPage.js +++ b/console/react/src/overview/dashboard/dashboardPage.js @@ -31,7 +31,7 @@ class DashboardPage extends React.Component { constructor(props) { super(props); this.state = { - timePeriod: 60 + timePeriod: 60, }; } @@ -56,9 +56,12 @@ class DashboardPage extends React.Component { Router network statistics - + this.setTimePeriod(60)} className={`pf-c-nav__item ${ this.state.timePeriod === 60 ? "selected" : "" diff --git a/console/react/src/topology/svgUtils.js b/console/react/src/topology/svgUtils.js index be28677..c9ecd36 100644 --- a/console/react/src/topology/svgUtils.js +++ b/console/react/src/topology/svgUtils.js @@ -24,16 +24,16 @@ import { utils } from "../common/amqp/utilities.js"; export function updateState(circle) { circle .selectAll("circle") -.classed("highlighted", function(d) { +.classed("highlighted", function (d) { return d.highlighted; }) -.classed("selected", function(d) { +.classed("selected", function (d) { return d.selected; }) -.classed("fixed", function(d) { +.classed("fixed", function (d) { return d.fixed ? d.fixed & 1 : false; }) -.classed("multiple", functi
[qpid-dispatch] branch master updated: DISPATCH-1944: Only add ingress count on links with linkDir of 'in'. Same for egress links only use linkDir 'out'.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 94f05b2 DISPATCH-1944: Only add ingress count on links with linkDir of 'in'. Same for egress links only use linkDir 'out'. 94f05b2 is described below commit 94f05b20383e657e1b5836f2b292e96418773f80 Author: Ernest Allen AuthorDate: Mon Feb 1 09:37:12 2021 -0500 DISPATCH-1944: Only add ingress count on links with linkDir of 'in'. Same for egress links only use linkDir 'out'. --- .../src/overview/dashboard/activeAddressesCard.js | 43 -- 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/console/react/src/overview/dashboard/activeAddressesCard.js b/console/react/src/overview/dashboard/activeAddressesCard.js index faf6775..302adc6 100644 --- a/console/react/src/overview/dashboard/activeAddressesCard.js +++ b/console/react/src/overview/dashboard/activeAddressesCard.js @@ -18,7 +18,7 @@ under the License. */ import React from "react"; -import {nowrap, Table, TableBody, TableHeader} from "@patternfly/react-table"; +import { nowrap, Table, TableBody, TableHeader } from "@patternfly/react-table"; // update the table every 5 seconds const UPDATE_INTERVAL = 1000 * 5; @@ -28,8 +28,11 @@ class ActiveAddressesCard extends React.Component { super(props); this.state = { lastUpdate: new Date(), - columns: ["Address", "In", "Out", "Settle rate"].map(it => ({"title": it, "transforms": [nowrap]})), - rows: [] + columns: ["Address", "In", "Out", "Settle rate"].map(it => ({ +title: it, +transforms: [nowrap], + })), + rows: [], }; } @@ -49,12 +52,12 @@ class ActiveAddressesCard extends React.Component { [ { entity: "router.link", - attrs: ["settleRate", "linkType", "linkDir", "owningAddr"] + attrs: ["settleRate", "linkType", "linkDir", "owningAddr"], }, { entity: "router.address", - attrs: ["identity", "deliveriesIngress", "deliveriesEgress"] -} + attrs: ["identity", "deliveriesIngress", "deliveriesEgress"], +}, ], results => { if (!this.mounted) return; @@ -71,22 +74,38 @@ class ActiveAddressesCard extends React.Component { ); if (link.linkType === "endpoint") { if (link.owningAddr && !link.owningAddr.startsWith("Ltemp.")) { +console.log(`adding deliveries for ${link.owningAddr}`); +console.log(link); if (!active[link.owningAddr]) { active[link.owningAddr] = { addr: this.props.service.utilities.addr_text(link.owningAddr), in: 0, out: 0, -settleRate: 0 +settleRate: 0, }; } const address = addresses.find( address => address.identity === link.owningAddr ); if (address) { - active[link.owningAddr].in += parseInt(address.deliveriesIngress); - active[link.owningAddr].out += parseInt(address.deliveriesEgress); + if (link.linkDir === "in") { +active[link.owningAddr].in += parseInt(address.deliveriesIngress); +console.log( + `in: ${parseInt(address.deliveriesIngress)} for a total of ${ +active[link.owningAddr].in + }` +); + } + if (link.linkDir === "out") { +active[link.owningAddr].out += parseInt(address.deliveriesEgress); +active[link.owningAddr].settleRate += parseInt(link.settleRate); +console.log( + `out: ${parseInt(address.deliveriesEgress)} for a total of ${ +active[link.owningAddr].out + }` +); + } } -active[link.owningAddr].settleRate += parseInt(link.settleRate); } } } @@ -100,8 +119,8 @@ class ActiveAddressesCard extends React.Component { active[addr].addr, active[addr].in.toLocaleString(), active[addr].out.toLocaleString(), -
[qpid-dispatch] branch master updated: DISPATCH-1759: Update react-scripts dependency in console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 9498d4a DISPATCH-1759: Update react-scripts dependency in console 9498d4a is described below commit 9498d4a0eafb057ff5853d0fdb25cf1ae54c0c6f Author: Ernest Allen AuthorDate: Wed Aug 19 09:23:46 2020 -0400 DISPATCH-1759: Update react-scripts dependency in console --- console/react/package-lock.json | 420 ++-- console/react/package.json | 2 +- 2 files changed, 102 insertions(+), 320 deletions(-) diff --git a/console/react/package-lock.json b/console/react/package-lock.json index 0ce8f26..96df353 100644 --- a/console/react/package-lock.json +++ b/console/react/package-lock.json @@ -387,9 +387,9 @@ } }, "@babel/parser": { - "version": "7.11.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.0.tgz";, - "integrity": "sha512-qvRvi4oI8xii8NllyEc4MDJjuZiNaRzyb7Y7lup1NqJV8TZHF4O27CcP+72WPn/k1zkgJ6WJfnIbk4jTsVAZHw==", + "version": "7.11.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.11.3.tgz";, + "integrity": "sha512-REo8xv7+sDxkKvoxEywIdsNFiZLybwdI7hcT5uEPyQrSMB4YQ973BfC9OOrD/81MaIjh6UxdulIQXkjmiH3PcA==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -710,9 +710,9 @@ } }, "@babel/plugin-transform-block-scoping": { - "version": "7.10.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.10.5.tgz";, - "integrity": "sha512-6Ycw3hjpQti0qssQcA6AMSFDHeNJ++R6dIMnpRqUjFeBBTmTDPa8zgF90OVfTvAo11mXZTlVUViY1g8ffrURLg==", + "version": "7.11.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.11.1.tgz";, + "integrity": "sha512-00dYeDE0EVEHuuM+26+0w/SCL0BH2Qy7LwHuI4Hi4MH5gkC8/AqMN5uWFJIsoXZrAphiMm1iXzBw6L2T+eA0ew==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.10.4" @@ -2894,9 +2894,9 @@ } }, "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz";, - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", + "version": "6.12.4", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz";, + "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -3100,14 +3100,15 @@ } }, "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz";, - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz";, + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", -"minimalistic-assert": "^1.0.0" +"minimalistic-assert": "^1.0.0", +"safer-buffer": "^2.1.0" }, "dependencies": { "bn.js": { @@ -3213,9 +3214,9 @@ "dev": true }, "aws4": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.0.tgz";, - "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz";, + "integrity": "sha512-zg7Hz2k5lI8kb7U
[qpid-dispatch] branch master updated: DISPATCH-1729: Updated console tests to pass in requeired properties
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 328ace1 DISPATCH-1729: Updated console tests to pass in requeired properties 328ace1 is described below commit 328ace195a740b4e2937402e244e8167def5f595 Author: Ernest Allen AuthorDate: Tue Jul 28 11:20:26 2020 -0400 DISPATCH-1729: Updated console tests to pass in requeired properties --- console/react/src/common/DropdownMenu.test.js | 2 ++ console/react/src/overview/overviewPage.test.js | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/console/react/src/common/DropdownMenu.test.js b/console/react/src/common/DropdownMenu.test.js index 29b8940..c91c3f0 100644 --- a/console/react/src/common/DropdownMenu.test.js +++ b/console/react/src/common/DropdownMenu.test.js @@ -35,6 +35,8 @@ it("the dropdown menu component renders and calls event handlers", () => { parentClass="" handleDropdownLogout={handleDropdownLogout} handleContextHide={() => {}} + handleSuppress={() => {}} + suppress={false} /> ); menuRef.show(true); diff --git a/console/react/src/overview/overviewPage.test.js b/console/react/src/overview/overviewPage.test.js index 9b71fba..8c2c5a4 100644 --- a/console/react/src/overview/overviewPage.test.js +++ b/console/react/src/overview/overviewPage.test.js @@ -75,7 +75,8 @@ it("renders the overview connections page", () => { const props = { service, location: { pathname: `/overview/${entity}` }, -lastUpdated: () => {} +lastUpdated: () => {}, +handleAddNotification: () => {} }; login(() => { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1730: Revert console's testing library to v9.5.0
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new bfa9e6e DISPATCH-1730: Revert console's testing library to v9.5.0 bfa9e6e is described below commit bfa9e6e07036fcc2bba3837e8aca14e365ae8ccd Author: Ernest Allen AuthorDate: Tue Jul 28 11:14:38 2020 -0400 DISPATCH-1730: Revert console's testing library to v9.5.0 --- console/react/package-lock.json | 208 +++- console/react/package.json | 10 +- 2 files changed, 147 insertions(+), 71 deletions(-) diff --git a/console/react/package-lock.json b/console/react/package-lock.json index 2b0befa..574f3c0 100644 --- a/console/react/package-lock.json +++ b/console/react/package-lock.json @@ -1457,6 +1457,20 @@ "victory": "^33.0.5", "victory-core": "^33.0.1", "victory-legend": "^33.0.1" + }, + "dependencies": { +"@patternfly/react-styles": { + "version": "3.7.14", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.14.tgz";, + "integrity": "sha512-NVwbPP9JroulfQgj0LOLWKP4DumArW8RrP1FB1lLOCuw13KkuAcFbLN9MSF8ZBwJ8syxGEdux5mDC3jPjsrQiw==", + "requires": { +"camel-case": "^3.0.0", +"css": "^2.2.3", +"cssstyle": "^0.3.1", +"emotion": "^9.2.9", +"emotion-server": "^9.2.9" + } +} } }, "@patternfly/react-core": { @@ -1470,6 +1484,20 @@ "focus-trap": "4.0.2", "react-dropzone": "9.0.0", "tippy.js": "5.1.2" + }, + "dependencies": { +"@patternfly/react-styles": { + "version": "3.7.14", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.14.tgz";, + "integrity": "sha512-NVwbPP9JroulfQgj0LOLWKP4DumArW8RrP1FB1lLOCuw13KkuAcFbLN9MSF8ZBwJ8syxGEdux5mDC3jPjsrQiw==", + "requires": { +"camel-case": "^3.0.0", +"css": "^2.2.3", +"cssstyle": "^0.3.1", +"emotion": "^9.2.9", +"emotion-server": "^9.2.9" + } +} } }, "@patternfly/react-icons": { @@ -1481,16 +1509,9 @@ } }, "@patternfly/react-styles": { - "version": "3.7.14", - "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.14.tgz";, - "integrity": "sha512-NVwbPP9JroulfQgj0LOLWKP4DumArW8RrP1FB1lLOCuw13KkuAcFbLN9MSF8ZBwJ8syxGEdux5mDC3jPjsrQiw==", - "requires": { -"camel-case": "^3.0.0", -"css": "^2.2.3", -"cssstyle": "^0.3.1", -"emotion": "^9.2.9", -"emotion-server": "^9.2.9" - } + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-4.5.0.tgz";, + "integrity": "sha512-6w8mvxx/cC+yUzBKlWY8YRnavlWCTLWly1si0skleYPF1t69f3P+jeXNy39kH6+o2vXJR5MeecLrnuMV0XtKvg==" }, "@patternfly/react-table": { "version": "2.28.49", @@ -1504,6 +1525,20 @@ "@patternfly/react-tokens": "^2.8.14", "classnames": "^2.2.5", "lodash": "^4.17.15" + }, + "dependencies": { +"@patternfly/react-styles": { + "version": "3.7.14", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.14.tgz";, + "integrity": "sha512-NVwbPP9JroulfQgj0LOLWKP4DumArW8RrP1FB1lLOCuw13KkuAcFbLN9MSF8ZBwJ8syxGEdux5mDC3jPjsrQiw==", + "requires": { +"camel-case": "^3.0.0", +"css": "^2.2.3", +"cssstyle": "^0.3.1", +"emotion": "^9.2.9", +"emotion-server": "^9.2.9" + } +} } },
[qpid-dispatch] branch master updated (50e381b -> 85278bf)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 50e381b Merge pull request #792 from apache/dependabot/npm_and_yarn/console/react/browserslist-4.13.0 add 7933513 Bump rhea from 1.0.21 to 1.0.23 in /console/react new 85278bf Merge pull request #790 from apache/dependabot/npm_and_yarn/console/react/rhea-1.0.23 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/package.json | 2 +- console/react/yarn.lock| 8 2 files changed, 5 insertions(+), 5 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/01: Merge pull request #790 from apache/dependabot/npm_and_yarn/console/react/rhea-1.0.23
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 85278bfbbb03e551ca43c2e0fbebcc0398e43028 Merge: 50e381b 7933513 Author: Ernest Allen AuthorDate: Tue Jul 28 09:49:39 2020 -0400 Merge pull request #790 from apache/dependabot/npm_and_yarn/console/react/rhea-1.0.23 Bump rhea from 1.0.21 to 1.0.23 in /console/react console/react/package.json | 2 +- console/react/yarn.lock| 8 2 files changed, 5 insertions(+), 5 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated (4ee8158 -> 50e381b)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 4ee8158 Merge pull request #793 from apache/dependabot/npm_and_yarn/console/react/testing-library/react-10.4.7 add 7aa493f Bump browserslist from 4.12.0 to 4.13.0 in /console/react add 50e381b Merge pull request #792 from apache/dependabot/npm_and_yarn/console/react/browserslist-4.13.0 No new revisions were added by this update. Summary of changes: console/react/package.json | 2 +- console/react/yarn.lock| 52 ++ 2 files changed, 26 insertions(+), 28 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated (b43bf50 -> 4ee8158)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from b43bf50 Merge pull request #789 from apache/dependabot/npm_and_yarn/console/react/patternfly/react-styles-4.5.0 add 9107212 Bump @testing-library/react from 9.5.0 to 10.4.7 in /console/react add 4ee8158 Merge pull request #793 from apache/dependabot/npm_and_yarn/console/react/testing-library/react-10.4.7 No new revisions were added by this update. Summary of changes: console/react/package.json | 2 +- console/react/yarn.lock| 135 +++-- 2 files changed, 47 insertions(+), 90 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/01: Merge pull request #789 from apache/dependabot/npm_and_yarn/console/react/patternfly/react-styles-4.5.0
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit b43bf50f06879878951481412abc7c28539c1f68 Merge: 8285199 8c1fd2b Author: Ernest Allen AuthorDate: Tue Jul 28 09:47:31 2020 -0400 Merge pull request #789 from apache/dependabot/npm_and_yarn/console/react/patternfly/react-styles-4.5.0 Bump @patternfly/react-styles from 3.7.14 to 4.5.0 in /console/react console/react/package.json | 2 +- console/react/yarn.lock| 7 ++- 2 files changed, 7 insertions(+), 2 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated (8285199 -> b43bf50)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 8285199 DISPATCH-1726 Bump jest-axe from 3.4.0 to 3.5.0 in /console/react (#791) add 8c1fd2b Bump @patternfly/react-styles from 3.7.14 to 4.5.0 in /console/react new b43bf50 Merge pull request #789 from apache/dependabot/npm_and_yarn/console/react/patternfly/react-styles-4.5.0 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/package.json | 2 +- console/react/yarn.lock| 7 ++- 2 files changed, 7 insertions(+), 2 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/02: Upgrading to latest dependancy libraries
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 1a6f0a01e1286d96d73c24098905084d7869608d Author: Ernest Allen AuthorDate: Fri May 8 08:01:18 2020 -0400 Upgrading to latest dependancy libraries --- console/react/yarn.lock | 747 +++- 1 file changed, 294 insertions(+), 453 deletions(-) diff --git a/console/react/yarn.lock b/console/react/yarn.lock index 3e61ed6..a5711e5 100644 --- a/console/react/yarn.lock +++ b/console/react/yarn.lock @@ -9,16 +9,16 @@ dependencies: "@babel/highlight" "^7.8.3" -"@babel/compat-data@^7.8.6", "@babel/compat-data@^7.9.0": - version "7.9.0" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.9.0.tgz#04815556fc90b0c174abd2c0c1bb966faa036a6c"; - integrity sha512-zeFQrr+284Ekvd9e7KAX954LkapWiOmQtsfHirhxqfdlX6MEC32iRE+pqUGlYIBchdevaCwvzxWGSy/YBNI85g== +"@babel/compat-data@^7.9.0", "@babel/compat-data@^7.9.6": + version "7.9.6" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.9.6.tgz#3f604c40e420131affe6f2c8052e9a275ae2049b"; + integrity sha512-5QPTrNen2bm7RBc7dsOmcA5hbrS4O2Vhmk5XOL4zWW/zD/hV0iinpefDlkm+tBBy8kDtFaaeEvmAqt+nURAV2g== dependencies: -browserslist "^4.9.1" +browserslist "^4.11.1" invariant "^2.2.4" semver "^5.5.0" -"@babel/core@7.9.0", "@babel/core@^7.1.0", "@babel/core@^7.4.5": +"@babel/core@7.9.0": version "7.9.0" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.0.tgz#ac977b538b77e132ff706f3b8a4dbad09c03c56e"; integrity sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w== @@ -40,12 +40,34 @@ semver "^5.4.1" source-map "^0.5.0" -"@babel/generator@^7.4.0", "@babel/generator@^7.9.0", "@babel/generator@^7.9.5": - version "7.9.5" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.5.tgz#27f0917741acc41e6eaaced6d68f96c3fa9afaf9"; - integrity sha512-GbNIxVB3ZJe3tLeDm1HSn2AhuD/mVcyLDpgtLXa5tplmWrJdF/elxB56XNqCuD6szyNkDi6wuoKXln3QeBmCHQ== +"@babel/core@^7.1.0", "@babel/core@^7.4.5": + version "7.9.6" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.9.6.tgz#d9aa1f580abf3b2286ef40b6904d390904c63376"; + integrity sha512-nD3deLvbsApbHAHttzIssYqgb883yU/d9roe4RZymBCDaZryMJDbptVpEpeQuRh4BJ+SYI8le9YGxKvFEvl1Wg== dependencies: -"@babel/types" "^7.9.5" +"@babel/code-frame" "^7.8.3" +"@babel/generator" "^7.9.6" +"@babel/helper-module-transforms" "^7.9.0" +"@babel/helpers" "^7.9.6" +"@babel/parser" "^7.9.6" +"@babel/template" "^7.8.6" +"@babel/traverse" "^7.9.6" +"@babel/types" "^7.9.6" +convert-source-map "^1.7.0" +debug "^4.1.0" +gensync "^1.0.0-beta.1" +json5 "^2.1.2" +lodash "^4.17.13" +resolve "^1.3.2" +semver "^5.4.1" +source-map "^0.5.0" + +"@babel/generator@^7.4.0", "@babel/generator@^7.9.0", "@babel/generator@^7.9.6": + version "7.9.6" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.9.6.tgz#5408c82ac5de98cda0d77d8124e99fa1f2170a43"; + integrity sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ== + dependencies: +"@babel/types" "^7.9.6" jsesc "^2.5.1" lodash "^4.17.13" source-map "^0.5.0" @@ -82,27 +104,27 @@ "@babel/helper-annotate-as-pure" "^7.8.3" "@babel/types" "^7.9.0" -"@babel/helper-compilation-targets@^7.8.7": - version "7.8.7" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.7.tgz#dac1eea159c0e4bd46e309b5a1b04a66b53c1dde"; - integrity sha512-4mWm8DCK2LugIS+p1yArqvG1Pf162upsIsjE7cNBjez+NjliQpVhj20obE520nao0o14DaTnFJv+Fw5a0JpoUw== +"@babel/helper-compilation-targets@^7.8.7", "@babel/helper-compilation-targets@^7.9.6": + version "7.9.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.9.6.tgz#1e05b7ccc9d38d2f8b40b458b380a04dcfadd38a"; + integrity sha512-x2Nvu0igO0ejXzx09B/1fGBxY9NXQlBW2kZsSxCJft+KHN8t9XWzIvFxt
[qpid-dispatch] branch master updated (f3dda13 -> 3cba4bc)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from f3dda13 DISPATCH-1636: extract the peer router's version from the Open frame new 1a6f0a0 Upgrading to latest dependancy libraries new 3cba4bc Added idle timeout to avoid unresponsive console The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/src/overview/dashboard/layout.js | 29 + console/react/yarn.lock| 747 ++--- 2 files changed, 323 insertions(+), 453 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 02/02: Added idle timeout to avoid unresponsive console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 3cba4bc70831f79204b83abaa782eeb35a8ece8d Author: Ernest Allen AuthorDate: Fri May 8 08:02:12 2020 -0400 Added idle timeout to avoid unresponsive console --- console/react/src/overview/dashboard/layout.js | 29 ++ 1 file changed, 29 insertions(+) diff --git a/console/react/src/overview/dashboard/layout.js b/console/react/src/overview/dashboard/layout.js index ca8577a..e0c6831 100644 --- a/console/react/src/overview/dashboard/layout.js +++ b/console/react/src/overview/dashboard/layout.js @@ -101,6 +101,7 @@ class PageLayout extends React.PureComponent { this.inflightChartData = new inflightData(this.service); this.updateCharts(); document.title = this.props.config.title; +this.idleUnregister = idle(1000 * 60 * 60, this.handleIdleTimeout); }; componentWillUnmount = () => { @@ -109,6 +110,15 @@ class PageLayout extends React.PureComponent { this.inflightChartData.stop(); clearInterval(this.chartTimer); } +if (this.idleUnregister) { + this.idleUnregister(); +} + }; + + handleIdleTimeout = () => { +this.props.history.replace( + `${this.props.location.pathname}${this.props.location.search}` +); }; tryInitialConnect = () => { @@ -531,3 +541,22 @@ class PageLayout extends React.PureComponent { } export default PageLayout; + +const idle = (elapsed, callback) => { + let timer; + const inactive = () => { +callback(); +active(); + }; + const active = () => { +clearTimeout(timer); +timer = setTimeout(inactive, elapsed); + }; + const unload = () => { +clearTimeout(timer); +document.removeEventListener("mousemove", active); + }; + document.addEventListener("mousemove", active, true); + active(); + return unload; +}; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1604: Display correct user name in console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 5605ee0 DISPATCH-1604: Display correct user name in console 5605ee0 is described below commit 5605ee0172853819bd6078c1a12b8f9e63559ea2 Author: Ernest Allen AuthorDate: Mon Mar 16 09:37:28 2020 -0400 DISPATCH-1604: Display correct user name in console --- console/react/src/overview/dashboard/layout.js | 35 -- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/console/react/src/overview/dashboard/layout.js b/console/react/src/overview/dashboard/layout.js index 1a0eef2..5a58c37 100644 --- a/console/react/src/overview/dashboard/layout.js +++ b/console/react/src/overview/dashboard/layout.js @@ -213,13 +213,34 @@ class PageLayout extends React.PureComponent { ); //this.redirect = true; - this.props.history.replace(connectPath); - this.setState({ -activeItem, -activeGroup, -connected: true, -isConnectFormOpen: false - }); + let user = "anonymous"; + let parts = this.service.management.connection.getReceiverAddress().split("/"); + parts[parts.length - 1] = "$management"; + let router = parts.join("/"); + // get connections for router to which console is connected + this.service.management.topology.fetchEntity( +router, +"connection", +[], +(_nodeId, _entity, response) => { + response.results.some(result => { +let c = utils.flatten(response.attributeNames, result); +if (utils.isConsole(c)) { + user = c.user; + return true; +} +return false; + }); + this.props.history.replace(connectPath); + this.setState({ +user, +activeItem, +activeGroup, +connected: true, +isConnectFormOpen: false + }); +} + ); } }; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1602: Fix fomatting of console's topology traffic utilization legend. Fixed traffic utilization animation
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 2882078 DISPATCH-1602: Fix fomatting of console's topology traffic utilization legend. Fixed traffic utilization animation 2882078 is described below commit 288207873eeed49ffdcdcf5c0792b19c188966ce Author: Ernest Allen AuthorDate: Fri Mar 13 14:39:33 2020 -0400 DISPATCH-1602: Fix fomatting of console's topology traffic utilization legend. Fixed traffic utilization animation --- console/react/src/App.css | 3 +++ console/react/src/topology/traffic.js | 15 ++- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 8feecbe..3e02330 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -632,6 +632,9 @@ div.qdrChord { text-align: center; } +#traffic-congestion-svg text { + text-anchor: start; +} #arrows-expand label, #traffic-dots label, #traffic-congestion label, diff --git a/console/react/src/topology/traffic.js b/console/react/src/topology/traffic.js index ca613a3..f1dbcf5 100644 --- a/console/react/src/topology/traffic.js +++ b/console/react/src/topology/traffic.js @@ -224,9 +224,7 @@ class Congestion extends TrafficAnimation { let little = Math.min(f, t); let big = Math.max(f, t); if (little >= 0) { - let key = ["#hitpath", nodes[little].uid(srv), nodes[big].uid(srv)].join( -"-" - ); + let key = ["#hitpath", nodes[little].uid(), nodes[big].uid()].join("-"); if (!links[key]) links[key] = []; links[key].push(link); } @@ -237,8 +235,15 @@ class Congestion extends TrafficAnimation { // accumulate the colors/directions to be used for (let key in links) { let congestion = self.congestion(links[key]); - let pathId = CSS.escape(key); //key.replace(/\./g, "\\.").replace(/ /g, "\\ "); - let path = d3.select(pathId); + let path; + d3.selectAll("path.hittarget").each(function(l) { +if ( + key === `#hitpath-${l.suid}-${l.tuid}` || + key === `#hitpath-${l.tuid}-${l.suid}` +) { + path = d3.select(this); +} + }); if (path && !path.empty()) { // start the path with transparent white if (!path.attr("style")) { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1601: Changed console's address parsing logic to match qdstat. Added distribution to address table.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new e8a59ac DISPATCH-1601: Changed console's address parsing logic to match qdstat. Added distribution to address table. e8a59ac is described below commit e8a59aca89ef8f45a620b62c8af18e46127b956e Author: Ernest Allen AuthorDate: Fri Mar 13 13:42:36 2020 -0400 DISPATCH-1601: Changed console's address parsing logic to match qdstat. Added distribution to address table. --- .../react/src/overview/dataSources/addressData.js | 25 +++--- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/console/react/src/overview/dataSources/addressData.js b/console/react/src/overview/dataSources/addressData.js index ee581f2..f527f48 100644 --- a/console/react/src/overview/dataSources/addressData.js +++ b/console/react/src/overview/dataSources/addressData.js @@ -24,6 +24,7 @@ class AddressData { { title: "Address", field: "address" }, { title: "Class", field: "class" }, { title: "Phase", field: "phase" }, + { title: "Distribution", field: "distribution" }, { title: "In-proc", field: "inproc", numeric: true }, { title: "Local", field: "local", numeric: true }, { title: "Remote", field: "remote", numeric: true }, @@ -43,13 +44,8 @@ class AddressData { data => { const record = data[currentRecord.nodeId]["router.address"]; const identityIndex = record.attributeNames.indexOf("identity"); - const result = record.results.find( -r => r[identityIndex] === currentRecord.uid - ); - let address = this.service.utilities.flatten( -record.attributeNames, -result - ); + const result = record.results.find(r => r[identityIndex] === currentRecord.uid); + let address = this.service.utilities.flatten(record.attributeNames, result); address = this.service.utilities.formatAttributes( address, schema.entityTypes["router.address"] @@ -90,8 +86,8 @@ class AddressData { ); // address is now an object with attribute names as keys and their values let uid = address.identity; - let identity = this.service.utilities.identity_clean(uid); - + //let identity = this.service.utilities.identity_clean(uid); + let identity = address.identity; // if this is the 1st time we've seen this address:class if ( !addressObjs[ @@ -107,6 +103,7 @@ class AddressData { address: this.service.utilities.addr_text(identity), class: this.service.utilities.addr_class(identity), phase: addr_phase(identity), + distribution: address.distribution, inproc: address.inProcess, local: address.subscriberCount, remote: address.remoteCount, @@ -133,10 +130,7 @@ class AddressData { sumObj["in"] = addNull(sumObj["in"], address.deliveriesIngress); sumObj.out = addNull(sumObj.out, address.deliveriesEgress); sumObj.thru = addNull(sumObj.thru, address.deliveriesTransit); -sumObj.toproc = addNull( - sumObj.toproc, - address.deliveriesToContainer -); +sumObj.toproc = addNull(sumObj.toproc, address.deliveriesToContainer); sumObj.fromproc = addNull( sumObj.fromproc, address.deliveriesFromContainer @@ -174,10 +168,7 @@ class AddressData { addressFields[i - 1]["class"] + ")"; addressFields[i].title = - addressFields[i].address + - " (" + - addressFields[i]["class"] + - ")"; + addressFields[i].address + " (" + addressFields[i]["class"] + ")"; } else addressFields[i].title = addressFields[i].address; } } - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1593: Moved legend text
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new e9a7fa3 DISPATCH-1593: Moved legend text e9a7fa3 is described below commit e9a7fa38f913878b6467441351293767856054de Author: Ernest Allen AuthorDate: Fri Mar 13 11:29:14 2020 -0400 DISPATCH-1593: Moved legend text --- console/react/src/topology/legend.js | 8 +--- console/react/src/topology/svgUtils.js | 3 ++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/console/react/src/topology/legend.js b/console/react/src/topology/legend.js index 8f3d700..056aa43 100644 --- a/console/react/src/topology/legend.js +++ b/console/react/src/topology/legend.js @@ -156,16 +156,18 @@ export class Legend { return t; }); appendCircle(legendEnter, this.urlPrefix); -appendContent(legendEnter); +appendContent(legendEnter, true); appendTitle(legendEnter); legendEnter - .filter(d => d.nodeType !== "_edge" && d.nodeType !== "_topo") + //.filter(d => d.nodeType !== "_edge" && d.nodeType !== "_topo") .append("svg:text") .attr("x", 35) .attr("y", 6) .attr("class", "label") .text(function(d) { -return d.key; +if (d.nodeType === "_topo") return "Router"; +else if (d.nodeType === "_edge") return "Edge Router"; +else return d.key; }); let svgEl = document.getElementById("svglegend"); diff --git a/console/react/src/topology/svgUtils.js b/console/react/src/topology/svgUtils.js index 66ae160..be28677 100644 --- a/console/react/src/topology/svgUtils.js +++ b/console/react/src/topology/svgUtils.js @@ -102,7 +102,7 @@ export function appendCircle(g) { ); } -export function appendContent(g) { +export function appendContent(g, legend) { // show node IDs g.append("svg:text") .attr("x", d => Nodes.textOffset(d.nodeType, d.name.length)) @@ -141,6 +141,7 @@ export function appendContent(g) { return utils.isQpid(d); }) .text(function(d) { + if (legend && (d.nodeType === "_edge" || d.nodeType === "_topo")) return null; if (utils.isConsole(d)) { return "\uf108"; // icon-desktop for a console } else if (utils.isArtemis(d)) { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1593: Fixed style for console's topology legend
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new fa063e6 DISPATCH-1593: Fixed style for console's topology legend fa063e6 is described below commit fa063e68b2fa2e6188a78d8ede4eacead97c4128 Author: Ernest Allen AuthorDate: Fri Mar 13 10:52:18 2020 -0400 DISPATCH-1593: Fixed style for console's topology legend --- console/react/src/App.css | 4 1 file changed, 4 insertions(+) diff --git a/console/react/src/App.css b/console/react/src/App.css index 03270d4..8feecbe 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -613,6 +613,10 @@ text.qpid-cpp { svg#svglegend { max-width: 280px; } +#svglegend text.label { + text-anchor: start; + font-weight: normal; +} #legend-expand, #traffic-expand, #map-expand, - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1599: Added edge routers to console's Routers page. Also added edge routers to the details page
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 1e1e83f DISPATCH-1599: Added edge routers to console's Routers page. Also added edge routers to the details page 1e1e83f is described below commit 1e1e83f70b103c69f1fe619261184f406a3299f5 Author: Ernest Allen AuthorDate: Fri Mar 13 10:29:24 2020 -0400 DISPATCH-1599: Added edge routers to console's Routers page. Also added edge routers to the details page --- console/react/src/details/detailsTablePage.js | 12 +++-- console/react/src/details/routerSelect.js | 37 +++-- .../react/src/overview/dataSources/routerData.js | 63 +++--- console/react/src/overview/overviewTable.js| 15 +++--- 4 files changed, 93 insertions(+), 34 deletions(-) diff --git a/console/react/src/details/detailsTablePage.js b/console/react/src/details/detailsTablePage.js index 8d1fbc9..ce61093 100644 --- a/console/react/src/details/detailsTablePage.js +++ b/console/react/src/details/detailsTablePage.js @@ -89,6 +89,7 @@ class DetailTablesPage extends React.Component { }; componentWillUnmount = () => { +this.unmounted = true; if (this.timer) { clearInterval(this.timer); } @@ -101,11 +102,12 @@ class DetailTablesPage extends React.Component { update = () => { this.mapRows().then( rows => { -this.setState({ rows, lastUpdated: new Date() }, () => { - if (this.props.details) { -this.props.lastUpdated(this.state.lastUpdated); - } -}); +if (!this.unmounted) + this.setState({ rows, lastUpdated: new Date() }, () => { +if (this.props.details) { + this.props.lastUpdated(this.state.lastUpdated); +} + }); }, error => { console.log(`detailsTablePage: ${error}`); diff --git a/console/react/src/details/routerSelect.js b/console/react/src/details/routerSelect.js index 7658fff..f829e75 100644 --- a/console/react/src/details/routerSelect.js +++ b/console/react/src/details/routerSelect.js @@ -48,14 +48,43 @@ class RouterSelect extends React.Component { this.nodeIdList = this.props.service.management.topology.nodeIdList(); this.nameToId = {}; const routers = []; -this.nodeIdList.forEach(id => { +this.nodeIdList.forEach((id, i) => { const name = utils.nameFromId(id); this.nameToId[name] = id; routers.push(name); + // find any edge routers connected to this router + this.props.service.management.topology.fetchEntities( +id, +[{ entity: "connection", attrs: ["role", "container"] }], +ids => { + for (let rid in ids) { +const connections = utils.flattenAll(ids[rid].connection); +// add edge routers +const edgeIds = connections + .filter(c => c.role === "edge") + .map(c => ({ +name: c.container, +id: utils.idFromName(c.container, "_edge") + })); +edgeIds.forEach(e => { + const edgeName = `${name}-${e.name}`; + routers.push(edgeName); + this.nameToId[edgeName] = e.id; +}); + } + // last one? then done + if (i === this.nodeIdList.length - 1 && !this.unmounted) { +this.setState({ routers, selectedOption: routers[0] }, () => { + this.props.handleRouterSelected(this.nameToId[routers[0]]); +}); + } +} + ); }); -this.setState({ routers, selectedOption: routers[0] }, () => { - this.props.handleRouterSelected(this.nameToId[routers[0]]); -}); + }; + + componentWillUnmount = () => { +this.unmounted = true; }; render() { diff --git a/console/react/src/overview/dataSources/routerData.js b/console/react/src/overview/dataSources/routerData.js index f88aecd..1d403e0 100644 --- a/console/react/src/overview/dataSources/routerData.js +++ b/console/react/src/overview/dataSources/routerData.js @@ -67,34 +67,61 @@ class RouterData { doFetch = (page, perPage) => { return new Promise(resolve => { this.service.management.topology.fetchAllEntities( -[{ entity: "connection", attrs: ["role"] }, { entity: "router" }], +[{ entity: "connection", attrs: ["role", "container"] }, { entity: "router" }], nodes => { // we have all the data now in the nodes object let allRouterFields = []; + const lastNode = Object.keys(nodes)[Object.keys(nodes).length - 1]; for (let node in n
[qpid-dispatch] branch master updated: DISPATCH-1600: Prevent console crash when background map is displayed.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 912e4ab DISPATCH-1600: Prevent console crash when background map is displayed. 912e4ab is described below commit 912e4abdad39e439b681e9b37285f2ebc9252757 Author: Ernest Allen AuthorDate: Thu Mar 12 20:45:21 2020 -0400 DISPATCH-1600: Prevent console crash when background map is displayed. --- console/react/src/topology/map.js| 2 +- console/react/src/topology/topologyViewer.js | 220 +-- 2 files changed, 108 insertions(+), 114 deletions(-) diff --git a/console/react/src/topology/map.js b/console/react/src/topology/map.js index 5e3137e..e04504d 100644 --- a/console/react/src/topology/map.js +++ b/console/react/src/topology/map.js @@ -138,7 +138,7 @@ export class BackgroundMap { .attr("height", height) .attr("fill", "#FFF"); -if (this.options.show) { +if (this.options.show && this.zoom) { this.svg.call(this.zoom).on("dblclick.zoom", null); } } diff --git a/console/react/src/topology/topologyViewer.js b/console/react/src/topology/topologyViewer.js index f7e400f..ddd7516 100644 --- a/console/react/src/topology/topologyViewer.js +++ b/console/react/src/topology/topologyViewer.js @@ -367,121 +367,115 @@ class TopologyViewer extends Component { // initialize the nodes and links array from the QDRService.topology._nodeInfo object init = () => { return new Promise((resolve, reject) => { - if (this.mounted) { -const { width, height } = getSizes("topology"); -this.width = width; -this.height = height; -if (this.width < 768) { - const legendOptions = this.state.legendOptions; - legendOptions.map.open = false; - legendOptions.map.show = false; - this.setState({ legendOptions }); -} -let nodeInfo = this.topology.nodeInfo(); -let nodeCount = Object.keys(nodeInfo).length; - -this.mouseover_node = null; -this.selected_node = null; -this.createSvg(); - -// read the map data from the data file and build the map layer -if (this.backgroundMap) { - this.backgroundMap.init(this, this.svg, this.width, this.height).then(() => { -this.forceData.nodes.saveLonLat(this.backgroundMap); - this.backgroundMap.setMapOpacity(this.state.legendOptions.map.show); - }); -} -this.traffic.remove(); -if (this.state.legendOptions.traffic.dots) - this.traffic.addAnimationType( -"dots", -separateAddresses, -Nodes.radius("inter-router") - ); -if (this.state.legendOptions.traffic.congestion) - this.traffic.addAnimationType( -"congestion", -separateAddresses, -Nodes.radius("inter-router") - ); - -// mouse event vars -this.mousedown_node = null; - -this.forceData.nodes.initialize(nodeInfo, this.width, this.height, localStorage); -this.forceData.links.initialize( - nodeInfo, - this.forceData.nodes, - this.separateContainers, - [], - this.height, - localStorage + const { width, height } = getSizes("topology"); + this.width = width; + this.height = height; + if (this.width < 768) { +const legendOptions = this.state.legendOptions; +legendOptions.map.open = false; +legendOptions.map.show = false; +this.setState({ legendOptions }); + } + let nodeInfo = this.topology.nodeInfo(); + let nodeCount = Object.keys(nodeInfo).length; + + this.mouseover_node = null; + this.selected_node = null; + this.createSvg(); + // read the map data from the data file and build the map layer + this.backgroundMap.init(this, this.svg, this.width, this.height).then(() => { +this.backgroundMap.setMapOpacity(this.state.legendOptions.map.show); +if (this.state.legendOptions.map.show) this.backgroundMap.restartZoom(); +this.forceData.nodes.saveLonLat(this.backgroundMap); +this.forceData.nodes.savePositions(); + }); + this.traffic.remove(); + if (this.state.legendOptions.traffic.dots) +this.traffic.addAnimationType( + "dots", + separateAddresses, + Nodes.radius("inter-router") ); - -this.force = d3.layout - .force() - .nodes(this.forceData.nodes.nodes) - .links(this.forceData.links.links) - .size([this.width, this.height]) - .linkDistance(d => { -
[qpid-dispatch] branch master updated: DISPATCH-1592: Grey out unreachable routers. Added ability to suppress notification popups. Set browser window title.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 681c330 DISPATCH-1592: Grey out unreachable routers. Added ability to suppress notification popups. Set browser window title. 681c330 is described below commit 681c330c172595507457215b9bd3253dfcdd5181 Author: Ernest Allen AuthorDate: Thu Mar 12 19:36:08 2020 -0400 DISPATCH-1592: Grey out unreachable routers. Added ability to suppress notification popups. Set browser window title. --- console/react/src/App.css | 24 ++ console/react/src/common/DropdownMenu.js | 15 +++- console/react/src/common/amqp/connection.js| 20 +++-- console/react/src/common/amqp/topology.js | 5 ++ console/react/src/common/contextMenuComponent.js | 5 ++ console/react/src/overview/dashboard/layout.js | 19 - .../src/overview/dashboard/notificationDrawer.js | 2 +- console/react/src/topology/svgUtils.js | 3 +- console/react/src/topology/topoUtils.js| 20 + console/react/src/topology/topologyViewer.js | 96 -- 10 files changed, 154 insertions(+), 55 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 7c25676..03270d4 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -82,9 +82,16 @@ g.selected line { .link { stroke: #000; } +.link.dropped { + stroke: #88; + opacity: 0.25; +} .topology-header path.link { stroke: #fff; } +.topology-header ul.context-menu.layout-dropdown { + right: 0; +} #topologyPage, #messageFlowPage { @@ -545,7 +552,20 @@ circle.node.route-container { circle.node.edge.multiple { fill: #e0e0ff; } +circle.node.dropped, +circle.node.normal.in.dropped, +circle.node.normal.out.dropped { + fill: #f0f0f0; + stroke: #dd; + stroke-dasharray: 5 5; +} +circle.node.inter-router.dropped { + fill: #f0f0f0; +} +circle.node.dropped + text { + stroke: #dd; +} text.console, text.on-demand, text.normal, @@ -1504,3 +1524,7 @@ button.dropdown-panel-toggle.pf-c-accordion__toggle span.pf-c-accordion__toggle- .node-name { text-decoration: underline; } + +.menu-item-icon { + padding-right: 0.5em; +} diff --git a/console/react/src/common/DropdownMenu.js b/console/react/src/common/DropdownMenu.js index 5f58b9d..9d82827 100644 --- a/console/react/src/common/DropdownMenu.js +++ b/console/react/src/common/DropdownMenu.js @@ -27,7 +27,9 @@ class DropdownMenu extends Component { handleDropdownLogout: PropTypes.func.isRequired, isConnected: PropTypes.func.isRequired, handleContextHide: PropTypes.func.isRequired, -parentClass: PropTypes.string.isRequired +parentClass: PropTypes.string.isRequired, +handleSuppress: PropTypes.func.isRequired, +suppress: PropTypes.any.isRequired }; constructor(props) { super(props); @@ -40,6 +42,12 @@ class DropdownMenu extends Component { title: "Logout", action: this.logout, enabled: this.isLoggedIn + }, + { +title: "Suppress notifications", +action: this.suppress, +enabled: () => true, +suppressIcon: true } ]; } @@ -48,6 +56,10 @@ class DropdownMenu extends Component { this.props.handleDropdownLogout(); }; + suppress = () => { +this.props.handleSuppress(); + }; + isLoggedIn = () => { return this.props.isConnected(); }; @@ -64,6 +76,7 @@ class DropdownMenu extends Component { contextEventPosition={[-1, -1]} // show in-place handleContextHide={this.props.handleContextHide} menuItems={this.contextMenuItems} + suppress={this.props.suppress} parentClass={this.props.parentClass} /> ) diff --git a/console/react/src/common/amqp/connection.js b/console/react/src/common/amqp/connection.js index 773810e..748e647 100644 --- a/console/react/src/common/amqp/connection.js +++ b/console/react/src/common/amqp/connection.js @@ -357,14 +357,18 @@ class ConnectionManager { var _correlationId = this.correlator.corr(); var self = this; return new Promise((resolve, reject) => { - self.correlator.register(_correlationId, resolve, reject); - self.sender.send({ -body: body, -to: to, -reply_to: self.receiver.remote.attach.source.address, -correlation_id: _correlationId, -application_properties: application_properties - }); + try { +self.correlator.register(_correlationId, resolve, reject); +self.sender.send({ + body: body, + to: to, + reply_to: self.receiver.remote.attach.source.address, + correlation_id: _correlationId, + application_properties: application_pro
[qpid-dispatch] branch master updated: DISPATCH-1596 Avoid using 'await' in console tests. Use Promise instead.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new fdf6ecf DISPATCH-1596 Avoid using 'await' in console tests. Use Promise instead. fdf6ecf is described below commit fdf6ecf65ed9a7e6c411c9e6b41f5930cc12a6aa Author: Ernest Allen AuthorDate: Thu Mar 12 09:20:12 2020 -0400 DISPATCH-1596 Avoid using 'await' in console tests. Use Promise instead. --- console/react/src/chord/chordPage.test.js | 15 +-- console/react/src/chord/chordViewer.test.js| 55 +- console/react/src/details/createTablePage.test.js | 59 ++- console/react/src/details/deleteEntity.test.js | 53 - console/react/src/details/detailsTablePage.test.js | 37 +++ console/react/src/details/entitiesPage.test.js | 47 console/react/src/details/entityList.test.js | 43 .../src/overview/dashboard/dashboardPage.test.js | 13 +-- .../src/overview/dashboard/inflightChart.test.js | 13 +-- .../src/overview/dashboard/throughputChart.test.js | 19 ++-- console/react/src/overview/overviewPage.test.js| 34 +++--- console/react/src/serviceTest.js | 9 +- console/react/src/topology/topologyViewer.test.js | 118 ++--- tests/system_tests_console.py | 2 +- 14 files changed, 267 insertions(+), 250 deletions(-) diff --git a/console/react/src/chord/chordPage.test.js b/console/react/src/chord/chordPage.test.js index 71c028d..0d6411f 100644 --- a/console/react/src/chord/chordPage.test.js +++ b/console/react/src/chord/chordPage.test.js @@ -22,13 +22,14 @@ import { render } from "@testing-library/react"; import { service, login } from "../serviceTest"; import ChordPage from "./chordPage"; -it("renders the ChordPage", async () => { - await login(); - expect(service.management.connection.is_connected()).toBe(true); +it("renders the ChordPage", () => { + login(() => { +expect(service.management.connection.is_connected()).toBe(true); - const props = { -service - }; +const props = { + service +}; - render(); +render(); + }); }); diff --git a/console/react/src/chord/chordViewer.test.js b/console/react/src/chord/chordViewer.test.js index 2de8fa0..ab5747b 100644 --- a/console/react/src/chord/chordViewer.test.js +++ b/console/react/src/chord/chordViewer.test.js @@ -23,7 +23,7 @@ import { service, login, TEST_PORT } from "../serviceTest"; import { LocalStorageMock } from "@react-mock/localstorage"; import ChordViewer from "./chordViewer"; -it("renders the ChordViewer component", async () => { +it("renders the ChordViewer component", () => { const props = { service }; @@ -31,36 +31,37 @@ it("renders the ChordViewer component", async () => { if (!TEST_PORT) { console.log("using mock service"); } - await login(); - expect(service.management.connection.is_connected()).toBe(true); + login(async () => { +expect(service.management.connection.is_connected()).toBe(true); - const { getByLabelText } = render( - - - - ); +const { getByLabelText } = render( + + + +); - // make sure it rendered the component - const pfTopologyView = getByLabelText("chord-viewer"); - expect(pfTopologyView).toBeInTheDocument(); +// make sure it rendered the component +const pfTopologyView = getByLabelText("chord-viewer"); +expect(pfTopologyView).toBeInTheDocument(); - // make sure it created the svg - expect(getByLabelText("chord-svg")).toBeInTheDocument(); +// make sure it created the svg +expect(getByLabelText("chord-svg")).toBeInTheDocument(); - const optionsButton = getByLabelText("button-for-Options"); - fireEvent.click(optionsButton); +const optionsButton = getByLabelText("button-for-Options"); +fireEvent.click(optionsButton); - // turn on show by address - const addressButton = getByLabelText("show by address"); - fireEvent.click(addressButton); +// turn on show by address +const addressButton = getByLabelText("show by address"); +fireEvent.click(addressButton); - // after 1 update period, the B chord should be in the svg - await waitForElement(() => getByLabelText("B")); +// after 1 update period, the B chord should be in the svg +await waitForElement(() => getByLabelText("B")); + }); }); diff --git a/console/react/src/details/createTablePage.test.js b/console/react/src/details/createTablePage.test.js index 28c4a07..bf79491 100644 --- a/console/react/src/details/createTablePage.te
[qpid-dispatch] branch master updated: DISPATCH-1588 Use router.node.index to determine the correct value in the ingressHistogram for an ingress router.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new cdc047f DISPATCH-1588 Use router.node.index to determine the correct value in the ingressHistogram for an ingress router. cdc047f is described below commit cdc047ff62c7c9ca0268fbc4c2b35fe5a9fd1ef3 Author: Ernest Allen AuthorDate: Thu Mar 5 09:49:28 2020 -0500 DISPATCH-1588 Use router.node.index to determine the correct value in the ingressHistogram for an ingress router. --- console/react/src/chord/data.js | 9 - 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/console/react/src/chord/data.js b/console/react/src/chord/data.js index 014d40c..35689f3 100644 --- a/console/react/src/chord/data.js +++ b/console/react/src/chord/data.js @@ -104,17 +104,16 @@ class ChordData { for (let nodeId in results) { // get a map of router ids to index into ingressHistogram for the links for this router. // each routers has a different order for the routers -let ingressRouters = []; let routerNode = results[nodeId]["router.node"]; if (!routerNode) { continue; } -let idIndex = routerNode.attributeNames.indexOf("id"); // ingressRouters is an array of router names in the same order // that the ingressHistogram values will be in -for (let i = 0; i < routerNode.results.length; i++) { - ingressRouters.push(routerNode.results[i][idIndex]); -} +let ingressRouters = self.QDRService.utilities + .flattenAll(routerNode) + .sort((a, b) => (a.index < b.index ? -1 : a.index > b.index ? 1 : 0)) + .map(n => n.id); // the name of the router we are working on let egressRouter = self.QDRService.utilities.nameFromId(nodeId); // loop through the router links for this router looking for - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1587 Escape link ids in case they contain special characters
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 50a4b68 DISPATCH-1587 Escape link ids in case they contain special characters 50a4b68 is described below commit 50a4b68215bb20f9bf9362b10ea658a3ddaa30fe Author: Ernest Allen AuthorDate: Wed Mar 4 16:28:41 2020 -0500 DISPATCH-1587 Escape link ids in case they contain special characters --- console/react/src/topology/topoUtils.js | 12 +--- console/react/src/topology/traffic.js | 9 +++-- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/console/react/src/topology/topoUtils.js b/console/react/src/topology/topoUtils.js index a3ed52c..9acaa4b 100644 --- a/console/react/src/topology/topoUtils.js +++ b/console/react/src/topology/topoUtils.js @@ -255,7 +255,7 @@ export function connectionPopupHTML(d, nodeInfo) { export function getSizes(id) { const gap = 5; - const sel = d3.select(`#${id}`); + const sel = d3.select(CSS.escape(`#${id}`)); if (!sel.empty()) { const brect = sel.node().getBoundingClientRect(); return { width: brect.width - gap, height: brect.height - gap }; @@ -331,7 +331,10 @@ function getNearestRouter(node, nodes, links) { if (link) { node.highlighted = true; link.highlighted = true; - d3.select(`path[id='hitpath-${link.uid()}']`).classed("highlighted", true); + d3.select(CSS.escape(`path[id='hitpath-${link.uid()}']`)).classed( +"highlighted", +true + ); } } return node; @@ -361,7 +364,10 @@ export function nextHopHighlight(selected_node, d, nodes, links, nodeInfo) { selected_node, (link, fnode, tnode) => { link.highlighted = true; - d3.select(`path[id='hitpath-${link.uid()}']`).classed("highlighted", true); + d3.select(CSS.escape(`path[id='hitpath-${link.uid()}']`)).classed( +"highlighted", +true + ); fnode.highlighted = true; tnode.highlighted = true; } diff --git a/console/react/src/topology/traffic.js b/console/react/src/topology/traffic.js index 14fc172..ca613a3 100644 --- a/console/react/src/topology/traffic.js +++ b/console/react/src/topology/traffic.js @@ -237,7 +237,7 @@ class Congestion extends TrafficAnimation { // accumulate the colors/directions to be used for (let key in links) { let congestion = self.congestion(links[key]); - let pathId = key.replace(/\./g, "\\.").replace(/ /g, "\\ "); + let pathId = CSS.escape(key); //key.replace(/\./g, "\\.").replace(/ /g, "\\ "); let path = d3.select(pathId); if (path && !path.empty()) { // start the path with transparent white @@ -474,12 +474,17 @@ class Dots extends TrafficAnimation { let foreIndex = 0; for (let h = 0; h < hop.length; h++) { let ahop = hop[h]; -let pathId = id.replace(/\./g, "\\.").replace(/ /g, "\\ "); +let pathId = CSS.escape(id); //id.replace(/\./g, "\\.").replace(/ /g, "\\ "); +/* let flowId = id.replace(/\./g, "").replace(/ /g, "") + "-" + this.addressIndex(ahop.address) + (ahop.back ? "b" : ""); + */ +let flowId = CSS.escape( + `${id}-${this.addressIndex(ahop.address)}${ahop.back ? "b" : ""}` +); let path = d3.select("#path" + pathId); if (!path.empty()) { if (ahop.back) { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1474 Ensure all inter-router links are included in the console's traffic view
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 9a6eda8 DISPATCH-1474 Ensure all inter-router links are included in the console's traffic view 9a6eda8 is described below commit 9a6eda8fd2103afc7af225f08b5d81643c56c63e Author: Ernest Allen AuthorDate: Wed Dec 11 17:36:31 2019 -0500 DISPATCH-1474 Ensure all inter-router links are included in the console's traffic view --- console/react/src/topology/traffic.js | 631 -- 1 file changed, 379 insertions(+), 252 deletions(-) diff --git a/console/react/src/topology/traffic.js b/console/react/src/topology/traffic.js index 4b4caa8..14fc172 100644 --- a/console/react/src/topology/traffic.js +++ b/console/react/src/topology/traffic.js @@ -24,18 +24,16 @@ import { nextHop } from "./topoUtils.js"; import { utils } from "../common/amqp/utilities.js"; const transitionDuration = 1000; -//const CHORDFILTERKEY = "chordFilter"; export class Traffic { // eslint-disable-line no-unused-vars - constructor($scope, QDRService, converter, radius, topology, types) { + constructor($scope, QDRService, converter, radius, topology, types, addressesChanged) { this.QDRService = QDRService; +this.addressesChanged = addressesChanged; this.types = []; this.viss = []; this.topology = topology; // contains the list of router nodes this.$scope = $scope; -this.addresses = $scope.state.legendOptions.traffic.addresses; -this.addressColors = $scope.state.legendOptions.traffic.addressColors; // internal variables this.interval = null; // setInterval handle types.forEach( @@ -43,7 +41,7 @@ export class Traffic { this.addAnimationType(t, converter, radius); }.bind(this) ); -// called by angular when mouse enters one of the address legends +// called when mouse enters one of the address legends this.$scope.enterLegend = address => { // fade all flows that aren't for this address this.fadeOtherAddresses(address); @@ -72,6 +70,7 @@ export class Traffic { // start updating the traffic data start() { this.stop(); +this.setup(); this.doUpdate(); this.interval = setInterval(this.doUpdate.bind(this), transitionDuration); } @@ -99,10 +98,44 @@ export class Traffic { } this.start(); } + // set the data needed for each animation + setup() { +this.viss.forEach(v => v.setup()); + } // called periodically to refresh the traffic flow doUpdate() { +if (!this.interval) return; this.viss.forEach(v => v.doUpdate()); } + + setTopology(topology) { +this.topology = topology; + } + + getAddressColors(service, converter) { +return Dots.getAddressColors(service, converter); + } + + updateAddressColors(address, checked) { +if (addressColors[address]) { + addressColors[address].checked = checked; +} +this.updateDots(); + } + + updateDots() { +const dots = this.viss.find(v => v.type === "dots"); +if (dots) { + const excludedAddresses = Object.keys(addressColors).filter( +address => !addressColors[address].checked + ); + dots.updateAddresses(excludedAddresses); +} + } + + addressColors() { +return addressColors; + } } /* Base class for congestion and dots visualizations */ @@ -129,6 +162,7 @@ class TrafficAnimation { } } +const STEPS = 6; /* Color the links between router to show how heavily used the links are. */ class Congestion extends TrafficAnimation { constructor(traffic) { @@ -136,6 +170,18 @@ class Congestion extends TrafficAnimation { this.type = "congestion"; this.stopped = false; } + + setup() { +this.traffic.QDRService.management.topology.addUpdateEntities([ + { +entity: "router.link" + }, + { +entity: "connection" + } +]); + } + findResult(node, entity, attribute, value) { let attrIndex = node[entity].attributeNames.indexOf(attribute); if (attrIndex >= 0) { @@ -147,105 +193,106 @@ class Congestion extends TrafficAnimation { } return null; } + doUpdate() { this.stopped = false; let self = this; -this.traffic.QDRService.management.topology.ensureAllEntities( - [ -{ - entity: "router.link", - force: true -}, -{ - entity: "connection" -} - ], - function() { -// animation was stopped between the ensureAllEntities request and the response -if (self.stopped) return; -let links = {}; -let nodeInfo = self.traffic.QDRService.management.topology.nodeInfo(); -const nodes = self.tr
[qpid-dispatch] branch master updated: DISPATCH-1507 Add Expand/Collapse to group of edge router in console's topology view
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 12d342f DISPATCH-1507 Add Expand/Collapse to group of edge router in console's topology view 12d342f is described below commit 12d342f75a50ddd451611c0edbeb1afd26c201a2 Author: Ernest Allen AuthorDate: Wed Dec 11 17:34:45 2019 -0500 DISPATCH-1507 Add Expand/Collapse to group of edge router in console's topology view --- console/react/src/topology/clientInfoComponent.js | 268 +- 1 file changed, 162 insertions(+), 106 deletions(-) diff --git a/console/react/src/topology/clientInfoComponent.js b/console/react/src/topology/clientInfoComponent.js index e782c38..de3dc72 100644 --- a/console/react/src/topology/clientInfoComponent.js +++ b/console/react/src/topology/clientInfoComponent.js @@ -18,7 +18,7 @@ under the License. */ import React, { Component } from "react"; -import { Modal } from "@patternfly/react-core"; +import { Button, Modal } from "@patternfly/react-core"; import { Table, TableHeader, @@ -32,6 +32,7 @@ import DetailsTable from "./clientInfoDetailsComponent"; import { utils } from "../common/amqp/utilities.js"; const { queue } = require("d3-queue"); +const PERPAGE = 10; class ClientInfoComponent extends Component { constructor(props) { super(props); @@ -79,22 +80,18 @@ class ClientInfoComponent extends Component { compoundParent: 3, cells: [ { - title: ( - - ), + title: "", props: { colSpan: 4, className: "pf-m-no-padding" } } ] } ] }; -this.timer = null; this.rates = {}; -this.expandedRows = new Set(); this.d = this.props.d; // the node object this.dStart = 0; -this.dStop = Math.min(this.d.normals.length, 10); +this.dStop = Math.min(this.d.normals.length, PERPAGE); this.cachedInfo = []; this.updateTimer = null; @@ -128,6 +125,7 @@ class ClientInfoComponent extends Component { "capacity" ], cols: ["linkType", "addr", "settleRate", "delayed1", "delayed10", "usage"], +columns: ["Link type", "Addr", "Settle rate", "Delayed1", "Delayed10", "Usage"], calc: { addr: link => { return utils.addr_text(link.owningAddr); @@ -150,72 +148,72 @@ class ClientInfoComponent extends Component { cols: ["addr", "direction", "containerId"] }, addressFields: { -cols: ["prefix", "distribution"] - } +cols: ["name", "distribution", "deliveriesEgress"] + }, + clients: [ +"Container", +"Encrypted", +"Host", +{ + title: "Links", + cellTransforms: [compoundExpand] +} + ], + edgeRouters: [ +"Name", +"Connections", +"Accepted rate", +{ + title: "Addresses", + cellTransforms: [compoundExpand] +}, +"" + ], + edgeColumns: ["Name", "Distribution", "Deliveries egress"] }; } componentDidMount = () => { -this.timer = setInterval(this.getTooltip, 5000); -this.getTooltip(); this.doUpdateDetail(); }; componentWillUnmount = () => { this.unmounted = true; -if (this.timer) { - clearInterval(this.timer); - this.timer = null; -} if (this.updateTimer) { clearTimeout(this.updateTimer); this.updateTimer = null; } }; - getTooltip = () => { -this.props.d.toolTip(this.props.topology, true).then(toolTip => { - if (this.unmounted) return; - this.setState({ toolTip }); -}); - }; - // called for each expanded row to get further details about the edge router - moreInfo = (id, infoPerId) => { -let nodeId = utils.idFromName(id, "_edge"); -this.props.topology.fetchEntities( - nodeId, - [ -{ entity: "router.link", attrs: [] }, -{ - entity: "linkRoute", - attrs: this.fields.linkRouteFields.cols -}, -{ - entity: "autoLink", - attrs: this.fields.autoLinkFields.cols -}, -{ entity: "address", attrs: [] } - ], - results => { -// save the results for each entity requested -
[qpid-dispatch] branch master updated: DISPATCH-1358 Fixed font on topology legend
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 8d5e08d DISPATCH-1358 Fixed font on topology legend 8d5e08d is described below commit 8d5e08dbbb9c88ece3c5ea6590f7349c6c611655 Author: Ernest Allen AuthorDate: Tue Dec 3 12:43:47 2019 -0500 DISPATCH-1358 Fixed font on topology legend --- console/react/src/App.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index f9bf8c3..f97bd66 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -554,7 +554,7 @@ text.on-demand, text.normal, text.edge, text.address-checkbox { - font-family: FontAwesome; + font-family: FontAwesome !important; font-weight: normal; font-size: 16px; } @@ -1479,7 +1479,7 @@ button.dropdown-panel-toggle.pf-c-accordion__toggle span.pf-c-accordion__toggle- border-bottom: 1px solid black; } -.pf-c-modal-box.pf-m-sm * { +.pf-c-modal-box.pf-m-sm *:not(.fas) { font-family: RedHatDisplay; } - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1358 Tweaks to dashboard page
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 0123ba0 DISPATCH-1358 Tweaks to dashboard page 0123ba0 is described below commit 0123ba02accf65a026a0cecccd4aef131699bfbc Author: Ernest Allen AuthorDate: Tue Dec 3 12:31:27 2019 -0500 DISPATCH-1358 Tweaks to dashboard page --- console/react/src/App.css | 15 - .../src/overview/dashboard/activeAddressesCard.js | 65 ++ .../react/src/overview/dashboard/dashboardPage.js | 4 +- .../overview/dashboard/delayedDeliveriesCard.js| 10 ++-- .../src/overview/dashboard/throughputChart.js | 2 +- 5 files changed, 60 insertions(+), 36 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index f7511a8..f9bf8c3 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -369,8 +369,14 @@ div.state-container button.pf-c-clipboard-copy__group-copy { font-size: 1.125em; margin-bottom: 1em; } -.fill-card { - width: 100%; + +/* +#delayedDeliveries { + width: 80%; +} +*/ +#activeAddresses { + min-width: 28%; } .qdrTopology, @@ -899,9 +905,10 @@ div.qdrChord .legend-text { } .deliveries-title { - white-space: nowrap; + /* white-space: nowrap; */ font-size: 20px; color: #888; + min-width: 9em; } .duration-tabs { @@ -932,6 +939,8 @@ div.qdrChord .legend-text { color: #888; white-space: nowrap; padding-right: 2em; + max-width: 12em; + min-width: 12em; } .toolbar-pagination { diff --git a/console/react/src/overview/dashboard/activeAddressesCard.js b/console/react/src/overview/dashboard/activeAddressesCard.js index f1c509d..937faf5 100644 --- a/console/react/src/overview/dashboard/activeAddressesCard.js +++ b/console/react/src/overview/dashboard/activeAddressesCard.js @@ -28,7 +28,7 @@ class ActiveAddressesCard extends React.Component { super(props); this.state = { lastUpdate: new Date(), - columns: ["Address", "Class", "Settle rate"], + columns: ["Address", "In", "Out", "Settle rate"], rows: [] }; } @@ -46,33 +46,51 @@ class ActiveAddressesCard extends React.Component { updateData = () => { this.props.service.management.topology.fetchAllEntities( - { -entity: "router.link", -attrs: ["settleRate", "linkType", "linkDir", "owningAddr"] - }, + [ +{ + entity: "router.link", + attrs: ["settleRate", "linkType", "linkDir", "owningAddr"] +}, +{ + entity: "router.address", + attrs: ["identity", "deliveriesIngress", "deliveriesEgress"] +} + ], results => { if (!this.mounted) return; let active = {}; for (let id in results) { - const aresult = results[id]["router.link"]; - for (let i = 0; i < aresult.results.length; i++) { -const result = this.props.service.utilities.flatten( - aresult.attributeNames, - aresult.results[i] + console.log(id); + const linkData = results[id]["router.link"]; + const addressData = results[id]["router.address"]; + const addresses = this.props.service.utilities.flattenAll(addressData); + + for (let i = 0; i < linkData.results.length; i++) { +const link = this.props.service.utilities.flatten( + linkData.attributeNames, + linkData.results[i] ); -if (result.linkType === "endpoint" && result.linkDir === "in") { - if ( -parseInt(result.settleRate) > 0 && -result.owningAddr && !result.owningAddr.startsWith("Ltemp.") - ) { -if (!active.hasOwnProperty[result.owningAddr]) { - active[result.owningAddr] = { -addr: this.props.service.utilities.addr_text(result.owningAddr), -cls: this.props.service.utilities.addr_class(result.owningAddr), +if (link.linkType === "endpoint") { + if (link.owningAddr && !link.owningAddr.startsWith("Ltemp.")) { +if (!active[link.owningAddr]) { + console.log(`initializing active for ${link.owningAddr}`); + active[link.owningAddr] = { +addr: this.props.service.utilities.addr_text(link.owningAddr), +in: 0, +out: 0, settleRate:
[qpid-dispatch] branch master updated: DISPATCH-1358 Change link color per request from UXG
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 0f8ee09 DISPATCH-1358 Change link color per request from UXG 0f8ee09 is described below commit 0f8ee090b41c6ed9c31aee54fafdc23c690cb30c Author: Ernest Allen AuthorDate: Tue Dec 3 08:56:53 2019 -0500 DISPATCH-1358 Change link color per request from UXG --- console/react/src/App.css | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index bb44280..f7511a8 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -914,8 +914,8 @@ div.qdrChord .legend-text { } .duration-tabs li.selected { - border-bottom: 4px solid blue; - color: blue; + border-bottom: 4px solid #0066cc; + color: #0066cc; } .overview-charts-page .pf-c-table caption { @@ -964,7 +964,7 @@ div.qdrChord .legend-text { .overview-header.details .pf-c-breadcrumb__item.link-button { border: 0; background-color: transparent; - color: blue; + color: #0066cc; font-weight: bold; white-space: nowrap; padding-left: 0; @@ -989,7 +989,7 @@ div.qdrChord .legend-text { } .link-dir-out { - color: blue; + color: #0066cc; } .overview-table tr { @@ -1077,7 +1077,7 @@ div.details-table ul.entities-list { } .entities-list li.selected { - border-left: 2px solid blue; + border-left: 2px solid #0066cc; background-color: #eaeaea; } @@ -1243,7 +1243,7 @@ span.entity-type i.link-type-router-control:before { #NotificationDrawer button.pf-m-expanded, #NotificationDrawer dd.pf-m-expanded { - border-left-color: blue; + border-left-color: #0066cc; } #NotificationDrawer .panel-body { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated (2503d3e -> 76afa7d)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 2503d3e ignoring dev support files for mvn rat check new c03d822 Adding back /bin that was inadvertantly removed new 74b55ff Moving console ignores together new e646083 Updating the default title and description new 76afa7d Removing redundant LICENSE The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .gitignore | 4 +- bin/export.sh | 105 ++ .reviewboardrc => bin/find_ports.sh| 8 +- bin/grinder| 370 + bin/make_standalone_console_tarball.sh | 107 ++ .../management/__init__.py => bin/rebuild.sh | 13 +- bin/record-coverage.sh | 80 + config.sh => bin/test.sh | 30 +- console/react/LICENSE | 201 --- console/react/public/manifest.json | 4 +- 10 files changed, 704 insertions(+), 218 deletions(-) create mode 100755 bin/export.sh copy .reviewboardrc => bin/find_ports.sh (72%) mode change 100644 => 100755 create mode 100755 bin/grinder create mode 100755 bin/make_standalone_console_tarball.sh copy python/qpid_dispatch_internal/management/__init__.py => bin/rebuild.sh (79%) mode change 100644 => 100755 create mode 100755 bin/record-coverage.sh copy config.sh => bin/test.sh (56%) delete mode 100644 console/react/LICENSE - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/04: Adding back /bin that was inadvertantly removed
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit c03d8227eda88cf979575fc44bcba1a076df8872 Author: Ernest Allen AuthorDate: Wed Nov 27 12:05:34 2019 -0500 Adding back /bin that was inadvertantly removed --- bin/export.sh | 105 ++ bin/find_ports.sh | 28 +++ bin/grinder| 370 + bin/make_standalone_console_tarball.sh | 107 ++ bin/rebuild.sh | 31 +++ bin/record-coverage.sh | 80 +++ bin/test.sh| 43 7 files changed, 764 insertions(+) diff --git a/bin/export.sh b/bin/export.sh new file mode 100755 index 000..539af90 --- /dev/null +++ b/bin/export.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +# +# 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. +# + +# export.sh - Create a release archive. + +# run this script like this - +# Before executing this script, change directory to the folder in which this file is located, for example. +# 1. cd /home/jdoe/qpid-dispatch/bin +# Run the script like so - +# 2. ./export.sh +# (Example : ./export.sh /home/jdoe/ 1.5.1 +# (/home/jdoe is the folder you want the tar.gz file to be put - specify the full path) +# 1.5.1 is the tag name +# A file named qpid-dispatch-.tar.gz will be created at + +# Simply running ./export.sh will put the tar.gz file in the current folder and use the very latest createed tag + +set -e +trap "cleanup" 0 1 2 3 9 11 13 15 + +# ME=export.sh +ME=$(basename ${0}) + +SRC=$(dirname $(dirname $(readlink -f $0))) +echo Source directory=${SRC} + +usage() +{ +echo +echo "Usage: ${ME} [DIR] [TAG]" +exit 1 +} + +cleanup() +{ +trap - 0 1 2 3 9 11 13 15 +echo +[ ${WORKDIR} ] && [ -d ${WORKDIR} ] && rm -rf ${WORKDIR} +} + + +DIR=$PWD + +# This will get the latest created tag +TAG=$(git describe --tags --always) +echo Using tag ${TAG} to create archive + +## +## Allow overrides to be passed on the cmdline +## +if [ $# -gt 2 ]; then +usage +elif [ $# -ge 1 ]; then +DIR=$1 +if [ $# -eq 2 ]; then +TAG=$2 +fi +fi + +# verify the tag exists +git rev-list -1 tags/${TAG} -- >/dev/null || usage + +# mktemp command creates a temp directory for example - /tmp/tmp.k8vDddIzni +WORKDIR=$(mktemp -d) +echo Working Directory=${WORKDIR} + + +## +## Create the archive +## +( +cd ${SRC} +MTIME=$(date -d @`git log -1 --pretty=format:%ct tags/${TAG}` '+%Y-%m-%d %H:%M:%S') +VERSION=$(git show tags/${TAG}:VERSION.txt) +ARCHIVE=$DIR/qpid-dispatch-${VERSION}.tar.gz +PREFIX=qpid-dispatch-${VERSION} +[ -d ${WORKDIR} ] || mkdir -p ${WORKDIR} +git archive --format=tar --prefix=${PREFIX}/ tags/${TAG} \ +| tar -x -C ${WORKDIR} +cd ${WORKDIR} +tar -c -z \ +--owner=root --group=root --numeric-owner \ +--mtime="${MTIME}" \ +-f ${ARCHIVE} ${PREFIX} +echo Created "${ARCHIVE}" +echo Success!!! +) diff --git a/bin/find_ports.sh b/bin/find_ports.sh new file mode 100755 index 000..4c1239e --- /dev/null +++ b/bin/find_ports.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +# +# 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 +# + + +# Usage: $0 [
[qpid-dispatch] 04/04: Removing redundant LICENSE
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 76afa7d74a4330057d4c6f451e47a035e188378e Author: Ernest Allen AuthorDate: Wed Nov 27 12:10:04 2019 -0500 Removing redundant LICENSE --- console/react/LICENSE | 201 -- 1 file changed, 201 deletions(-) diff --git a/console/react/LICENSE b/console/react/LICENSE deleted file mode 100644 index 261eeb9..000 --- a/console/react/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 -http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in
[qpid-dispatch] 02/04: Moving console ignores together
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 74b55ffb35c03edb62e11b004cd0ad98333d4bf0 Author: Ernest Allen AuthorDate: Wed Nov 27 12:07:21 2019 -0500 Moving console ignores together --- .gitignore | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 448a0fb..0714987 100644 --- a/.gitignore +++ b/.gitignore @@ -18,12 +18,12 @@ tests/system_tests_handle_failover.py .history/ .tox .vscode +tools/qdmanage +tools/qdstat console/stand-alone/node_modules/ console/react/node_modules/ console/stand-alone/dist/ console/stand-alone/package-lock.json -tools/qdmanage -tools/qdstat console/react/build/ console/react/coverage/ console/react/.prettierrc - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 03/04: Updating the default title and description
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit e646083e89afc6354192d809575bb5eec68f795f Author: Ernest Allen AuthorDate: Wed Nov 27 12:09:04 2019 -0500 Updating the default title and description --- console/react/public/manifest.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/console/react/public/manifest.json b/console/react/public/manifest.json index 1f2f141..5a4ec0b 100644 --- a/console/react/public/manifest.json +++ b/console/react/public/manifest.json @@ -1,6 +1,6 @@ { - "short_name": "React App", - "name": "Create React App Sample", + "short_name": "Dispatch Console", + "name": "Console for Apache Qpid Dispatch Router", "icons": [ { "src": "favicon.ico", - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: ignoring dev support files for mvn rat check
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 2503d3e ignoring dev support files for mvn rat check 2503d3e is described below commit 2503d3e71d9e330f844332e2f214afc463fbb5d3 Author: Ernest Allen AuthorDate: Wed Nov 27 10:56:59 2019 -0500 ignoring dev support files for mvn rat check --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 341d29f..448a0fb 100644 --- a/.gitignore +++ b/.gitignore @@ -26,4 +26,5 @@ tools/qdmanage tools/qdstat console/react/build/ console/react/coverage/ - +console/react/.prettierrc +console/react/.prettierignore - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: fixing node_modules ignore for mvn rat check
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 858f684 fixing node_modules ignore for mvn rat check 858f684 is described below commit 858f684e2a7b74e7755b41313ddcf9306326a0f1 Author: Ernest Allen AuthorDate: Wed Nov 27 10:40:00 2019 -0500 fixing node_modules ignore for mvn rat check --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 9a2c2c5..341d29f 100644 --- a/.gitignore +++ b/.gitignore @@ -18,7 +18,8 @@ tests/system_tests_handle_failover.py .history/ .tox .vscode -node_modules/ +console/stand-alone/node_modules/ +console/react/node_modules/ console/stand-alone/dist/ console/stand-alone/package-lock.json tools/qdmanage - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated (ad2f665 -> 3b8b56f)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from ad2f665 Fixed typo in config.json new 848a4b6 Added license text new 3b8b56f removing unused files The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/public/app.js | 171 console/react/public/index.html | 21 - console/react/public/server.js | 5 -- 3 files changed, 20 insertions(+), 177 deletions(-) delete mode 100644 console/react/public/app.js delete mode 100644 console/react/public/server.js - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 01/02: Added license text
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 848a4b6577cad15bcb1013c69c534cf10e4e6b0f Author: Ernest Allen AuthorDate: Wed Nov 27 09:04:53 2019 -0500 Added license text --- console/react/public/index.html | 21 - 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/console/react/public/index.html b/console/react/public/index.html index 49d1072..aa39285 100644 --- a/console/react/public/index.html +++ b/console/react/public/index.html @@ -1,3 +1,22 @@ + + @@ -19,7 +38,7 @@ work correctly both with client-side routing and a non-root public URL. Learn how to configure a non-root public URL by running `npm run build`. --> -Apache Qpid Dispatch Console + You need to enable JavaScript to run this app. - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 02/02: removing unused files
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 3b8b56fc89ca86298f51a53ec92d330cf55c1684 Author: Ernest Allen AuthorDate: Wed Nov 27 09:05:20 2019 -0500 removing unused files --- console/react/public/app.js| 171 - console/react/public/server.js | 5 -- 2 files changed, 176 deletions(-) diff --git a/console/react/public/app.js b/console/react/public/app.js deleted file mode 100644 index 0fa2c52..000 --- a/console/react/public/app.js +++ /dev/null @@ -1,171 +0,0 @@ -const express = require("express"); -const app = express(); -const path = require("path"); -const bodyParser = require("body-parser"); - -app.use(bodyParser.json()); -app.use(bodyParser.urlencoded({ extended: false })); - -/** - * API - */ -// Not used at this time -app.get("/api", function(req, res) { - console.log("GET request"); - console.log(req.query); - let response = { message: "unknown get request" }; - let query = req.query; - if (query.n && query.nn) { -// get the state of router with name n from network with name nn -response = { state: 1 }; - } - res.status(200).send(response); -}); - -// handle a POST. -app.post("/api", function(req, res) { - console.log("POST request received"); - let status = 200; - let response = { message: "unable to parse request" }; - // figure out what to do based on what is in data - - // get the info that was passed in - let { what } = req.body; - if (what === "saveNetwork") { -response = saveNetwork(req.body); - } else if (what === "getState") { -response = getState(req.body); - } else { -response = { - status: 404, - response: { message: "Missing 'what' parameter in POST request" } -}; -console.log(response.message); - } - if (response.status) { -status = response.status; -response = response.response; - } - res.status(status).send(response); -}); - -const edgeDeployment = body => { - // network is an object that has a nodes array, a links array, and a network name - // nodeName is the node.Name of the router we are requesting data for - const { router } = body; - const nodeName = router.Name; - console.log(`request was for edge-deployment info for ${nodeName}`); - return { deployment: `handle edge-deployment for ${nodeName}` }; -}; - -const routerDeployment = body => { - console.log("request was for router deployment info"); - let { router } = body; - // router is the object that contains the info entered about a router - // router should contain Name, State - - // do some validation and construct the response - if (router && router.Name && router.Name !== "") { -// This is NOT really what we want to return. This is just an example. -const response = { - apiVersion: "interconnectedcloud.github.io/v1alpha1", - kind: "Interconnect", - metadata: { -name: "example-interconnect" - }, - spec: { -deploymentPlan: { - image: "quay.io/interconnectedcloud/qdrouterd:1.7.0", - role: "interior", - size: 3, - placement: "Any" -} - } -}; -return response; - } - return { status: 404, response: { message: "Unable to find router" } }; -}; - -/* -saveNetwork creates yaml that looks like the following: -Router $Name inter-router.$PROJECT.$ROUTING_SUFFIX -EdgeRouter $Name -Connect $Name $Name -# Console $Name console.$PROJECT.$ROUTING_SUFFIX -Console PVT console.skuba.127.0.0.1.nip.io -*/ const saveNetwork = body => { - console.log("request was to save current network"); - const { network } = body; - const yaml = []; - let consoleCreated = false; - network.nodes.forEach(n => { -if (n.type === "interior") { - // namespace and suffix are optional - yaml.push(`Router ${n.Name} inter-router`); - // create a console for the 1st interior router - if (!consoleCreated) { -consoleCreated = true; -yaml.push(`Console ${n.Name} console`); - } -} else if (n.type === "edgeClass") { - if (n.rows) { -n.rows.forEach(r => { - yaml.push(`EdgeRouter ${r.name}`); -}); - } -} - }); - network.links.forEach(l => { -if (l.source.type === "interior" && l.target.type === "interior") { - yaml.push(`Connect ${l.source.Name} ${l.target.Name}`); -} else if (l.target.type === "edgeClass") { - // target is an edgeClass - // push a link for each edge router in the edgeclass - const edgeClass = l.target; - edg
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Fixed typo in config.json
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new ad2f665 Fixed typo in config.json ad2f665 is described below commit ad2f665b7fa004940d22381c4bc276d3cfc0 Author: Ernest Allen AuthorDate: Wed Nov 27 08:49:48 2019 -0500 Fixed typo in config.json --- console/react/public/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/console/react/public/config.json b/console/react/public/config.json index 666f5bf..c18f88e 100644 --- a/console/react/public/config.json +++ b/console/react/public/config.json @@ -1,3 +1,3 @@ { - "title": "APACHE QPID DISAPTCH CONSOLE" + "title": "APACHE QPID DISPATCH CONSOLE" } - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Changes requested from reviews
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 4d7ba1e Changes requested from reviews 4d7ba1e is described below commit 4d7ba1eece35c3fb6dfb26328fde1c83803f9592 Author: Ernest Allen AuthorDate: Wed Nov 27 08:35:54 2019 -0500 Changes requested from reviews --- console/react/public/config.json | 2 +- console/react/src/App.css | 115 +++-- console/react/src/chord/chordPage.js | 9 +- .../throughputChart.js => chord/chordPage.test.js} | 24 ++-- console/react/src/chord/chordToolbar.js| 13 ++ console/react/src/chord/chordViewer.js | 11 +- console/react/src/chord/legendComponent.js | 110 console/react/src/chord/optionsComponent.js| 11 ++ console/react/src/chord/routersComponent.js| 48 +++ console/react/src/common/DropdownMenu.js | 8 ++ console/react/src/common/DropdownMenu.test.js | 2 + console/react/src/common/addressesComponent.js | 7 + .../react/src/common/addressesComponent.test.js| 4 +- console/react/src/common/amqp/connection.js| 10 +- console/react/src/common/amqp/correlator.js| 19 ++- console/react/src/common/connectionClose.js| 11 +- ...xtMenu.test.js => contextMenuComponent.test.js} | 0 console/react/src/common/dropdownPanel.js | 5 + console/react/src/common/qdrService.js | 2 +- console/react/src/common/tableToolbar.js | 28 ++-- console/react/src/common/updated.js| 4 +- console/react/src/details/createTablePage.js | 66 -- console/react/src/details/createTablePage.test.js | 4 +- .../react/src/details/dataSources/defaultData.js | 4 + console/react/src/details/dataSources/logsData.js | 20 +++ console/react/src/details/deleteEntity.test.js | 24 +++- console/react/src/details/detailsTablePage.js | 6 +- .../updated.js => details/emptyTablePage.js} | 30 - .../logsData.js => emptyTablePage.test.js} | 19 ++- console/react/src/details/entityListTable.js | 17 ++- console/react/src/details/routerSelect.js | 37 +++--- console/react/src/details/updateTablePage.js | 23 +++- console/react/src/overview/dashboard/alertList.js | 37 +- .../react/src/overview/dashboard/alertList.test.js | 5 +- console/react/src/overview/dashboard/chartData.js | 19 ++- .../react/src/overview/dashboard/dashboardPage.js | 2 +- .../overview/dashboard/delayedDeliveriesCard.js| 2 +- .../react/src/overview/dashboard/inflightChart.js | 5 +- console/react/src/overview/dashboard/layout.js | 3 +- .../src/overview/dashboard/notificationDrawer.js | 2 +- .../src/overview/dashboard/throughputChart.js | 2 +- .../react/src/overview/dataSources/routerData.js | 1 - console/react/src/overview/overviewTable.js| 1 + console/react/src/topology/legend.js | 24 ++-- console/react/src/topology/links.js| 33 +++-- console/react/src/topology/nodes.js| 83 +--- console/react/src/topology/topoUtils.js| 17 +-- console/react/src/topology/topologyPage.js | 4 +- console/react/src/topology/topologyViewer.js | 142 - console/react/src/topology/topologyViewer.test.js | 2 +- console/react/src/topology/traffic.js | 18 +++ console/react/src/topology/trafficComponent.js | 10 ++ 52 files changed, 578 insertions(+), 527 deletions(-) diff --git a/console/react/public/config.json b/console/react/public/config.json index 6b19668..666f5bf 100644 --- a/console/react/public/config.json +++ b/console/react/public/config.json @@ -1,3 +1,3 @@ { - "title": "Apache Qpid Dispach Console" + "title": "APACHE QPID DISAPTCH CONSOLE" } diff --git a/console/react/src/App.css b/console/react/src/App.css index e4a51a6..bb44280 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -21,84 +21,15 @@ under the License. height: 100vh; } -/* -#main-content-page-layout-manual-nav { - overflow-y: hidden; -} -*/ - .App { text-align: center; height: 100%; } -.App-logo { - animation: App-logo-spin infinite 20s linear; - height: 40vmin; - pointer-events: none; -} - -.App-header { - background-color: #282c34; - min-height: 100vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - font-size: calc(10px + 2vmin); - color: white; -} - -.App-link { - color: #61dafb; -} - -@keyframes App-logo-spin { - from { -transform: rotate(0deg); - } - to { -transform:
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: More tests
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new aea3637 More tests aea3637 is described below commit aea3637c2b6f8fb342dcb6f7687ed92e37e3bbae Author: Ernest Allen AuthorDate: Sat Nov 23 12:47:50 2019 -0500 More tests --- console/react/src/App.css | 1 + console/react/src/common/updated.js| 4 +- console/react/src/details/createEntity.js | 6 +- .../{updateEntity.js => createEntity.test.js} | 28 +++--- .../react/src/details/dataSources/routerData.js| 101 - console/react/src/details/deleteEntity.js | 35 +++ .../{createEntity.js => deleteEntity.test.js} | 27 +++--- console/react/src/details/detailsTablePage.test.js | 30 -- console/react/src/details/entityList.test.js | 4 + console/react/src/details/routerSelect.js | 26 +++--- console/react/src/details/updateEntity.js | 6 +- .../{updateEntity.js => updateEntity.test.js} | 28 +++--- console/react/src/overview/dashboard/layout.js | 4 +- console/react/src/topology/clientInfoComponent.js | 7 ++ console/react/src/topology/nodes.js| 2 +- console/react/src/topology/routerInfoComponent.js | 3 + console/react/src/topology/svgUtils.js | 2 +- console/react/src/topology/topologyViewer.js | 78 ++-- 18 files changed, 145 insertions(+), 247 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 2f0581f..e4a51a6 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -753,6 +753,7 @@ path.empty { opacity: 1; padding: 12px; font-size: 14px; + display: none; } #popover-div { diff --git a/console/react/src/common/updated.js b/console/react/src/common/updated.js index e762d8e..1813edd 100644 --- a/console/react/src/common/updated.js +++ b/console/react/src/common/updated.js @@ -28,9 +28,7 @@ class Updated extends Component { render() { return ( -{`Updated ${this.props.service.utilities.strDate( - this.props.lastUpdated -)}`} +{`Updated ${this.props.service.utilities.strDate(this.props.lastUpdated)}`} ); } diff --git a/console/react/src/details/createEntity.js b/console/react/src/details/createEntity.js index 3f5dfe2..205b37b 100644 --- a/console/react/src/details/createEntity.js +++ b/console/react/src/details/createEntity.js @@ -31,7 +31,11 @@ class CreateEntity extends React.Component { }; render() { -return Create; +return ( + +Create + +); } } diff --git a/console/react/src/details/updateEntity.js b/console/react/src/details/createEntity.test.js similarity index 62% copy from console/react/src/details/updateEntity.js copy to console/react/src/details/createEntity.test.js index 4d1fac9..d31f50d 100644 --- a/console/react/src/details/updateEntity.js +++ b/console/react/src/details/createEntity.test.js @@ -18,21 +18,21 @@ under the License. */ import React from "react"; -import { Button } from "@patternfly/react-core"; +import { render, fireEvent } from "@testing-library/react"; +import CreateEntity from "./createEntity"; -class UpdateEntity extends React.Component { - constructor(props) { -super(props); -this.state = {}; - } - - handleClick = () => { -this.props.handleEntityAction("update", this.props.record); +it("renders UpdateEntity", () => { + let buttonClicked = false; + const props = { +handleEntityAction: () => { + buttonClicked = true; +} }; - render() { -return Update; - } -} + const { getByLabelText } = render(); + const button = getByLabelText("create-entity-button"); + expect(button).toBeInTheDocument(); -export default UpdateEntity; + fireEvent.click(button); + expect(buttonClicked).toBe(true); +}); diff --git a/console/react/src/details/dataSources/routerData.js b/console/react/src/details/dataSources/routerData.js deleted file mode 100644 index 67c015e..000 --- a/console/react/src/details/dataSources/routerData.js +++ /dev/null @@ -1,101 +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 d
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: adding browserslist as a dev dependancy
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new c08ec17 adding browserslist as a dev dependancy c08ec17 is described below commit c08ec171a838ffe83f3d0f1e3529dcc578eb3fa9 Author: Ernest Allen AuthorDate: Thu Nov 21 07:53:41 2019 -0500 adding browserslist as a dev dependancy --- console/react/package.json | 5 +++-- console/react/yarn.lock| 21 - 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/console/react/package.json b/console/react/package.json index 033aebf..4ab79c5 100644 --- a/console/react/package.json +++ b/console/react/package.json @@ -45,12 +45,13 @@ ] }, "devDependencies": { -"jest-axe": "^3.2.0", -"eslint-plugin-patternfly-react": "^0.2.3", "@react-mock/localstorage": "^0.1.2", "@testing-library/jest-dom": "^4.2.3", "@testing-library/react": "^9.3.2", "body-parser": "^1.19.0", +"eslint-plugin-patternfly-react": "^0.2.3", +"browserslist": "^4.7.3", +"jest-axe": "^3.2.0", "prettier": "^1.19.1" } } diff --git a/console/react/yarn.lock b/console/react/yarn.lock index 6230861..4b449d8 100644 --- a/console/react/yarn.lock +++ b/console/react/yarn.lock @@ -3242,6 +3242,15 @@ browserslist@^4.0.0, browserslist@^4.1.1, browserslist@^4.6.0, browserslist@^4.6 electron-to-chromium "^1.3.295" node-releases "^1.1.38" +browserslist@^4.7.3: + version "4.7.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.3.tgz#02341f162b6bcc1e1028e30624815d4924442dc3"; + integrity sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ== + dependencies: +caniuse-lite "^1.0.30001010" +electron-to-chromium "^1.3.306" +node-releases "^1.1.40" + bser@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05"; @@ -3403,6 +3412,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.3981, caniuse-lite@^1.0.3989, can resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001010.tgz#397a14034d384260453cc81994f494626d34b938"; integrity sha512-RA5GH9YjFNea4ZQszdWgh2SC+dpLiRAg4VDQS2b5JRI45OxmbGrYocYHTa9x0bKMQUE7uvHkNPNffUr+pCxSGw== +caniuse-lite@^1.0.30001010: + version "1.0.30001011" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001011.tgz#0d6c4549c78c4a800bb043a83ca0cbe0aee6c6e1"; + integrity sha512-h+Eqyn/YA6o6ZTqpS86PyRmNWOs1r54EBDcd2NTwwfsXQ8re1B38SnB+p2RKF8OUsyEIjeDU8XGec1RGO/wYCg== + capture-exit@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4"; @@ -4705,6 +4719,11 @@ electron-to-chromium@^1.3.247, electron-to-chromium@^1.3.295: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.306.tgz#e8265301d053d5f74e36cb876486830261fbe946"; integrity sha512-frDqXvrIROoYvikSKTIKbHbzO6M3/qC6kCIt/1FOa9kALe++c4VAJnwjSFvf1tYLEUsP2n9XZ4XSCyqc3l7A/A== +electron-to-chromium@^1.3.306: + version "1.3.309" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.309.tgz#9e1e5e23c73d04f0364e524afaafd6659289ae1b"; + integrity sha512-NZd91XD15v2UPLjYXoN/gLnkwIUQjdH4SQLpRCCQiYJH6BBkfgp5pWemBJPr1rZ2dl8Ee3o91O9Sa1QuAfZmog== + elliptic@^6.0.0: version "6.5.1" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz#c380f5f909bf1b9b4428d028cd18d3b0efd6b52b"; @@ -8215,7 +8234,7 @@ node-pre-gyp@^0.12.0: semver "^5.3.0" tar "^4" -node-releases@^1.1.29, node-releases@^1.1.38: +node-releases@^1.1.29, node-releases@^1.1.38, node-releases@^1.1.40: version "1.1.40" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.40.tgz#a94facfa8e2d612302601ca1361741d529c4515a"; integrity sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ== - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Added schema, entity operations, notifications
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 632aacf Added schema, entity operations, notifications 632aacf is described below commit 632aacf045c8e4d9595ca8c7302aa01b43a4218d Author: Ernest Allen AuthorDate: Tue Nov 12 12:42:25 2019 -0500 Added schema, entity operations, notifications --- console/react/public/config.json | 3 + console/react/src/App.css | 139 - console/react/src/App.js | 2 +- console/react/src/alertList.js | 71 + console/react/src/config.json | 3 - console/react/src/connect-form.js | 45 ++- console/react/src/connectPage.js | 3 +- console/react/src/connecting.js| 30 ++ console/react/src/connectionClose.js | 7 +- console/react/src/contextMenuComponent.js | 53 +--- .../connectionData.js => createEntity.js} | 31 +- console/react/src/details/createTablePage.js | 336 .../dataSources/{connectionData.js => autoLink.js} | 19 +- .../src/details/dataSources/connectionData.js | 11 + .../react/src/details/dataSources/defaultData.js | 82 - console/react/src/details/dataSources/linkData.js | 8 +- console/react/src/details/dataSources/logsData.js | 161 +- .../react/src/details/dataSources/routerData.js| 3 - console/react/src/details/deleteEntity.js | 143 + console/react/src/details/enitiesPage.js | 83 - console/react/src/details/entityData.js| 6 +- console/react/src/details/entityListTable.js | 83 - console/react/src/details/schema/schemaPage.js | 226 ++ .../connectionData.js => updateEntity.js} | 33 +- console/react/src/details/updateTablePage.js | 337 + console/react/src/detailsTablePage.js | 34 ++- console/react/src/index.js | 14 +- console/react/src/layout.js| 91 +++--- console/react/src/notificationDrawer.js| 18 +- .../react/src/overview/dashboard/dashboardPage.js | 5 +- .../overview/dashboard/delayedDeliveriesCard.js| 6 +- console/react/src/pleaseWait.js| 51 console/react/src/qdrGlobals.js| 10 - console/react/src/tableToolbar.jsx | 34 +-- console/react/yarn.lock| 36 +-- python/qpid_dispatch_internal/dispatch.py | 1 + 36 files changed, 1793 insertions(+), 425 deletions(-) diff --git a/console/react/public/config.json b/console/react/public/config.json new file mode 100644 index 000..6b19668 --- /dev/null +++ b/console/react/public/config.json @@ -0,0 +1,3 @@ +{ + "title": "Apache Qpid Dispach Console" +} diff --git a/console/react/src/App.css b/console/react/src/App.css index b1eff31..4e4240b 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -1001,7 +1001,7 @@ div.qdrChord .legend-text { background-color: transparent; color: blue; font-weight: bold; - white-space: normal; + white-space: nowrap; padding-left: 0; } @@ -1140,19 +1140,20 @@ div.details-table ul.entities-list { span.entity-type i { padding-right: 1em; font-style: normal; + font-family: FontAwesome; } span.entity-type i.address-local:before { - font-family: FontAwesome; content: "\f0ac"; } span.entity-type i.address-mobile:before { - font-family: FontAwesome; content: "\f109"; } span.entity-type i.address-router:before { - font-family: FontAwesome; content: "\f047"; } +span.entity-type i.address-topo:before { + content: "\f126"; +} span.entity-type i.link-type-endpoint:before { content: "\f109"; @@ -1297,3 +1298,133 @@ span.entity-type i.link-type-router-control:before { font-weight: bold; color: black; } + +.details-table-header { + display: flex; + justify-content: space-between; +} + +.detail-action-button { + margin-right: 1em; +} + +#update-form .pf-c-form__helper-text { + text-align: left; +} + +#alert-list-container { + position: absolute; + right: 6em; + top: 3em; +} + +/* login form */ +.spinning-clockwise { + -webkit-animation: spinc 4s linear infinite; + -moz-animation: spinc 4s linear infinite; + animation: spinc 4s linear infinite; +} +@-moz-keyframes spinc { + 100% { +-moz-transform: rotate(360deg); + } +} +@-webkit-keyframes spinc { + 100% { +-webkit-transform: rotate(360deg); + } +} +@keyframes spinc { + 100% { +-webkit-transform: rotate(360deg); +transform: rotate(360deg);
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Removed unused files. Added notification drawer
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 8c5e99d Removed unused files. Added notification drawer 8c5e99d is described below commit 8c5e99dc44abec23a24007810e139861b5d48921 Author: Ernest Allen AuthorDate: Sun Nov 3 13:51:28 2019 -0500 Removed unused files. Added notification drawer --- console/react/src/App.css | 121 +++ console/react/src/App.js | 1 + console/react/src/REST.js | 169 -- console/react/src/connectionClose.js | 120 +-- .../connectionData.js} | 30 +- console/react/src/details/enitiesPage.js | 4 +- console/react/src/details/entityData.js| 4 +- console/react/src/details/entityListTable.js | 9 +- console/react/src/edge-table-pagination.js | 24 -- console/react/src/edge-table-toolbar.js| 133 console/react/src/edge-table.js| 289 - console/react/src/empty-edge-class-table.js| 43 --- console/react/src/empty-selection.js | 33 -- console/react/src/field-details.js | 225 - console/react/src/graph.js | 358 - console/react/src/layout.js| 38 ++- console/react/src/network-name.js | 67 console/react/src/nodes.js | 260 --- console/react/src/nodeslinks.js| 144 - console/react/src/notificationDrawer.js| 293 + console/react/src/qdrGlobals.js| 11 + console/react/src/show-d3-svg.js | 236 -- console/react/src/topology-context.js | 139 23 files changed, 577 insertions(+), 2174 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 758ca39..b1eff31 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -1176,3 +1176,124 @@ span.entity-type i.link-type-router-control:before { .details-header { border-bottom: 1px solid #eaeaea; } + +#NotificationDrawer { + position: absolute; + top: 4.8em; + color: black; + right: 0em; +} + +.drawer-pf-title { + display: flex; + border: 1px solid lightgray; + background-color: #f3f3f3; + height: 2em; + justify-content: space-between; + position: unset; +} + +#NotificationDrawer.compact { + transition: width 0.25s ease; + width: 20em; +} + +#NotificationDrawer.expanded { + transition: width 0.25s ease; + width: 50em; +} + +.drawer-pf-title h3 { + margin: 0.5em 0; +} + +.drawer-pf-title svg { + fill: #33; +} + +.notification-button dl.pf-c-accordion { + padding-top: 0; + padding-bottom: 0; +} + +.notification-button dl.pf-c-accordion * { + border-left-color: transparent; +} + +.notification-button dl.pf-c-accordion dt { + background-image: linear-gradient(to bottom, #fafafa 0, #ededed 100%); + background-repeat: repeat-x; +} + +.notification-button dl.pf-c-accordion h3 { + margin-top: 0; + margin-bottom: 0; +} + +.notification-button button.pf-c-accordion__toggle span { + font-weight: normal; + display: block; + font-size: 14px; + line-height: normal; +} + +.notification-button button.pf-c-accordion__toggle { + display: flex; +} + +.notification-button .pf-c-accordion__toggle svg { + position: absolute; + left: 0.5em; +} + +.notification-button button.pf-c-accordion__toggle { + text-align: center; +} + +.notification-button .pf-c-accordion__toggle-text { + margin: auto; +} + +.drawer-pf-notification { + display: flex; + justify-content: space-between; +} + +.drawer-pf-notification-info, +.drawer-pf-notification-message { + padding-left: 0; + padding-right: 0; +} + +.drawer-pf-notification-content { + display: flex; + flex-direction: column; + margin: auto; +} + +#NotificationDrawer .pf-c-accordion__expanded-content-body { + padding: 0; +} + +#NotificationDrawer .drawer-pf-action-link { + border-left: 1px solid #d1d1d1; +} + +#NotificationDrawer button.pf-m-expanded, +#NotificationDrawer dd.pf-m-expanded { + border-left-color: blue; +} + +#NotificationDrawer .panel-body { + padding-left: 0; +} + +#NotificationDrawer .drawer-pf-notification { + padding-left: 15px; + font-size: 16px; +} + +#NotificationDrawer .drawer-pf-notification.unread { + font-weight: bold; + color: black; +} diff --git a/console/react/src/App.js b/console/react/src/App.js index cb56d14..6f66bb7 100644 --- a/console/react/src/App.js +++ b/console/react/src/App.js @@ -3,6 +3,7 @@ import "@patternfly/patternfly/patternfly.css"; import "@patternfly/patternfly/patternfly-addons.css";
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Progress on details pages
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 679c5f4 Progress on details pages 679c5f4 is described below commit 679c5f418809e029ac99760f5b2093a36d615d0a Author: Ernest Allen AuthorDate: Sat Nov 2 10:36:31 2019 -0400 Progress on details pages --- console/react/src/App.css | 25 ++- .../react/src/details/dataSources/addressData.js | 1 + .../src/details/dataSources/connectionData.js | 130 -- .../react/src/details/dataSources/defaultData.js | 32 +++- console/react/src/details/dataSources/linkData.js | 196 - .../{addressData.js => listenerData.js}| 37 ++-- console/react/src/details/enitiesPage.js | 79 +++-- console/react/src/details/entityData.js| 10 +- console/react/src/details/entityListTable.js | 92 ++ .../react/src/{overview => }/detailsTablePage.js | 98 ++- console/react/src/layout.js| 10 +- console/react/src/overview/overviewTable.js| 3 +- console/react/src/qdrService.js| 2 + console/react/src/tableToolbar.jsx | 51 -- 14 files changed, 343 insertions(+), 423 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 386930b..758ca39 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -2,9 +2,12 @@ height: 100vh; } +/* #main-content-page-layout-manual-nav { overflow-y: hidden; } +*/ + .App { text-align: center; height: 100%; @@ -1107,6 +1110,7 @@ div.details-table ul.entities-list { .entities-list li { padding: 0.25em 2em; border-left: 2px solid white; + margin-top: 8px; } .entities-list li:hover { background-color: #eaeaea; @@ -1117,10 +1121,12 @@ div.details-table ul.entities-list { background-color: #eaeaea; } +/* #entityList { max-height: calc(100vh - 140px); padding-top: 0.5em; } + */ .split-left { text-align: left; @@ -1135,7 +1141,7 @@ span.entity-type i { padding-right: 1em; font-style: normal; } -span.entity-type i:before { +span.entity-type i.address-local:before { font-family: FontAwesome; content: "\f0ac"; } @@ -1148,8 +1154,25 @@ span.entity-type i.address-router:before { content: "\f047"; } +span.entity-type i.link-type-endpoint:before { + content: "\f109"; +} +span.entity-type i.link-type-inter-router:before { + content: "\f07e"; +} +span.entity-type i.link-type-router-control:before { + content: "\f013"; +} + .details-table .pf-l-toolbar { margin: 0 !important; padding: 1em 1em; border-bottom: 1px solid #eaeaea; } + +.details-table table { + margin-left: 0.25em; +} +.details-header { + border-bottom: 1px solid #eaeaea; +} diff --git a/console/react/src/details/dataSources/addressData.js b/console/react/src/details/dataSources/addressData.js index 528c286..13c7e97 100644 --- a/console/react/src/details/dataSources/addressData.js +++ b/console/react/src/details/dataSources/addressData.js @@ -38,6 +38,7 @@ class AddressData extends DefaultData { constructor(service, schema) { super(service, schema); this.typeFormatter = AddressType; +this.detailName = "router.address"; } } diff --git a/console/react/src/details/dataSources/connectionData.js b/console/react/src/details/dataSources/connectionData.js deleted file mode 100644 index b126e31..000 --- a/console/react/src/details/dataSources/connectionData.js +++ /dev/null @@ -1,130 +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. -*/ - -class ConnectionData { - constructor(service) { -this.service = service; -this.fields = [ - { -title: "Host", -field: "name" - }, - { title: "Container", field: "container" }, - { title: "Role", field: "role" }, - { title: "Dir", field: "dir&q
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Don't redraw page when dropdown menu is toggled
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new a5ba57f Don't redraw page when dropdown menu is toggled a5ba57f is described below commit a5ba57f852252e1fa5955505b4795ea9d19cb776 Author: Ernest Allen AuthorDate: Sun Oct 27 11:37:36 2019 -0400 Don't redraw page when dropdown menu is toggled --- console/react/public/favicon.ico | Bin 3870 -> 1150 bytes console/react/src/App.css | 4 + console/react/src/DropdownMenu.js | 68 + console/react/src/connect-form.js | 13 +++- console/react/src/connectPage.js | 20 + console/react/src/contextMenuComponent.js | 23 -- console/react/src/layout.js | 122 ++ 7 files changed, 188 insertions(+), 62 deletions(-) diff --git a/console/react/public/favicon.ico b/console/react/public/favicon.ico index a11777c..7573006 100644 Binary files a/console/react/public/favicon.ico and b/console/react/public/favicon.ico differ diff --git a/console/react/src/App.css b/console/react/src/App.css index 9c45680..3a5efb8 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -870,6 +870,10 @@ div.qdrChord .legend-text { border-right: 1px solid #888; } +.context-menu.layout-dropdown li { + color: black; +} + .context-menu .menu-item { padding: 0.5em 1.5em; } diff --git a/console/react/src/DropdownMenu.js b/console/react/src/DropdownMenu.js new file mode 100644 index 000..c51df43 --- /dev/null +++ b/console/react/src/DropdownMenu.js @@ -0,0 +1,68 @@ +/* +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. +*/ + +import React, { Component } from "react"; +import ContextMenuComponent from "./contextMenuComponent"; + +class DropdownMenu extends Component { + constructor(props) { +super(props); +this.state = { + isVisible: +typeof this.props.isVisible !== "undefined" + ? this.props.isVisible + : false +}; +this.contextMenuItems = [ + { +title: "Logout", +action: this.logout, +enabled: this.isLoggedIn + } +]; + } + + logout = (item, data, event) => { +this.props.handleDropdownLogout(); + }; + + isLoggedIn = () => { +return this.props.isConnected(); + }; + + show = isVisible => { +this.setState({ isVisible }); + }; + + render() { +return ( + this.state.isVisible && ( + + ) +); + } +} + +export default DropdownMenu; diff --git a/console/react/src/connect-form.js b/console/react/src/connect-form.js index 678be78..a7a9871 100644 --- a/console/react/src/connect-form.js +++ b/console/react/src/connect-form.js @@ -35,10 +35,15 @@ class ConnectForm extends React.Component { address: "", port: "", username: "", - password: "" + password: "", + isShown: this.props.isConnectFormOpen }; } + show = isShown => { +this.setState({ isShown }); + }; + componentDidMount = () => { let savedValues = localStorage.getItem(CONNECT_KEY); if (!savedValues) { @@ -73,9 +78,9 @@ class ConnectForm extends React.Component { }; render() { -const { address, port, username, password } = this.state; +const { isShown, address, port, username, password } = this.state; -return ( +return isShown ? ( @@ -158,7 +163,7 @@ class ConnectForm extends React.Component { -); +) : null; } } diff --git a/console/react/src/connectPage.js b/console/react/src/connectPage.js index 6d070b7..9e1769b 100644 --- a/console/react/src/connectPage.js +++ b/console/react/src/connectPage.js @@ -16,6 +16,25 @@ class ConnectPage extends React.Component { handleConnectCancel = () => { this.setState({ showForm: false }); }; + + shouldComponentUpdate = (nextProps, nextState) => {
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Using pf4 topology wrapper component
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 885a457 Using pf4 topology wrapper component 885a457 is described below commit 885a457005ebe55225938b6c5324641b8352c082 Author: Ernest Allen AuthorDate: Sat Oct 26 13:25:42 2019 -0400 Using pf4 topology wrapper component --- console/react/src/App.css | 118 +- console/react/src/App.js | 2 +- console/react/src/amqp/topology.js | 4 - console/react/src/connect-form.js | 75 +++--- console/react/src/connectPage.js | 6 +- ...xtMenuComponent.jsx => contextMenuComponent.js} | 2 + console/react/src/layout.js| 205 +--- console/react/src/overview/dataSources/logsData.js | 72 +- console/react/src/overview/logDetails.js | 100 ++-- console/react/src/overview/overviewTable.js| 11 +- console/react/src/qdrGlobals.js| 1 - console/react/src/qdrService.js| 3 +- console/react/src/topology/contextMenu.js | 80 +++ console/react/src/topology/legend.js | 3 +- console/react/src/topology/legendComponent.js | 134 +++ console/react/src/topology/map.js | 55 - .../{mapLegendComponent.jsx => mapComponent.js}| 0 console/react/src/topology/nodes.js| 5 +- console/react/src/topology/svgUtils.js | 111 - console/react/src/topology/topoUtils.js| 10 +- console/react/src/topology/topologyPage.js | 41 console/react/src/topology/topologyToolbar.js | 129 ++ .../topology/{qdrTopology.js => topologyViewer.js} | 259 + console/react/src/topology/traffic.js | 2 + 24 files changed, 940 insertions(+), 488 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index eb0bfb2..9c45680 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -130,6 +130,13 @@ g.selected line { stroke: #fff; } +#topologyPage { + padding: 0; +} + +#topologyPage .pf-l-stack__item { + border-bottom: 1px solid #aaa; +} path.hittarget { stroke-width: 15px; stroke: transparent; @@ -370,9 +377,14 @@ div.state-container button.pf-c-clipboard-copy__group-copy { .overview-charts-page, .overview-table { background-color: #eaeaea !important; - padding: 3em; + padding: 1.5em; +} +.overview-table { + height: 100%; +} +.overview-table .pf-c-card__body { + padding-left: 1em; } - .overview-table-page { padding-left: 0 !important; padding-right: 0 !important; @@ -392,11 +404,18 @@ div.state-container button.pf-c-clipboard-copy__group-copy { width: 100%; } +.qdrTopology { + width: 100%; + height: 100%; + background-color: white; +} .qdrTopology dl.pf-c-accordion, .qdrChord dl.pf-c-accordion { + /* position: absolute; width: 20em; right: 1em; + */ padding-top: 0; padding-bottom: 0; margin-top: 1em; @@ -683,6 +702,14 @@ path.empty { border-color: black; } +.topology-toolbar-item .pf-c-popover__content > button, +.topology-toolbar-item .pf-c-popover__content .pf-c-title.pf-m-xl { + display: none; +} + +.topology-toolbar-item .pf-c-popover__content { + padding: 2em 2em 0.5em; +} .qdrPopup { position: absolute; z-index: 200; @@ -696,7 +723,7 @@ path.empty { } #popover-div { - position: absolute; + position: fixed; z-index: 200; border-radius: 4px; border: 1px solid gray; @@ -797,9 +824,14 @@ div.qdrChord .legend-text { font-weight: bold; } +.colored-dot span.colored-dot-dot > span { + padding-top: 5px; +} + .colored-dot span.colored-dot-text { margin-left: 0.5em; color: black; + font-size: 16px; } .qdrTopology .addresses .legend-line, @@ -807,12 +839,31 @@ div.qdrChord .legend-text { margin-left: 1.5em; } -.qdrTopology .pf-c-options-menu__toggle { - display: none; +@media (min-width: 768px) { + div.qdrTopology .pf-topology-side-bar.shown { +width: calc(100% - 330px); +max-width: 330px; + } + div.qdrTopology .pf-topology-container__with-sidebar .pf-topology-content { +/* + width: 180px; +min-width: calc(100% - 330px); +*/ +width: 100%; +height: 100%; +background-color: white; + } } -.context-menu { +.diagram { + width: 100%; position: absolute; + top: 0; + height: 100%; +} + +.context-menu { + position: fixed; background-color: white; border-top: 1px solid #888; border-left: 1px solid #888; @@ -931,6 +982,7 @@ div.qdrChord .legend-text { font-size: 14px; padding: 0; background-color: white; + overflow: hidden; } .pf-c-button.pf-m-prim
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Working on log details
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 23bfb0c Working on log details 23bfb0c is described below commit 23bfb0cbb780c628ee5a923048afa6f7deb2c148 Author: Ernest Allen AuthorDate: Tue Oct 8 18:45:05 2019 -0400 Working on log details --- console/react/src/App.css | 5 + console/react/src/connect-form.js | 2 +- console/react/src/layout.js| 92 ++-- console/react/src/overview/dataSources/logsData.js | 115 +++ console/react/src/overview/detailsTablePage.js | 2 + console/react/src/overview/entityData.js | 6 +- .../{detailsTablePage.js => logDetails.js} | 156 - console/react/src/overview/overviewTable.js| 68 + console/react/src/qdrService.js| 15 +- 9 files changed, 261 insertions(+), 200 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 5601c16..eb0bfb2 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -954,6 +954,7 @@ div.qdrChord .legend-text { .link-dir-in, .link-dir-out { padding-right: 0.5em; + font-size: 16px; } .link-dir-in { color: red; @@ -962,3 +963,7 @@ div.qdrChord .legend-text { .link-dir-out { color: blue; } + +.overview-table tr { + border-bottom-color: #eaeaea !important; +} diff --git a/console/react/src/connect-form.js b/console/react/src/connect-form.js index 6ef9a74..7f0073a 100644 --- a/console/react/src/connect-form.js +++ b/console/react/src/connect-form.js @@ -129,7 +129,7 @@ class ConnectForm extends React.Component { - Connect + {this.props.isConnected ? "Disconnect" : "Connect"} Cancel diff --git a/console/react/src/layout.js b/console/react/src/layout.js index e81ee11..13d198f 100644 --- a/console/react/src/layout.js +++ b/console/react/src/layout.js @@ -25,7 +25,6 @@ import { Dropdown, DropdownToggle, DropdownItem, - DropdownSeparator, Page, PageHeader, SkipToContent, @@ -48,9 +47,8 @@ import { } from "react-router-dom"; import accessibleStyles from "@patternfly/patternfly/utilities/Accessibility/accessibility.css"; -import spacingStyles from "@patternfly/patternfly/utilities/Spacing/spacing.css"; import { css } from "@patternfly/react-styles"; -import { BellIcon, CogIcon, PowerOffIcon } from "@patternfly/react-icons"; +import { BellIcon, PowerOffIcon } from "@patternfly/react-icons"; //import ConnectForm from "./connect-form"; import ConnectPage from "./connectPage"; import DashboardPage from "./overview/dashboard/dashboardPage"; @@ -58,7 +56,9 @@ import OverviewTablePage from "./overview/overviewTablePage"; import DetailsTablePage from "./overview/detailsTablePage"; import TopologyPage from "./topology/qdrTopology"; import MessageFlowPage from "./chord/qdrChord"; +import LogDetails from "./overview/logDetails"; import { QDRService } from "./qdrService"; +import ConnectForm from "./connect-form"; const avatarImg = require("./assets/img_avatar.svg"); class PageLayout extends React.Component { @@ -70,23 +70,9 @@ class PageLayout extends React.Component { isDropdownOpen: false, activeGroup: "overview", activeItem: "dashboard", - detailInfo: null, - detailMeta: null + isConnectFormOpen: false }; this.tables = ["routers", "addresses", "links", "connections", "logs"]; - -/* - logs: [ -{ title: "Module" }, -{ title: "Notice" }, -{ title: "Info" }, -{ title: "Trace" }, -{ title: "Debug" }, -{ title: "Warning" }, -{ title: "Error" }, -{ title: "Critical" } - ] - */ this.hooks = { setLocation: this.setLocation }; this.service = new QDRService(this.hooks); } @@ -108,22 +94,26 @@ class PageLayout extends React.Component { }; handleConnect = connectPath => { -this.service - .connect({ address: "localhost", port: 5673, reconnect: true }) - .then( -r => { - this.setState({ -connected: true, -connectPath - }); -}, -e => { - console.log(e); -} - ); +if (this.state.connected) { + this.service.
[qpid-dispatch] 01/03: Added Links overview table
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 6824e7fb9847ab47af5c92b85247d5abfbf71518 Author: Ernest Allen AuthorDate: Fri Oct 4 10:27:34 2019 -0400 Added Links overview table --- console/react/src/layout.js | 13 -- console/react/src/overview/linksTable.js| 156 console/react/src/overview/overviewTableBase.js | 1 - console/react/src/overview/overviewTablePage.js | 7 +- 4 files changed, 162 insertions(+), 15 deletions(-) diff --git a/console/react/src/layout.js b/console/react/src/layout.js index 6db1a2e..afae49e 100644 --- a/console/react/src/layout.js +++ b/console/react/src/layout.js @@ -66,19 +66,6 @@ class PageLayout extends React.Component { this.tables = ["routers", "addresses", "links", "connections", "logs"]; /* -links: [ -{ title: "name", displayName: "Link" }, -{ title: "linkType" }, -{ title: "linkDir" }, -{ title: "adminStatus" }, -{ title: "operStatus" }, -{ title: "deliveryCount" }, -{ title: "rate" }, -{ title: "delayed1Sec" }, -{ title: "delayed10Sec" }, -{ title: "outstanding" }, -{ title: "address" } - ], connections: [ { title: "name", displayName: "host" }, { title: "container" }, diff --git a/console/react/src/overview/linksTable.js b/console/react/src/overview/linksTable.js new file mode 100644 index 000..d528bc3 --- /dev/null +++ b/console/react/src/overview/linksTable.js @@ -0,0 +1,156 @@ +/* +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. +*/ + +import { sortable } from "@patternfly/react-table"; +import OverviewTableBase from "./overviewTableBase"; + +class LinksTable extends OverviewTableBase { + constructor(props) { +super(props); +this.fields = [ + { title: "Link", field: "name" }, + { title: "Type", field: "linkType", transforms: [sortable] }, + { title: "Dir", field: "linkDir" }, + { title: "Admin status", field: "adminStatus" }, + { title: "Oper status", field: "operStatus" }, + { title: "Deliveries", field: "deliveryCount" }, + { title: "Rate", field: "rate" }, + { title: "Delayed 1 sec", field: "delayed1Sec" }, + { title: "Delayed 10 secs", field: "delayed10Sec" }, + { title: "Outstanding", field: "outstanding" }, + { title: "Address", field: "owningAddr", transforms: [sortable] } +]; + } + doFetch = (page, perPage) => { +return new Promise(resolve => { + this.props.service.management.topology.fetchAllEntities( +{ entity: "router.link" }, +nodes => { + // we have all the data now in the nodes object + let linkFields = []; + const now = new Date(); + var prettyVal = value => { +return typeof value === "undefined" + ? "-" + : this.props.service.utilities.pretty(value); + }; + var uncounts = link => { +return this.props.service.utilities.pretty( + link.undeliveredCount + link.unsettledCount +); + }; + var getLinkName = (node, link) => { +let namestr = this.props.service.utilities.nameFromId(node); +return `${namestr}:${link.identity}`; + }; + var fixAddress = link => { +let addresses = []; +let owningAddr = link.owningAddr || ""; +let rawAddress = owningAddr; +/* + - "L*" => "* (local)" + - "M0*" =
[qpid-dispatch] 03/03: Overview detail pages mostly working
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 4d273db81efc3906d3a1fc4dd3aee2e09492b68c Author: Ernest Allen AuthorDate: Mon Oct 7 11:47:52 2019 -0400 Overview detail pages mostly working --- console/react/src/App.css | 61 +++- console/react/src/App.js | 1 + console/react/src/amqp/management.js | 5 + console/react/src/amqp/utilities.js| 32 ++- console/react/src/connect-form.js | 26 +- console/react/src/connectPage.js | 55 ++-- console/react/src/layout.js| 253 console/react/src/overview/addressesTable.js | 161 --- console/react/src/overview/connectionsTable.js | 95 -- .../react/src/overview/dashboard/dashboardPage.js | 48 ++-- .../react/src/overview/dataSources/addressData.js | 191 + .../src/overview/dataSources/connectionData.js | 169 +++ .../{linksTable.js => dataSources/linkData.js} | 131 + .../{routersTable.js => dataSources/routerData.js} | 68 +++-- console/react/src/overview/detailsTablePage.js | 218 ++ console/react/src/overview/entityData.js | 32 +++ console/react/src/overview/overviewTable.js| 318 + console/react/src/overview/overviewTableBase.js| 213 -- console/react/src/overview/overviewTablePage.js| 102 --- console/react/src/overview/tableToolbar.jsx| 19 ++ console/react/src/qdrService.js| 5 +- 21 files changed, 1409 insertions(+), 794 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 1f7a1f0..5601c16 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -378,10 +378,16 @@ div.state-container button.pf-c-clipboard-copy__group-copy { padding-right: 0 !important; } .overview-header { - padding: 0.5em; - font-size: 5em; + padding: 2em; text-align: left; } +.overview-header.details { + padding: 1em 2em; +} +.overview-header.details .pf-c-breadcrumb__item { + font-size: 1.125em; + margin-bottom: 1em; +} .fill-card { width: 100%; } @@ -834,13 +840,16 @@ div.qdrChord .legend-text { } .overview-charts-page .pf-c-card__header.pf-c-title { - text-align: left; font-size: 22px; } +.dashboard-header { + display: flex; +} .overview-charts-page div.time-period { font-size: 18px; color: #888; + text-align: left; } .chart-container { @@ -871,8 +880,7 @@ div.qdrChord .legend-text { } .duration-tabs { - position: absolute; - right: 1.5em; + margin-left: auto; } .duration-tabs li { @@ -911,3 +919,46 @@ div.qdrChord .legend-text { .table-toolbar .pf-l-toolbar__item { margin-right: 0 !important; } + +.overview-header .pf-c-content { + display: flex; +} + +.overview-loading { + margin-left: auto; + color: #999; + border: 0; + font-size: 14px; + padding: 0; + background-color: white; +} + +.pf-c-button.pf-m-primary.link-button, +.overview-header.details .pf-c-breadcrumb__item.link-button { + border: 0; + background-color: transparent; + color: blue; + font-weight: bold; + white-space: normal; +} + +.pf-c-button.pf-m-primary.link-button:hover, +.overview-header.details .pf-c-breadcrumb__item.link-button:hover { + text-decoration: underline; +} + +.noWrap { + white-space: nowrap; +} + +.link-dir-in, +.link-dir-out { + padding-right: 0.5em; +} +.link-dir-in { + color: red; +} + +.link-dir-out { + color: blue; +} diff --git a/console/react/src/App.js b/console/react/src/App.js index d686a5d..91f09e7 100644 --- a/console/react/src/App.js +++ b/console/react/src/App.js @@ -1,5 +1,6 @@ import React, { Component } from "react"; import "@patternfly/patternfly/patternfly.css"; +import "@patternfly/patternfly/patternfly-addons.css"; import "patternfly/dist/css/patternfly.css"; import "@patternfly/patternfly/components/Nav/nav.css"; diff --git a/console/react/src/amqp/management.js b/console/react/src/amqp/management.js index 0bdb748..19ca359 100644 --- a/console/react/src/amqp/management.js +++ b/console/react/src/amqp/management.js @@ -27,6 +27,11 @@ export class Management { getSchema(callback) { var self = this; return new Promise(function(resolve, reject) { + if (self.connection.schema) { +if (callback) callback(self.connection.schema); +resolve(self.connection.schema); +return; + } self.connection.sendMgmtQuery("GET-SCHEMA").then( function(responseAndContext) { var response = responseAndContext.response; diff --git a/console/react/src/amqp/utilities.js b/console/react/src/amqp/utilities.js index a42247e..0814b34 100644 --- a/console/rea
[qpid-dispatch] 02/03: Added connections overview table
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit b87fe20b90ec8f75f164f1cda98b093653229f3b Author: Ernest Allen AuthorDate: Fri Oct 4 10:59:51 2019 -0400 Added connections overview table --- console/react/src/overview/connectionsTable.js | 95 + console/react/src/overview/overviewTablePage.js | 10 +++ 2 files changed, 105 insertions(+) diff --git a/console/react/src/overview/connectionsTable.js b/console/react/src/overview/connectionsTable.js new file mode 100644 index 000..1ee140f --- /dev/null +++ b/console/react/src/overview/connectionsTable.js @@ -0,0 +1,95 @@ +/* +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. +*/ + +import { sortable } from "@patternfly/react-table"; +import OverviewTableBase from "./overviewTableBase"; + +class LinksTable extends OverviewTableBase { + constructor(props) { +super(props); +this.fields = [ + { title: "Host", field: "name", transforms: [sortable] }, + { title: "Container", field: "container", transforms: [sortable] }, + { title: "Role", field: "role", transforms: [sortable] }, + { title: "Dir", field: "dir", transforms: [sortable] }, + { title: "Security", field: "security", transforms: [sortable] }, + { +title: "Authentication", +field: "authentication", +transforms: [sortable] + }, + { title: "Close", field: "close" } +]; + } + doFetch = (page, perPage) => { +return new Promise(resolve => { + this.props.service.management.topology.fetchAllEntities( +{ entity: "connection" }, +nodes => { + // we have all the data now in the nodes object + let connectionFields = []; + for (let node in nodes) { +const response = nodes[node]["connection"]; +for (let i = 0; i < response.results.length; i++) { + const result = response.results[i]; + const connection = this.props.service.utilities.flatten( +response.attributeNames, +result + ); + let auth = "no_auth"; + let sasl = connection.sasl; + if (connection.isAuthenticated) { +auth = sasl; +if (sasl === "ANONYMOUS") auth = "anonymous-user"; +else { + if (sasl === "GSSAPI") sasl = "Kerberos"; + if (sasl === "EXTERNAL") sasl = "x.509"; + auth = connection.user + "(" + connection.sslCipher + ")"; +} + } + + let sec = "no-security"; + if (connection.isEncrypted) { +if (sasl === "GSSAPI") sec = "Kerberos"; +else + sec = connection.sslProto + "(" + connection.sslCipher + ")"; + } + + let host = connection.host; + let connField = { +host: host, +security: sec, +authentication: auth, +routerId: node, +uid: host + connection.container + connection.identity + }; + response.attributeNames.forEach(function(attribute, i) { +connField[attribute] = result[i]; + }); + connectionFields.push(connField); +} + } + resolve(this.slice(connectionFields, page, perPage)); +} + ); +}); + }; +} + +export default LinksTable; diff --git a/console/react/src/overview/overviewTablePage.js b/console/react/src/overview/overviewTablePage.js index 052a7cb..92adfd2 100644 --- a/console/react/src/overview/overviewTablePage.js +++ b/console/react/src/overview/overviewTablePage.js @@ -12,6 +12,8 @@ import { Card, CardBody } from &quo
[qpid-dispatch] branch eallen-DISPATCH-1385 updated (c78dace -> 4d273db)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from c78dace Implemented table filtering for overview new 6824e7f Added Links overview table new b87fe20 Added connections overview table new 4d273db Overview detail pages mostly working The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/src/App.css | 61 +++- console/react/src/App.js | 1 + console/react/src/amqp/management.js | 5 + console/react/src/amqp/utilities.js| 32 ++- console/react/src/connect-form.js | 26 +- console/react/src/connectPage.js | 55 ++-- console/react/src/layout.js| 266 - console/react/src/overview/addressesTable.js | 161 --- .../react/src/overview/dashboard/dashboardPage.js | 48 ++-- .../react/src/overview/dataSources/addressData.js | 191 + .../src/overview/dataSources/connectionData.js | 169 +++ console/react/src/overview/dataSources/linkData.js | 189 .../{routersTable.js => dataSources/routerData.js} | 68 +++-- console/react/src/overview/detailsTablePage.js | 218 ++ .../.babelrc => react/src/overview/entityData.js} | 19 +- console/react/src/overview/overviewTable.js| 318 + console/react/src/overview/overviewTableBase.js| 214 -- console/react/src/overview/overviewTablePage.js| 89 +++--- console/react/src/overview/tableToolbar.jsx| 19 ++ console/react/src/qdrService.js| 5 +- 20 files changed, 1499 insertions(+), 655 deletions(-) delete mode 100644 console/react/src/overview/addressesTable.js create mode 100644 console/react/src/overview/dataSources/addressData.js create mode 100644 console/react/src/overview/dataSources/connectionData.js create mode 100644 console/react/src/overview/dataSources/linkData.js rename console/react/src/overview/{routersTable.js => dataSources/routerData.js} (54%) create mode 100644 console/react/src/overview/detailsTablePage.js copy console/{stand-alone/.babelrc => react/src/overview/entityData.js} (65%) create mode 100644 console/react/src/overview/overviewTable.js delete mode 100644 console/react/src/overview/overviewTableBase.js - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Implemented table filtering for overview
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new c78dace Implemented table filtering for overview c78dace is described below commit c78dacea2ff5de6d627abf439bb39e65c8d3a5d0 Author: Ernest Allen AuthorDate: Fri Oct 4 09:27:01 2019 -0400 Implemented table filtering for overview --- console/react/src/overview/addressHelper.js| 159 - console/react/src/overview/addressesTable.js | 139 +- console/react/src/overview/baseHelper.js | 62 .../{overviewTable.js => overviewTableBase.js} | 86 +-- console/react/src/overview/routerHelper.js | 68 - console/react/src/overview/routersTable.js | 45 +- 6 files changed, 249 insertions(+), 310 deletions(-) diff --git a/console/react/src/overview/addressHelper.js b/console/react/src/overview/addressHelper.js deleted file mode 100644 index aa13e64..000 --- a/console/react/src/overview/addressHelper.js +++ /dev/null @@ -1,159 +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. -*/ -import { sortable } from "@patternfly/react-table"; - -import BaseHelper from "./baseHelper"; - -class AddressHelper extends BaseHelper { - constructor(service) { -super(service); -this.fields = [ - { title: "Address", field: "address", transforms: [sortable] }, - { title: "Class", field: "class" }, - { title: "Phase", field: "phase" }, - { title: "In-proc", field: "inproc" }, - { title: "Local", field: "local" }, - { title: "Remote", field: "remote" }, - { title: "In", field: "in" }, - { title: "Out", field: "out" } -]; - } - - fetch = (perPage, page, sortBy) => { -return new Promise(resolve => { - var addr_phase = addr => { -if (!addr) return "-"; -if (addr[0] === "M") return addr[1]; -return ""; - }; - var prettyVal = val => { -return this.service.utilities.pretty(val || "-"); - }; - let addressFields = []; - let addressObjs = {}; - // send the requests for all connection and router info for all routers - this.service.management.topology.fetchAllEntities( -{ entity: "router.address" }, -nodes => { - for (let node in nodes) { -let response = nodes[node]["router.address"]; -response.results.forEach(result => { - let address = this.service.utilities.flatten( -response.attributeNames, -result - ); - - var addNull = (oldVal, newVal) => { -if (oldVal != null && newVal != null) return oldVal + newVal; -if (oldVal != null) return oldVal; -return newVal; - }; - - let uid = address.identity; - let identity = this.service.utilities.identity_clean(uid); - - if ( -!addressObjs[ - this.service.utilities.addr_text(identity) + -this.service.utilities.addr_class(identity) -] - ) -addressObjs[ - this.service.utilities.addr_text(identity) + -this.service.utilities.addr_class(identity) -] = { - address: this.service.utilities.addr_text(identity), - class: this.service.utilities.addr_class(identity), - phase: addr_phase(identity), - inproc: address.inProcess, - local: address.subscriberCount, - remote: address.remoteCount, - in: address.deliveriesIngress, - out: address.deliveriesEgress, -
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Added filtering to overview tables
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 896a4fe Added filtering to overview tables 896a4fe is described below commit 896a4fef2d50199b6a5e56947c01722acb1f6469 Author: Ernest Allen AuthorDate: Thu Oct 3 19:09:56 2019 -0400 Added filtering to overview tables --- console/react/src/App.css | 7 +++- console/react/src/overview/addressesTable.js | 5 +-- .../src/overview/dashboard/activeAddressesCard.js | 3 ++ console/react/src/overview/dashboard/chartBase.js | 3 ++ .../overview/dashboard/delayedDeliveriesCard.js| 3 ++ console/react/src/overview/overviewTable.js| 38 + console/react/src/overview/routersTable.js | 5 +-- console/react/src/overview/tableToolbar.jsx| 48 ++ 8 files changed, 79 insertions(+), 33 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 8704b46..1f7a1f0 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -902,9 +902,12 @@ div.qdrChord .legend-text { .toolbar-pagination { margin-left: auto; - margin-right: 0 !important; } -.table-toolbar { +.overview-table .pf-m-footer { + padding-right: 2em; +} + +.table-toolbar .pf-l-toolbar__item { margin-right: 0 !important; } diff --git a/console/react/src/overview/addressesTable.js b/console/react/src/overview/addressesTable.js index 860c85a..160d0b7 100644 --- a/console/react/src/overview/addressesTable.js +++ b/console/react/src/overview/addressesTable.js @@ -22,9 +22,8 @@ import AddressHelper from "./addressHelper"; class AddressesTable extends OverviewTable { constructor(props) { -const helper = new AddressHelper(props.service); -super(props, helper); -this.helper = helper; +super(props); +this.helper = new AddressHelper(this.props.service); } } diff --git a/console/react/src/overview/dashboard/activeAddressesCard.js b/console/react/src/overview/dashboard/activeAddressesCard.js index a4fc2be..6ec88d2 100644 --- a/console/react/src/overview/dashboard/activeAddressesCard.js +++ b/console/react/src/overview/dashboard/activeAddressesCard.js @@ -15,11 +15,13 @@ class ActiveAddressesCard extends React.Component { } componentDidMount = () => { +this.mounted = true; this.timer = setInterval(this.updateData, UPDATE_INTERVAL); this.updateData(); }; componentWillUnmount = () => { +this.mounted = false; clearInterval(this.timer); }; @@ -30,6 +32,7 @@ class ActiveAddressesCard extends React.Component { attrs: ["settleRate", "linkType", "linkDir", "owningAddr"] }, results => { +if (!this.mounted) return; let active = {}; for (let id in results) { const aresult = results[id]["router.link"]; diff --git a/console/react/src/overview/dashboard/chartBase.js b/console/react/src/overview/dashboard/chartBase.js index 088b1ad..1c8d72c 100644 --- a/console/react/src/overview/dashboard/chartBase.js +++ b/console/react/src/overview/dashboard/chartBase.js @@ -40,10 +40,12 @@ class ChartBase extends React.Component { } componentDidMount = () => { +this.mounted = true; this.timer = setInterval(this.updateData, 1000); }; componentWillUnmount = () => { +this.mounted = false; clearInterval(this.timer); }; @@ -62,6 +64,7 @@ class ChartBase extends React.Component { if (!this.initialized) { this.init(datum); } +if (!this.mounted) return; const { rates } = this.state; this.rawData.push(datum); this.rawData.splice(0, 1); diff --git a/console/react/src/overview/dashboard/delayedDeliveriesCard.js b/console/react/src/overview/dashboard/delayedDeliveriesCard.js index 7a238ac..0c665b8 100644 --- a/console/react/src/overview/dashboard/delayedDeliveriesCard.js +++ b/console/react/src/overview/dashboard/delayedDeliveriesCard.js @@ -24,11 +24,13 @@ class DelayedDeliveriesCard extends React.Component { } componentDidMount = () => { +this.mounted = true; this.timer = setInterval(this.updateData, UPDATE_INTERVAL); this.updateData(); }; componentWillUnmount = () => { +this.mounted = false; clearInterval(this.timer); }; @@ -38,6 +40,7 @@ class DelayedDeliveriesCard extends React.Component { this.props.service.management.topology.fetchAllEntities( [{ entity: "router.link" }, { entity: "connection" }], nodes => { +if (!this.mounted) return; for (let node in nodes) { let response = nodes[node]["router.link"]; // eslint-disable-next-line no-loop-
[qpid-dispatch] branch eallen-DISPATCH-1385 updated (ad6919d -> a1cedb4)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from ad6919d Fix address legend new ac78143 Use light background for topology popup new 20a1069 Add change detection and notification new b40ba3d Remove debugging console.log statements new a1cedb4 Fix topology background map pan/zoom The 4 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/react/src/App.css | 50 +--- console/react/src/amqp/topology.js| 1 - console/react/src/chord/qdrChord.js | 1 - console/react/src/contextMenuComponent.jsx| 1 - console/react/src/topology/clientInfoComponent.js | 8 --- console/react/src/topology/map.js | 22 +++ console/react/src/topology/qdrTopology.js | 71 --- 7 files changed, 89 insertions(+), 65 deletions(-) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 02/04: Add change detection and notification
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit 20a106991a0d757e0890950e06612b2040ec2224 Author: Ernest Allen AuthorDate: Tue Oct 1 09:51:18 2019 -0400 Add change detection and notification --- console/react/src/amqp/topology.js | 1 - 1 file changed, 1 deletion(-) diff --git a/console/react/src/amqp/topology.js b/console/react/src/amqp/topology.js index dbbc00f..8afa75a 100644 --- a/console/react/src/amqp/topology.js +++ b/console/react/src/amqp/topology.js @@ -29,7 +29,6 @@ class Topology { this.filtering = false; // filter out nodes that don't have connection info this.timeout = 5000; this.updateInterval = interval; -console.log(`topology constructed with interval of ${interval}`); this._getTimer = null; this.updating = false; this.counter = 0; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 03/04: Remove debugging console.log statements
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit b40ba3d3c0209333c9431d7be2fb34ec4fcffc9e Author: Ernest Allen AuthorDate: Tue Oct 1 09:52:14 2019 -0400 Remove debugging console.log statements --- console/react/src/chord/qdrChord.js | 1 - console/react/src/contextMenuComponent.jsx| 1 - console/react/src/topology/clientInfoComponent.js | 8 3 files changed, 10 deletions(-) diff --git a/console/react/src/chord/qdrChord.js b/console/react/src/chord/qdrChord.js index 24a5caf..854fc86 100644 --- a/console/react/src/chord/qdrChord.js +++ b/console/react/src/chord/qdrChord.js @@ -843,7 +843,6 @@ class MessageFlowPage extends Component { // one of the legend sections was opened or closed handleOpenChange = (id, isOpen) => { -console.log(`handleOpenChange called with ${id} and ${isOpen}`); const { legendOptions } = this.state; legendOptions[`${id}Open`] = isOpen; this.setState({ legendOptions }); diff --git a/console/react/src/contextMenuComponent.jsx b/console/react/src/contextMenuComponent.jsx index 81029d1..18dd46c 100644 --- a/console/react/src/contextMenuComponent.jsx +++ b/console/react/src/contextMenuComponent.jsx @@ -31,7 +31,6 @@ class ContextMenuComponent extends React.Component { }; handleHide = e => { -console.log("handleHide called"); this.unregisterHandlers(); this.props.handleContextHide(); }; diff --git a/console/react/src/topology/clientInfoComponent.js b/console/react/src/topology/clientInfoComponent.js index f5dde19..8ef3dad 100644 --- a/console/react/src/topology/clientInfoComponent.js +++ b/console/react/src/topology/clientInfoComponent.js @@ -363,11 +363,6 @@ class ClientInfoComponent extends Component { this.dStart = 0; this.dStop = Math.min(this.d.normals.length, 10); this.updateTimer = setTimeout(this.doUpdateDetail, 2000); - -console.log(` --- detail ---`); -console.log(this.state.detail); -console.log(rows); -console.log(` --`); } }); }; @@ -406,8 +401,6 @@ class ClientInfoComponent extends Component { }); subRows.push({ cells: subCells }); }); - console.log(" === subRows ==="); - console.log(subRows); newRows.push({ parent: i * 2, @@ -427,7 +420,6 @@ class ClientInfoComponent extends Component { ] }); } -console.log(newRows); return newRows; }; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] 04/04: Fix topology background map pan/zoom
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit a1cedb4814847124cc65513541203079d254c0e1 Author: Ernest Allen AuthorDate: Tue Oct 1 09:52:41 2019 -0400 Fix topology background map pan/zoom --- console/react/src/topology/map.js | 22 -- console/react/src/topology/qdrTopology.js | 71 ++- 2 files changed, 59 insertions(+), 34 deletions(-) diff --git a/console/react/src/topology/map.js b/console/react/src/topology/map.js index a3ce7be..2ac3578 100644 --- a/console/react/src/topology/map.js +++ b/console/react/src/topology/map.js @@ -29,10 +29,11 @@ const defaultOceanColor = "#FF"; export class BackgroundMap { // eslint-disable-line no-unused-vars - constructor($scope, notifyFn) { + constructor($scope, options, notifyFn) { this.$scope = $scope; this.initialized = false; this.notify = notifyFn; +this.options = options; let savedOptions = localStorage.getItem(MAPOPTIONSKEY); this.mapOptions = savedOptions @@ -70,9 +71,7 @@ export class BackgroundMap { } setBackgroundColor() { -const color = this.$scope.state.legendOptions.map.shown - ? this.mapOptions.oceanColor - : "#FFF"; +const color = this.options.show ? this.mapOptions.oceanColor : "#FFF"; d3.select(".pf-c-page__main").style("background-color", color); } @@ -120,15 +119,12 @@ export class BackgroundMap { .scaleExtent(this.scaleExtent) .scale(this.projection.scale()) .translate([0, 0]) // not linked directly to projection -.on("zoom", this.zoomed.bind(this)); +.on("zoom", this.zoomed); this.geo = svg .append("g") .attr("class", "geo") -.style( - "opacity", - this.$scope.state.legendOptions.map.shown ? "1" : "0" -); +.style("opacity", this.options.show ? "1" : "0"); this.geo .append("rect") @@ -137,7 +133,7 @@ export class BackgroundMap { .attr("height", height) .attr("fill", "#FFF"); - if (this.$scope.state.legendOptions.map.shown) { + if (this.options.show) { this.svg.call(this.zoom).on("dblclick.zoom", null); } @@ -198,12 +194,12 @@ export class BackgroundMap { return this.projection.invert([x, y]); } - zoomed() { + zoomed = () => { if ( d3.event && !this.$scope.current_node && !this.$scope.mousedown_node && - this.$scope.state.legendOptions.map.shown + this.options.show ) { let scale = d3.event.scale, t = d3.event.translate, @@ -259,7 +255,7 @@ export class BackgroundMap { } // update the land path with our current projection this.geo.selectAll(".land").attr("d", this.geoPath); - } + }; saveProjection() { if (this.projection) { this.lastProjection.rotate = this.projection.rotate()[0]; diff --git a/console/react/src/topology/qdrTopology.js b/console/react/src/topology/qdrTopology.js index f5eda9e..da4b094 100644 --- a/console/react/src/topology/qdrTopology.js +++ b/console/react/src/topology/qdrTopology.js @@ -103,6 +103,7 @@ class TopologyPage extends Component { ); this.backgroundMap = new BackgroundMap( this, + this.state.legendOptions.map, // notify: called each time a pan/zoom is performed () => { if (this.state.legendOptions.map.show) { @@ -144,17 +145,45 @@ class TopologyPage extends Component { // called only once when the component is initialized componentDidMount = () => { -this.init(); +window.addEventListener("resize", this.resize); +// we only need to update connections during steady-state +this.props.service.management.topology.setUpdateEntities(["connection"]); +// poll the routers for their latest entities (set to connection above) this.props.service.management.topology.startUpdating(); + +// create the svg +this.init(); + +// get notified when a router is added/dropped and when +// the number of connections for a router changes this.props.service.management.topology.addChangedAction("topology", () => { this.init(); }); }; componentWillUnmount = () => { +this.props.service.management.topology.setUpdateEntities([]); this.props.service.management.topology.stopUpdating(); this.props.service.management.topology.delChangedAction("topology"); +this.traffic.remove(); +this.forceData.nodes.savePositions(); +window.removeEventListener("resize&qu
[qpid-dispatch] 01/04: Use light background for topology popup
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit ac78143504ea4d398f1979c90afd86120fb695ba Author: Ernest Allen AuthorDate: Tue Oct 1 09:50:39 2019 -0400 Use light background for topology popup --- console/react/src/App.css | 50 --- 1 file changed, 30 insertions(+), 20 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 6782444..0497c54 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -413,23 +413,6 @@ div.state-container button.pf-c-clipboard-copy__group-copy { background-color: #0e0e0e; } -.qdrPopup { - position: absolute; - z-index: 200; - border-radius: 4px; - border: 1px solid gray; - background-color: white; - color: black; - opacity: 1; - padding: 12px; - font-size: 14px; -} - -table.popupTable td { - padding-right: 5px; - font-size: 10px; -} - g text { pointer-events: none; } @@ -687,15 +670,42 @@ path.empty { border-color: black; } +.qdrPopup { + position: absolute; + z-index: 200; + border-radius: 4px; + border: 1px solid gray; + background-color: white; + color: black; + opacity: 1; + padding: 12px; + font-size: 14px; +} + #popover-div { position: absolute; z-index: 200; border-radius: 4px; - background-color: black; - color: white; + border: 1px solid gray; + background-color: white; + color: black; opacity: 0.95; padding: 12px; - font-size: 14px; + font-size: 16px; +} + +#popover-div h5 { + background-color: #eaeaea; + padding: 0.25em 0.125em; +} + +table.popupTable td { + padding-right: 5px; + font-size: 10px; +} + +table.popupTable tr.header { + font-weight: bold; } #chord text { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Fix address legend
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new ad6919d Fix address legend ad6919d is described below commit ad6919d40de426ee03fd9702bf7e53234f50b7c2 Author: Ernest Allen AuthorDate: Mon Sep 30 17:58:35 2019 -0400 Fix address legend --- console/react/src/App.css | 5 +- console/react/src/amqp/management.js | 33 +++ console/react/src/amqp/topology.js| 143 +++--- console/react/src/qdrService.js | 12 +-- console/react/src/topology/qdrTopology.js | 50 +++ console/react/src/topology/traffic.js | 43 ++--- 6 files changed, 154 insertions(+), 132 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index e018298..6782444 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -490,6 +490,10 @@ path.hittarget { stroke-width: 15px; stroke: transparent; } +path.hittarget.highlighted { + stroke: #6f6; + opacity: 0.5; +} path.link.small { stroke-width: 2.5; @@ -525,7 +529,6 @@ circle.node.reflexive { circle.node.selected { stroke: #6f6 !important; stroke-width: 2px; - fill: #e0e0ff !important; } circle.node.highlighted { stroke: #6f6; diff --git a/console/react/src/amqp/management.js b/console/react/src/amqp/management.js index 4b3bb32..0bdb748 100644 --- a/console/react/src/amqp/management.js +++ b/console/react/src/amqp/management.js @@ -16,45 +16,46 @@ /* global Promise */ -import { ConnectionManager } from './connection.js'; -import Topology from './topology.js'; +import { ConnectionManager } from "./connection.js"; +import Topology from "./topology.js"; export class Management { - constructor(protocol) { + constructor(protocol, interval) { this.connection = new ConnectionManager(protocol); -this.topology = new Topology(this.connection); +this.topology = new Topology(this.connection, interval); } getSchema(callback) { var self = this; -return new Promise(function (resolve, reject) { - self.connection.sendMgmtQuery('GET-SCHEMA') -.then(function (responseAndContext) { +return new Promise(function(resolve, reject) { + self.connection.sendMgmtQuery("GET-SCHEMA").then( +function(responseAndContext) { var response = responseAndContext.response; for (var entityName in response.entityTypes) { var entity = response.entityTypes[entityName]; if (entity.deprecated) { // deprecated entity delete response.entityTypes[entityName]; -} -else { +} else { for (var attributeName in entity.attributes) { var attribute = entity.attributes[attributeName]; if (attribute.deprecated) { // deprecated attribute - delete response.entityTypes[entityName].attributes[attributeName]; + delete response.entityTypes[entityName].attributes[ +attributeName + ]; } } } } self.connection.setSchema(response); - if (callback) -callback(response); + if (callback) callback(response); resolve(response); -}, function (error) { - if (callback) -callback(error); +}, +function(error) { + if (callback) callback(error); reject(error); -}); +} + ); }); } schema() { diff --git a/console/react/src/amqp/topology.js b/console/react/src/amqp/topology.js index 0e8b2e4..dbbc00f 100644 --- a/console/react/src/amqp/topology.js +++ b/console/react/src/amqp/topology.js @@ -22,14 +22,17 @@ class Topology { constructor(connectionManager, interval) { this.connection = connectionManager; this.updatedActions = {}; +this.changedActions = {}; this.entities = []; // which entities to request each topology update this.entityAttribs = { connection: [] }; this._nodeInfo = {}; // info about all known nodes and entities this.filtering = false; // filter out nodes that don't have connection info this.timeout = 5000; this.updateInterval = interval; +console.log(`topology constructed with interval of ${interval}`); this._getTimer = null; this.updating = false; +this.counter = 0; } addUpdatedAction(key, action) { if (typeof action === "function") { @@ -59,8 +62,25 @@ class Topology { this.entityAttribs[entity] = entityAttribs[i].attrs || []; } } + addChangedAction(key, action) { +i
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Consolidate addressComponent in legends for Topology and Message flow pages
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new ed9238f Consolidate addressComponent in legends for Topology and Message flow pages ed9238f is described below commit ed9238f343c40074a3636566c7571e8efb17af22 Author: Ernest Allen AuthorDate: Thu Sep 26 17:21:49 2019 -0400 Consolidate addressComponent in legends for Topology and Message flow pages --- console/react/src/App.css | 17 + .../react/src/{chord => }/addressesComponent.js| 8 +++--- console/react/src/chord/legendComponent.js | 6 ++--- console/react/src/topology/trafficComponent.js | 29 +++--- 4 files changed, 34 insertions(+), 26 deletions(-) diff --git a/console/react/src/App.css b/console/react/src/App.css index 1d89e47..93a6238 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -434,8 +434,7 @@ g text { pointer-events: none; } -svg.address-svg g text, -svg.chord-address-svg g text { +svg.address-svg g text { cursor: pointer; pointer-events: auto; } @@ -457,6 +456,13 @@ svg:not(.active):not(.ctrl) { svg.address-svg { cursor: pointer; } +svg.address-svg { + margin-left: 1.5em; +} +.qdrChord svg.address-svg { + margin-left: 0; +} + path.link.selected:not(.traffic) { /* stroke-dasharray: 10,2; */ stroke: #33f !important; @@ -629,9 +635,6 @@ div.qdrChord { #traffic-address .pf-c-check { padding-bottom: 0.5em; } -.address-svg { - margin-left: 1.5em; -} .popup-info table.popupTable td { font-size: 14px; @@ -738,3 +741,7 @@ div.qdrChord .legend-text { color: black; font-size: 16px; } + +.legend ul { + margin-bottom: 0; +} diff --git a/console/react/src/chord/addressesComponent.js b/console/react/src/addressesComponent.js similarity index 92% rename from console/react/src/chord/addressesComponent.js rename to console/react/src/addressesComponent.js index e0333c2..3193a97 100644 --- a/console/react/src/chord/addressesComponent.js +++ b/console/react/src/addressesComponent.js @@ -30,13 +30,15 @@ class AddressesComponent extends Component { }; dotHover = (address, over) => { -this.props.handleHoverAddress(address, over); +if (this.props.handleHoverAddress) { + this.props.handleHoverAddress(address, over); +} }; coloredDot = (address, i) => { return ( this.dotHover(address, true)} onMouseOut={() => this.dotHover(address, false)} > - + {this.props.addresses[address] ? (  diff --git a/console/react/src/chord/legendComponent.js b/console/react/src/chord/legendComponent.js index a9a2901..9ad75ac 100644 --- a/console/react/src/chord/legendComponent.js +++ b/console/react/src/chord/legendComponent.js @@ -26,7 +26,7 @@ import { } from "@patternfly/react-core"; import OptionsComponent from "./optionsComponent"; import RoutersComponent from "./routersComponent"; -import AddressesComponent from "./addressesComponent"; +import AddressesComponent from "../addressesComponent"; class LegendComponent extends Component { constructor(props) { @@ -41,7 +41,7 @@ class LegendComponent extends Component { }; return ( - + toggle("options")} @@ -96,7 +96,7 @@ class LegendComponent extends Component { > diff --git a/console/react/src/topology/trafficComponent.js b/console/react/src/topology/trafficComponent.js index e936582..6affdf5 100644 --- a/console/react/src/topology/trafficComponent.js +++ b/console/react/src/topology/trafficComponent.js @@ -19,6 +19,7 @@ under the License. import React, { Component } from "react"; import { Checkbox } from "@patternfly/react-core"; +import AddressesComponent from "../addressesComponent"; class TrafficComponent extends Component { constructor(props) { @@ -75,21 +76,19 @@ class TrafficComponent extends Component { name="dots" /> - - -{Object.keys(this.props.addresses).length === 0 ? ( - There is no traffic -) : ( - Object.keys(this.props.addresses).map((address, i) => { -return ( - -{this.coloredDot(address, i)} - -); - }) -)} - - +{this.props.dots ? ( + + + +) : ( + +)}
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Topology map and message flow chord diagram
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new 38fee58 Topology map and message flow chord diagram 38fee58 is described below commit 38fee584402deeb4b1273f6b3f32453326771717 Author: Ernest Allen AuthorDate: Thu Sep 26 15:03:22 2019 -0400 Topology map and message flow chord diagram --- console/react/public/data/countries.json |2 + console/react/src/App.css | 133 +- console/react/src/amqp/topology.js | 12 +- console/react/src/chord/addressesComponent.js | 86 + console/react/src/chord/layout/layout.js | 81 +- .../src/{topology => chord}/legendComponent.js | 88 +- console/react/src/chord/optionsComponent.js| 53 + console/react/src/chord/qdrChord.js| 1666 +++- console/react/src/chord/ribbon/ribbon.js | 107 +- console/react/src/chord/routersComponent.js| 56 + console/react/src/layout.js|7 +- console/react/src/topology/legend.js | 49 +- console/react/src/topology/legendComponent.js |8 +- console/react/src/topology/map.js | 216 ++- console/react/src/topology/mapLegendComponent.jsx | 94 ++ console/react/src/topology/qdrTopology.js | 17 +- console/react/src/topology/traffic.js |5 +- 17 files changed, 1638 insertions(+), 1042 deletions(-) diff --git a/console/react/public/data/countries.json b/console/react/public/data/countries.json new file mode 100644 index 000..8b17350 --- /dev/null +++ b/console/react/public/data/countries.json @@ -0,0 +1,2 @@ + +{"type":"Topology","objects":{"countries":{"type":"GeometryCollection","geometries":[{"type":"Polygon","id":"AFG","properties":{"name":"Afghanistan"},"arcs":[[0,1,2,3,4,5]]},{"type":"MultiPolygon","id":"AGO","properties":{"name":"Angola"},"arcs":[[[6,7,8,9]],[[10,11,12]]]},{"type":"Polygon","id":"ALB","properties":{"name":"Albania"},"arcs":[[13,14,15,16,17,18,19,20]]},{"type":"Polygon","id":"ALD","properties":{"name":"Aland"},"arcs":[[21]]},{"type":"Polygon","id":"AND","properties":{"nam [...] \ No newline at end of file diff --git a/console/react/src/App.css b/console/react/src/App.css index f2a7a12..1d89e47 100644 --- a/console/react/src/App.css +++ b/console/react/src/App.css @@ -379,7 +379,8 @@ div.state-container button.pf-c-clipboard-copy__group-copy { width: 100%; } -.qdrTopology dl.pf-c-accordion { +.qdrTopology dl.pf-c-accordion, +.qdrChord dl.pf-c-accordion { position: absolute; width: 20em; right: 1em; @@ -388,16 +389,19 @@ div.state-container button.pf-c-clipboard-copy__group-copy { margin-top: 1em; } -.qdrTopology dl.pf-c-accordion * { +.qdrTopology dl.pf-c-accordion *, +.qdrChord dl.pf-c-accordion * { border-left-color: transparent; } -.qdrTopology dl.pf-c-accordion dt { +.qdrTopology dl.pf-c-accordion dt, +.qdrChord dl.pf-c-accordion dt { background-image: linear-gradient(to bottom, #fafafa 0, #ededed 100%); background-repeat: repeat-x; } -.qdrTopology dl.pf-c-accordion h3 { +.qdrTopology dl.pf-c-accordion h3, +.qdrChord dl.pf-c-accordion h3 { margin-top: 0; margin-bottom: 0; } @@ -430,7 +434,8 @@ g text { pointer-events: none; } -svg.address-svg g text { +svg.address-svg g text, +svg.chord-address-svg g text { cursor: pointer; pointer-events: auto; } @@ -597,18 +602,28 @@ svg#svglegend { #traffic-expand, #map-expand, #arrows-expand { - max-height: 20em; + max-height: 23em; } -div.qdrTopology { +div.qdrTopology, +div.qdrChord { text-align: left; } #arrows-expand label, #traffic-dots label, -#traffic-congestion label { +#traffic-congestion label, +#options-expand label { position: relative; top: 4px; + padding-left: 0.25em; +} + +#arrows-expand .pf-c-check { + padding-top: 0.5em; +} +.map-legend label { + padding-left: 1em; } #traffic-address .pf-c-check { @@ -621,3 +636,105 @@ div.qdrTopology { .popup-info table.popupTable td { font-size: 14px; } + +circle.flow { + pointer-events: none; +} +/* for message flow chord diagram */ +path.chord { + fill-opacity: 0.67; +} +#circle circle { + fill: none; + pointer-events: all; +} +path.fade { + opacity: 0.1; +} + +.routers rect { + fill: white; +} + +g.arc text {
[qpid-dispatch] branch eallen-DISPATCH-1385 updated: Added background map
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/eallen-DISPATCH-1385 by this push: new c8040be Added background map c8040be is described below commit c8040beacd1795330942420a9b383d83209d4a11 Author: Ernest Allen AuthorDate: Mon Sep 23 19:02:16 2019 -0400 Added background map --- console/react/package.json| 1 + console/react/src/topology/map.js | 16 + console/react/src/topology/qdrTopology.js | 39 +-- console/react/yarn.lock | 17 ++ 4 files changed, 51 insertions(+), 22 deletions(-) diff --git a/console/react/package.json b/console/react/package.json index 434e2da..52deca4 100644 --- a/console/react/package.json +++ b/console/react/package.json @@ -23,6 +23,7 @@ "react-scripts": "3.0.1", "redux": "^4.0.1", "rhea": "^1.0.8", +"topojson-client": "^3.0.1", "typescript": "^3.5.2" }, "scripts": { diff --git a/console/react/src/topology/map.js b/console/react/src/topology/map.js index 2fd498b..91942ed 100644 --- a/console/react/src/topology/map.js +++ b/console/react/src/topology/map.js @@ -17,7 +17,9 @@ specific language governing permissions and limitations under the License. */ -/* global angular d3 topojson Promise */ +import * as d3 from "d3"; +import * as topojson from "topojson-client"; + const maxnorth = 84; const maxsouth = 60; const MAPOPTIONSKEY = "QDRMapOptions"; @@ -31,10 +33,14 @@ export class BackgroundMap { this.$scope = $scope; this.initialized = false; this.notify = notifyFn; -$scope.mapOptions = angular.fromJson(localStorage[MAPOPTIONSKEY]) || { - areaColor: defaultLandColor, - oceanColor: defaultOceanColor -}; + +let savedOptions = localStorage.getItem(MAPOPTIONSKEY); +this.mapOptions = savedOptions + ? JSON.parse(savedOptions) + : { + areaColor: defaultLandColor, + oceanColor: defaultOceanColor +}; this.last = { translate: [0, 0], scale: null diff --git a/console/react/src/topology/qdrTopology.js b/console/react/src/topology/qdrTopology.js index 13542a0..15b1b3a 100644 --- a/console/react/src/topology/qdrTopology.js +++ b/console/react/src/topology/qdrTopology.js @@ -94,6 +94,21 @@ class TopologyPage extends Component { this.forceData, ["dots", "congestion"].filter(t => this.state.legendOptions.traffic[t]) ); +this.backgroundMap = new BackgroundMap(this, () => {}); +this.backgroundMap = new BackgroundMap( + this, + // notify: called each time a pan/zoom is performed + () => { +if (this.legendOptions.map.open) { + // set all the nodes' x,y position based on their saved lon,lat + this.forceData.nodes.setXY(this.backgroundMap); + this.forceData.nodes.savePositions(); + // redraw the nodes in their x,y position and let non-fixed nodes bungie + this.force.start(); + this.clearPopups(); +} + } +); } // called only once when the component is initialized @@ -133,13 +148,13 @@ class TopologyPage extends Component { .attr("width", this.width) .attr("height", this.height) .on("click", this.clearPopups); - /* -// read the map data from the data file and build the map layer - backgroundMap.init($scope, svg, width, height).then(function() { -forceData.nodes.saveLonLat(backgroundMap); -backgroundMap.setMapOpacity($scope.legendOptions.map.open); - }); - */ + // read the map data from the data file and build the map layer + this.backgroundMap +.init(this, this.svg, this.width, this.height) +.then(() => { + this.forceData.nodes.saveLonLat(this.backgroundMap); + this.backgroundMap.setMapOpacity(this.legendOptions.map.open); +}); addDefs(this.svg); addGradient(this.svg); } @@ -211,7 +226,7 @@ class TopologyPage extends Component { .on("tick", this.tick) .on("end", () => { this.forceData.nodes.savePositions(); -//this.forceData.nodes.saveLonLat(backgroundMap); +this.forceData.nodes.saveLonLat(this.backgroundMap); }) .start(); for (let i = 0; i < this.forceData.nodes.nodes.length; i++) { @@ -313,7 +328,7 @@ class TopologyPage extends Component { .nodes(this.forceData.nodes.nodes) .links(this.forceData.links.links) .start(); -//this.forceData.nodes.saveLonLat(backgroundMap); +t
[qpid-dispatch] 01/01: Working on topology
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit bc64f77023a193e7e4dab2910891f5090abbf3b1 Author: Ernest Allen AuthorDate: Mon Sep 16 18:03:00 2019 -0400 Working on topology --- bin/export.sh | 105 --- bin/find_ports.sh | 28 - bin/grinder | 370 - bin/make_standalone_console_tarball.sh| 107 --- bin/rebuild.sh| 31 - bin/record-coverage.sh| 80 -- bin/test.sh | 43 - console/stand-alone/package-lock.json | 958 ++ console/stand-alone/package.json | 6 +- console/stand-alone/plugin/html/tmplListTree.html | 42 - tests/config-2/B.conf | 6 + 11 files changed, 461 insertions(+), 1315 deletions(-) diff --git a/bin/export.sh b/bin/export.sh deleted file mode 100755 index 539af90..000 --- a/bin/export.sh +++ /dev/null @@ -1,105 +0,0 @@ -#!/bin/bash - -# -# 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. -# - -# export.sh - Create a release archive. - -# run this script like this - -# Before executing this script, change directory to the folder in which this file is located, for example. -# 1. cd /home/jdoe/qpid-dispatch/bin -# Run the script like so - -# 2. ./export.sh -# (Example : ./export.sh /home/jdoe/ 1.5.1 -# (/home/jdoe is the folder you want the tar.gz file to be put - specify the full path) -# 1.5.1 is the tag name -# A file named qpid-dispatch-.tar.gz will be created at - -# Simply running ./export.sh will put the tar.gz file in the current folder and use the very latest createed tag - -set -e -trap "cleanup" 0 1 2 3 9 11 13 15 - -# ME=export.sh -ME=$(basename ${0}) - -SRC=$(dirname $(dirname $(readlink -f $0))) -echo Source directory=${SRC} - -usage() -{ -echo -echo "Usage: ${ME} [DIR] [TAG]" -exit 1 -} - -cleanup() -{ -trap - 0 1 2 3 9 11 13 15 -echo -[ ${WORKDIR} ] && [ -d ${WORKDIR} ] && rm -rf ${WORKDIR} -} - - -DIR=$PWD - -# This will get the latest created tag -TAG=$(git describe --tags --always) -echo Using tag ${TAG} to create archive - -## -## Allow overrides to be passed on the cmdline -## -if [ $# -gt 2 ]; then -usage -elif [ $# -ge 1 ]; then -DIR=$1 -if [ $# -eq 2 ]; then -TAG=$2 -fi -fi - -# verify the tag exists -git rev-list -1 tags/${TAG} -- >/dev/null || usage - -# mktemp command creates a temp directory for example - /tmp/tmp.k8vDddIzni -WORKDIR=$(mktemp -d) -echo Working Directory=${WORKDIR} - - -## -## Create the archive -## -( -cd ${SRC} -MTIME=$(date -d @`git log -1 --pretty=format:%ct tags/${TAG}` '+%Y-%m-%d %H:%M:%S') -VERSION=$(git show tags/${TAG}:VERSION.txt) -ARCHIVE=$DIR/qpid-dispatch-${VERSION}.tar.gz -PREFIX=qpid-dispatch-${VERSION} -[ -d ${WORKDIR} ] || mkdir -p ${WORKDIR} -git archive --format=tar --prefix=${PREFIX}/ tags/${TAG} \ -| tar -x -C ${WORKDIR} -cd ${WORKDIR} -tar -c -z \ ---owner=root --group=root --numeric-owner \ ---mtime="${MTIME}" \ --f ${ARCHIVE} ${PREFIX} -echo Created "${ARCHIVE}" -echo Success!!! -) diff --git a/bin/find_ports.sh b/bin/find_ports.sh deleted file mode 100755 index 4c1239e..000 --- a/bin/find_ports.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -# -# 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, -#
[qpid-dispatch] branch eallen-DISPATCH-1385 created (now bc64f77)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch eallen-DISPATCH-1385 in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. at bc64f77 Working on topology This branch includes the following new commits: new bc64f77 Working on topology The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1399 Allow arrows on console's topology page to be hidden
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new c6fe7ec DISPATCH-1399 Allow arrows on console's topology page to be hidden c6fe7ec is described below commit c6fe7ec4dfe1fb0538c750932a812ccc43904f56 Author: Ernest Allen AuthorDate: Wed Aug 21 12:10:24 2019 -0400 DISPATCH-1399 Allow arrows on console's topology page to be hidden --- console/stand-alone/plugin/html/qdrTopology.html | 12 + .../stand-alone/plugin/js/topology/qdrTopology.js | 355 + 2 files changed, 235 insertions(+), 132 deletions(-) diff --git a/console/stand-alone/plugin/html/qdrTopology.html b/console/stand-alone/plugin/html/qdrTopology.html index 4c1a7d2..4d6e741 100644 --- a/console/stand-alone/plugin/html/qdrTopology.html +++ b/console/stand-alone/plugin/html/qdrTopology.html @@ -292,6 +292,18 @@ td.more-info { + + + + +Show arrows between routers + + + +Show arrows to clients + + + diff --git a/console/stand-alone/plugin/js/topology/qdrTopology.js b/console/stand-alone/plugin/js/topology/qdrTopology.js index 6ecbb33..96391a9 100644 --- a/console/stand-alone/plugin/js/topology/qdrTopology.js +++ b/console/stand-alone/plugin/js/topology/qdrTopology.js @@ -21,7 +21,11 @@ under the License. /** * @module QDR */ -import { QDRLogger, QDRRedirectWhenConnected, QDRTemplatePath } from "../qdrGlobals.js"; +import { + QDRLogger, + QDRRedirectWhenConnected, + QDRTemplatePath +} from "../qdrGlobals.js"; import { Traffic } from "./traffic.js"; import { separateAddresses } from "../chord/filters.js"; import { Nodes } from "./nodes.js"; @@ -30,7 +34,13 @@ import { nextHop, connectionPopupHTML, getSizes } from "./topoUtils.js"; import { BackgroundMap } from "./map.js"; import { utils } from "../amqp/utilities.js"; import { Legend } from "./legend.js"; -import { appendCircle, appendContent, addGradient, addDefs, updateState } from "./svgUtils.js"; +import { + appendCircle, + appendContent, + addGradient, + addDefs, + updateState +} from "./svgUtils.js"; /** * @module QDR */ @@ -71,10 +81,17 @@ export class TopologyController { open: false } }; +if (!$scope.legendOptions.options) { + $scope.legendOptions.options = { +open: false, +routerArrows: false, +clientArrows: true + }; +} let backgroundMap = new BackgroundMap( $scope, // notify: called each time a pan/zoom is performed - function () { + function() { if ($scope.legendOptions.map.open) { // set all the nodes' x,y position based on their saved lon,lat forceData.nodes.setXY(backgroundMap); @@ -100,27 +117,45 @@ export class TopologyController { urlPrefix ); -let changeTraffic = function (checked, type) { +let changeTraffic = function(checked, type) { localStorage[TOPOOPTIONSKEY] = JSON.stringify($scope.legendOptions); if ($scope.legendOptions.traffic.open) { if (checked) { - traffic.addAnimationType(type, separateAddresses, Nodes.radius("inter-router")); + traffic.addAnimationType( +type, +separateAddresses, +Nodes.radius("inter-router") + ); } else { traffic.remove(type); } } restart(); }; +const saveLegendOptions = () => { + localStorage[TOPOOPTIONSKEY] = JSON.stringify($scope.legendOptions); +}; // the dots animation was checked/unchecked -$scope.$watch("legendOptions.traffic.dots", function (newValue) { +$scope.$watch("legendOptions.traffic.dots", function(newValue) { changeTraffic(newValue, "dots"); }); +$scope.$watch("legendOptions.options.routerArrows", function() { + saveLegendOptions(); + restart(); +}); +$scope.$watch("legendOptions.options.clientArrows", function() { + saveLegendOptions(); + restart(); +}); +$scope.$watch("legendOptions.options.open", function() { + saveLegendOptions(); +}); // the congestion animation was checked/unchecked -$scope.$watch("legendOptions.traffic.congestion", function (newValue) { +$scope.$watch("legendOptions.traffic.congestion", function(newValue) { changeTraffic(newValue, &
[qpid-dispatch] branch master updated: DISPATCH-1398 Removed references to missing functions in console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 3132b88 DISPATCH-1398 Removed references to missing functions in console 3132b88 is described below commit 3132b882ac97dd83cf737d7936ddd4914781adcc Author: Ernest Allen AuthorDate: Mon Aug 19 12:05:22 2019 -0400 DISPATCH-1398 Removed references to missing functions in console --- console/hawtio/src/main/webapp/plugin/html/tmplListTree.html | 2 +- console/stand-alone/plugin/html/qdrList.html | 2 +- console/stand-alone/plugin/js/qdrList.js | 3 +-- 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/console/hawtio/src/main/webapp/plugin/html/tmplListTree.html b/console/hawtio/src/main/webapp/plugin/html/tmplListTree.html index d528846..710ff0a 100644 --- a/console/hawtio/src/main/webapp/plugin/html/tmplListTree.html +++ b/console/hawtio/src/main/webapp/plugin/html/tmplListTree.html @@ -29,7 +29,7 @@ - + diff --git a/console/stand-alone/plugin/html/qdrList.html b/console/stand-alone/plugin/html/qdrList.html index 76a5706..18bb1c0 100644 --- a/console/stand-alone/plugin/html/qdrList.html +++ b/console/stand-alone/plugin/html/qdrList.html @@ -72,7 +72,7 @@ under the License. - + diff --git a/console/stand-alone/plugin/js/qdrList.js b/console/stand-alone/plugin/js/qdrList.js index a331cf5..047a6a9 100644 --- a/console/stand-alone/plugin/js/qdrList.js +++ b/console/stand-alone/plugin/js/qdrList.js @@ -36,7 +36,6 @@ export class ListController { ActivatedKey = 'QDRActivatedKey'; $scope.details = {}; -$scope.tmplListTree = QDRTemplatePath + 'tmplListTree.html'; $scope.selectedEntity = localStorage[SelectedEntityKey] || 'address'; $scope.ActivatedKey = localStorage[ActivatedKey] || null; if ($scope.selectedEntity == 'undefined') @@ -944,7 +943,7 @@ export class ListController { serviceReady = true; initTree(); }); -// called by ng-init="treeReady()" in tmplListTree.html +// called by ng-init="treeReady()" in qdrList.html $scope.treeReady = function () { treeReady = true; initTree(); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1376 Remove copyright and rename console config file
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 11cb5e5 DISPATCH-1376 Remove copyright and rename console config file 11cb5e5 is described below commit 11cb5e51e9e87b5f867a1b2ed12ecdc85e671ddd Author: Ernest Allen AuthorDate: Wed Aug 14 14:08:56 2019 -0400 DISPATCH-1376 Remove copyright and rename console config file --- console/CMakeLists.txt | 2 +- console/stand-alone/config.json | 3 +++ console/stand-alone/console-config.json | 4 console/stand-alone/plugin/js/qdrAbout.js | 6 +++--- console/stand-alone/plugin/js/qdrGlobals.js | 17 - 5 files changed, 11 insertions(+), 21 deletions(-) diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index efc4992..07b4a5f 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -79,7 +79,7 @@ if(CONSOLE_INSTALL) ${CONSOLE_SOURCE_DIR}/index.html ${CONSOLE_SOURCE_DIR}/main.js ${CONSOLE_SOURCE_DIR}/favicon-32x32.png -${CONSOLE_SOURCE_DIR}/console-config.json +${CONSOLE_SOURCE_DIR}/config.json ) ## Files copied to the img/ dir set(IMAGES diff --git a/console/stand-alone/config.json b/console/stand-alone/config.json new file mode 100644 index 000..e0eca01 --- /dev/null +++ b/console/stand-alone/config.json @@ -0,0 +1,3 @@ +{ + "title": "Apache Qpid Dispach Console" +} \ No newline at end of file diff --git a/console/stand-alone/console-config.json b/console/stand-alone/console-config.json deleted file mode 100644 index 447c3bf..000 --- a/console/stand-alone/console-config.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "company": "Apache", - "product": "Dispatch" -} \ No newline at end of file diff --git a/console/stand-alone/plugin/js/qdrAbout.js b/console/stand-alone/plugin/js/qdrAbout.js index 5d0b794..01737c9 100644 --- a/console/stand-alone/plugin/js/qdrAbout.js +++ b/console/stand-alone/plugin/js/qdrAbout.js @@ -25,10 +25,10 @@ export class AboutController { getConfigVars().then(response => { $timeout(function() { -$scope.additionalInfo = `Console for ${ - response.QDR_ROUTER_NAME +$scope.additionalInfo = `${ + response.QDR_CONSOLE_TITLE }: A high-performance, lightweight AMQP 1.0 message router, written in C and built on Qpid Proton. It provides flexible and scalable interconnect between any AMQP endpoints, whether they be clients, brokers or other AMQP-enabled services.`; -$scope.copyright = response.QDR_CONSOLE_COPYRIGHT; +$scope.copyright = "License Apache 2.0"; $scope.imgAlt = response.QDR_CONSOLE_TITLE; $scope.imgSrc = "img/logo-alt.svg"; $scope.title = response.QDR_CONSOLE_TITLE; diff --git a/console/stand-alone/plugin/js/qdrGlobals.js b/console/stand-alone/plugin/js/qdrGlobals.js index 38c69f6..b2eff32 100644 --- a/console/stand-alone/plugin/js/qdrGlobals.js +++ b/console/stand-alone/plugin/js/qdrGlobals.js @@ -70,21 +70,12 @@ export var QDRRedirectWhenConnected = function($location, org) { }; export var getConfigVars = () => - new Promise((resolve, reject) => { -$.getJSON("console-config.json", function() {}).done(function(s) { - console.log( -`got x-stream text ${s.title} - ${s.router} - ${s.copyright}` - ); - s.QDR_CONSOLE_TITLE = `${s.company} ${s.product} Console`; + new Promise(resolve => { +$.getJSON("config.json", function() {}).done(function(s) { + s.QDR_CONSOLE_TITLE = s.title; document.title = s.QDR_CONSOLE_TITLE; - - s.QDR_ROUTER_NAME = `${s.company} ${s.product} Router`; - s.COPYRIGHT_YEAR = "2019"; - s.QDR_CONSOLE_COPYRIGHT = `Copyright ${s.COPYRIGHT_YEAR} ${s.company}`; resolve(s); }); }); -$(document).ready(function(e) { - getConfigVars(); -}); +$(document).ready(getConfigVars); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1376 Fix product name and copyright for console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new f0dae4c DISPATCH-1376 Fix product name and copyright for console f0dae4c is described below commit f0dae4c5d6ee65fd2a2399e131fa60930d081bc3 Author: Ernest Allen AuthorDate: Mon Aug 5 13:27:12 2019 -0400 DISPATCH-1376 Fix product name and copyright for console --- console/stand-alone/console-config.json | 4 ++-- console/stand-alone/main.js | 3 +-- console/stand-alone/plugin/js/qdrAbout.js | 19 +-- console/stand-alone/plugin/js/qdrGlobals.js | 14 ++ 4 files changed, 22 insertions(+), 18 deletions(-) diff --git a/console/stand-alone/console-config.json b/console/stand-alone/console-config.json index 56f5e6f..447c3bf 100644 --- a/console/stand-alone/console-config.json +++ b/console/stand-alone/console-config.json @@ -1,4 +1,4 @@ { - "company": "Red Hat", - "product": "Interconnect" + "company": "Apache", + "product": "Dispatch" } \ No newline at end of file diff --git a/console/stand-alone/main.js b/console/stand-alone/main.js index 474349b..0400876 100644 --- a/console/stand-alone/main.js +++ b/console/stand-alone/main.js @@ -31,7 +31,6 @@ import { QDRLogger, QDRTemplatePath, QDR_LAST_LOCATION, - QDR_CONSOLE_TITLE, getConfigVars } from "./plugin/js/qdrGlobals.js"; import { QDRService } from "./plugin/js/qdrService.js"; @@ -302,7 +301,7 @@ import { posint } from "./plugin/js/posintDirective.js"; $scope.console_logo = ""; getConfigVars().then(response => { $timeout(function() { -$scope.console_logo = `${response.company} ${response.product} Console`; +$scope.console_logo = response.QDR_CONSOLE_TITLE; }); }); $scope.alerts = []; diff --git a/console/stand-alone/plugin/js/qdrAbout.js b/console/stand-alone/plugin/js/qdrAbout.js index c81b2ab..5d0b794 100644 --- a/console/stand-alone/plugin/js/qdrAbout.js +++ b/console/stand-alone/plugin/js/qdrAbout.js @@ -17,17 +17,24 @@ specific language governing permissions and limitations under the License. */ -import { QDR_CONSOLE_TITLE, QDR_CONSOLE_COPYRIGHT } from "./qdrGlobals.js"; +import { getConfigVars } from "./qdrGlobals.js"; export class AboutController { constructor($scope, QDRService, $timeout) { this.controllerName = "QDR.AboutController"; -$scope.additionalInfo = `Console for the ${QDR_CONSOLE_TITLE}: A high-performance, lightweight AMQP 1.0 message router, written in C and built on Qpid Proton. It provides flexible and scalable interconnect between any AMQP endpoints, whether they be clients, brokers or other AMQP-enabled services.`; -$scope.copyright = QDR_CONSOLE_COPYRIGHT; -$scope.imgAlt = QDR_CONSOLE_TITLE; -$scope.imgSrc = "img/logo-alt.svg"; -$scope.title = QDR_CONSOLE_TITLE; +getConfigVars().then(response => { + $timeout(function() { +$scope.additionalInfo = `Console for ${ + response.QDR_ROUTER_NAME +}: A high-performance, lightweight AMQP 1.0 message router, written in C and built on Qpid Proton. It provides flexible and scalable interconnect between any AMQP endpoints, whether they be clients, brokers or other AMQP-enabled services.`; +$scope.copyright = response.QDR_CONSOLE_COPYRIGHT; +$scope.imgAlt = response.QDR_CONSOLE_TITLE; +$scope.imgSrc = "img/logo-alt.svg"; +$scope.title = response.QDR_CONSOLE_TITLE; + }); +}); + $scope.productInfo = [ { name: "Version", value: "" }, { name: "Server Name", value: window.location.host }, diff --git a/console/stand-alone/plugin/js/qdrGlobals.js b/console/stand-alone/plugin/js/qdrGlobals.js index e599b6d..38c69f6 100644 --- a/console/stand-alone/plugin/js/qdrGlobals.js +++ b/console/stand-alone/plugin/js/qdrGlobals.js @@ -69,20 +69,18 @@ export var QDRRedirectWhenConnected = function($location, org) { $location.search("org", org); }; -export var QDR_CONSOLE_TITLE = "Console"; -export var QDR_ROUTER_NAME = "Router"; -export var QDR_CONSOLE_COPYRIGHT = "Copyright 2019"; - export var getConfigVars = () => new Promise((resolve, reject) => { $.getJSON("console-config.json", function() {}).done(function(s) { console.log( `got x-stream text ${s.title} - ${s.router} - ${s.copyright}` ); - document.title = s.title; - QDR_CONSOLE_TITLE = `${s.company} ${s.product} Console`; - QDR_ROUTER_NAME = `${s.company} ${s.product} Router`; - QDR_CONSOLE_COPYRIGHT = `Copyright 2019 ${s.co
[qpid-dispatch] 02/02: DISPATCH-1376 Read product name from config file
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit b6828b55256428ab5077727591fded82f6002504 Author: Ernest Allen AuthorDate: Mon Aug 5 13:11:35 2019 -0400 DISPATCH-1376 Read product name from config file --- console/CMakeLists.txt | 1 + console/stand-alone/index.html | 4 +- console/stand-alone/main.js | 14 - console/stand-alone/plugin/css/dispatch.css | 3 + console/stand-alone/plugin/js/qdrAbout.js | 89 + console/stand-alone/plugin/js/qdrGlobals.js | 63 +++- 6 files changed, 119 insertions(+), 55 deletions(-) diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index 7bdb481..efc4992 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -79,6 +79,7 @@ if(CONSOLE_INSTALL) ${CONSOLE_SOURCE_DIR}/index.html ${CONSOLE_SOURCE_DIR}/main.js ${CONSOLE_SOURCE_DIR}/favicon-32x32.png +${CONSOLE_SOURCE_DIR}/console-config.json ) ## Files copied to the img/ dir set(IMAGES diff --git a/console/stand-alone/index.html b/console/stand-alone/index.html index c4fb2ab..6c7b50d 100644 --- a/console/stand-alone/index.html +++ b/console/stand-alone/index.html @@ -23,7 +23,7 @@ under the License. -Apache Qpid Dispatch Console + @@ -55,7 +55,7 @@ under the License. - +{{console_logo}} diff --git a/console/stand-alone/main.js b/console/stand-alone/main.js index ce9759d..474349b 100644 --- a/console/stand-alone/main.js +++ b/console/stand-alone/main.js @@ -30,7 +30,9 @@ under the License. import { QDRLogger, QDRTemplatePath, - QDR_LAST_LOCATION + QDR_LAST_LOCATION, + QDR_CONSOLE_TITLE, + getConfigVars } from "./plugin/js/qdrGlobals.js"; import { QDRService } from "./plugin/js/qdrService.js"; import { QDRChartService } from "./plugin/js/qdrChartService.js"; @@ -276,8 +278,8 @@ import { posint } from "./plugin/js/posintDirective.js"; $scope.topLevelTabs = []; $scope.topLevelTabs.push({ id: "qdr", -content: "Qpid Dispatch Router Console", -title: "Dispatch Router Console", +content: document.title, +title: document.title, isValid: function() { return true; }, @@ -297,6 +299,12 @@ import { posint } from "./plugin/js/posintDirective.js"; $timeout, QDRService ) { +$scope.console_logo = ""; +getConfigVars().then(response => { + $timeout(function() { +$scope.console_logo = `${response.company} ${response.product} Console`; + }); +}); $scope.alerts = []; $scope.breadcrumb = {}; $scope.closeAlert = function(index) { diff --git a/console/stand-alone/plugin/css/dispatch.css b/console/stand-alone/plugin/css/dispatch.css index 0c79e1b..8e66859 100644 --- a/console/stand-alone/plugin/css/dispatch.css +++ b/console/stand-alone/plugin/css/dispatch.css @@ -1663,6 +1663,9 @@ svg { span.logo { letter-spacing: 2px; font-weight: bold; +color: white; +margin: 8px; +display: inline-block; } /* using fancytree instead of treeview */ diff --git a/console/stand-alone/plugin/js/qdrAbout.js b/console/stand-alone/plugin/js/qdrAbout.js index 9d72138..c81b2ab 100644 --- a/console/stand-alone/plugin/js/qdrAbout.js +++ b/console/stand-alone/plugin/js/qdrAbout.js @@ -17,54 +17,73 @@ specific language governing permissions and limitations under the License. */ +import { QDR_CONSOLE_TITLE, QDR_CONSOLE_COPYRIGHT } from "./qdrGlobals.js"; + export class AboutController { constructor($scope, QDRService, $timeout) { -this.controllerName = 'QDR.AboutController'; +this.controllerName = "QDR.AboutController"; -$scope.additionalInfo = "Console for the Apache Qpid dispatch router: A high-performance, lightweight AMQP 1.0 message router, written in C and built on Qpid Proton. It provides flexible and scalable interconnect between any AMQP endpoints, whether they be clients, brokers or other AMQP-enabled services."; -$scope.copyright = "Apache License, Version 2.0"; -$scope.imgAlt = "Qpid Dispatch Router Logo"; +$scope.additionalInfo = `Console for the ${QDR_CONSOLE_TITLE}: A high-performance, lightweight AMQP 1.0 message router, written in C and built on Qpid Proton. It provides flexible and scalable interconnect between any AMQP endpoints, whether they be clients, brokers or other AMQP-enabled services.`; +$scope.copyright = QDR_CONSOLE_COPYRIGHT; +$scope.imgAlt = QDR
[qpid-dispatch] 01/02: DISPATCH-1376 Added console config file
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git commit da67e0ce487530f502db0466bcdbc91df3a16414 Author: Ernest Allen AuthorDate: Mon Aug 5 13:10:25 2019 -0400 DISPATCH-1376 Added console config file --- console/stand-alone/console-config.json | 4 1 file changed, 4 insertions(+) diff --git a/console/stand-alone/console-config.json b/console/stand-alone/console-config.json new file mode 100644 index 000..56f5e6f --- /dev/null +++ b/console/stand-alone/console-config.json @@ -0,0 +1,4 @@ +{ + "company": "Red Hat", + "product": "Interconnect" +} \ No newline at end of file - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated (1030120 -> b6828b5)
This is an automated email from the ASF dual-hosted git repository. eallen pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git. from 1030120 NO-JIRA - Fix typo and minor issues in doc. This closes #547. new da67e0c DISPATCH-1376 Added console config file new b6828b5 DISPATCH-1376 Read product name from config file The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: console/CMakeLists.txt | 1 + console/stand-alone/console-config.json | 4 ++ console/stand-alone/index.html | 4 +- console/stand-alone/main.js | 14 - console/stand-alone/plugin/css/dispatch.css | 3 + console/stand-alone/plugin/js/qdrAbout.js | 89 + console/stand-alone/plugin/js/qdrGlobals.js | 63 +++- 7 files changed, 123 insertions(+), 55 deletions(-) create mode 100644 console/stand-alone/console-config.json - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1370 Move schema, connect, and entities tabs to the right on console's nav bar
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 7ef9afa DISPATCH-1370 Move schema, connect, and entities tabs to the right on console's nav bar 7ef9afa is described below commit 7ef9afa202dc7d38e80eb6cfca23f56805b45178 Author: Ernest Allen AuthorDate: Fri Jun 14 13:47:12 2019 -0400 DISPATCH-1370 Move schema, connect, and entities tabs to the right on console's nav bar --- console/stand-alone/plugin/js/navbar.js | 150 +++- 1 file changed, 91 insertions(+), 59 deletions(-) diff --git a/console/stand-alone/plugin/js/navbar.js b/console/stand-alone/plugin/js/navbar.js index 64d41c0..6df3f7c 100644 --- a/console/stand-alone/plugin/js/navbar.js +++ b/console/stand-alone/plugin/js/navbar.js @@ -20,98 +20,130 @@ under the License. export class NavBarController { constructor(QDRService, QDRChartService, $scope, $routeParams, $location) { -this.controllerName = 'QDR.NavBarController'; +this.controllerName = "QDR.NavBarController"; $scope.breadcrumbs = [ { -content: ' Connect', -title: 'Connect to a router', -isValid: function () { return true; }, -href: '#/connect', -name: 'Connect' - }, - { content: ' Overview', -title: 'View router overview', -isValid: function (QDRService) {return QDRService.management.connection.is_connected(); }, -href: '#/overview', -name: 'Overview' - }, - { -content: ' Entities', -title: 'View the attributes of the router entities', -isValid: function (QDRService) { return QDRService.management.connection.is_connected(); }, -href: '#/list', -name: 'Entities' +title: "View router overview", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/overview", +name: "Overview" }, { content: ' Topology', -title: 'View router network topology', -isValid: function (QDRService) { return QDRService.management.connection.is_connected(); }, -href: '#/topology', -name: 'Topology' +title: "View router network topology", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/topology", +name: "Topology" }, { content: ' Charts', -title: 'View charts', -isValid: function (QDRService) { return QDRService.management.connection.is_connected(); }, -href: '#/charts', -name: 'Charts' +title: "View charts", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/charts", +name: "Charts" }, { content: ' Message Flow', -title: 'Chord chart', -isValid: function (QDRService) { return QDRService.management.connection.is_connected(); }, -href: '#/chord', -name: 'Message Flow' +title: "Chord chart", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/chord", +name: "Message Flow" + }, + { +content: ' Connect', +title: "Connect to a router", +isValid: function() { + return true; +}, +href: "#/connect", +name: "Connect", +right: true }, { content: ' Schema', -title: 'View dispatch schema', -isValid: function (QDRService) { return QDRService.management.connection.is_connected(); }, -href: '#/schema', -name: 'Schema' +title: "View dispatch schema", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/schema", +name: "Schema", +right: true + }, + { +content: ' Entities', +title: "View the attributes of the router entities", +isValid: function(QDRService) { + return QDRService.management.connection.is_connected(); +}, +href: "#/list",
[qpid-dispatch] branch master updated: DISPATCH-1365 - Fix delayed deliveries table in console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 4eea5a7 DISPATCH-1365 - Fix delayed deliveries table in console 4eea5a7 is described below commit 4eea5a7be230e7a40b9c2478cf9eee74c8ede449 Author: Ernest Allen AuthorDate: Fri Jun 14 13:38:33 2019 -0400 DISPATCH-1365 - Fix delayed deliveries table in console --- .../plugin/js/qdrDelayedDeliveriesController.js| 31 +++--- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/console/stand-alone/plugin/js/qdrDelayedDeliveriesController.js b/console/stand-alone/plugin/js/qdrDelayedDeliveriesController.js index 62dada6..4681afc 100644 --- a/console/stand-alone/plugin/js/qdrDelayedDeliveriesController.js +++ b/console/stand-alone/plugin/js/qdrDelayedDeliveriesController.js @@ -72,7 +72,7 @@ export class DelayedDeliveriesController { noUnselect: true }; -// get info for all addresses +// get info for all links var allLinkInfo = function(link, callback) { let nodes = {}; // gets called each node/entity response @@ -110,31 +110,44 @@ export class DelayedDeliveriesController { link, ["deliveriesDelayed1Sec", "deliveriesDelayed10Sec"], rates, - "delayed", - 10 + link.name, + 12 // average over 12 snapshots (each snapshot is 5 seconds apart) ); -link.deliveriesDelayed1SecRate = Math.max( +link.deliveriesDelayed1SecRate = Math.round( delayedRates.deliveriesDelayed1Sec, - 0 + 1 ); -link.deliveriesDelayed10SecRate = Math.max( +link.deliveriesDelayed10SecRate = Math.round( delayedRates.deliveriesDelayed10Sec, - 0 + 1 ); +/* The killConnection event handler (in qdrOverview.js) expects + a row object with a routerId and the identity of a connection. + Here we set those attributes so that when killConnection is + called, it will kill the link's connection +*/ +link.routerId = node; +link.identity = link.connectionId; + links.push(link); } }); } if (links.length === 0) return; // update the grid's data - /* links = links.filter(function(link) { return ( link.deliveriesDelayed1SecRate > 0 || link.deliveriesDelayed10SecRate > 0 ); }); - */ + links.sort((a, b) => { +if (a.deliveriesDelayed1SecRate > b.deliveriesDelayed1SecRate) + return -1; +else if (a.deliveriesDelayed1SecRate < b.deliveriesDelayed1SecRate) + return 1; +else return 0; + }); // take top 5 records links.splice(5); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1341 Add table of delayed deliveries to console's overview page
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 89c1f1c DISPATCH-1341 Add table of delayed deliveries to console's overview page 89c1f1c is described below commit 89c1f1ceac942a44c9584e8da7168e60c4a62122 Author: Ernest Allen AuthorDate: Wed Jun 5 12:36:05 2019 -0400 DISPATCH-1341 Add table of delayed deliveries to console's overview page --- console/stand-alone/main.js| 480 - console/stand-alone/plugin/js/amqp/utilities.js| 221 +- .../stand-alone/plugin/js/dlgDetailController.js | 6 +- .../plugin/js/qdrDelayedDeliveriesController.js| 172 4 files changed, 569 insertions(+), 310 deletions(-) diff --git a/console/stand-alone/main.js b/console/stand-alone/main.js index 8ad5e37..ce9759d 100644 --- a/console/stand-alone/main.js +++ b/console/stand-alone/main.js @@ -27,279 +27,369 @@ under the License. */ //import angular from 'angular'; -import { QDRLogger, QDRTemplatePath, QDR_LAST_LOCATION } from './plugin/js/qdrGlobals.js'; -import { QDRService } from './plugin/js/qdrService.js'; -import { QDRChartService } from './plugin/js/qdrChartService.js'; -import { NavBarController } from './plugin/js/navbar.js'; -import { OverviewController } from './plugin/js/qdrOverview.js'; -import { OverviewChartsController } from './plugin/js/qdrOverviewChartsController.js'; -import { OverviewLogsController } from './plugin/js/qdrOverviewLogsController.js'; -import { OverviewKillController } from './plugin/js/qdrOverviewKillController.js'; -import { TopologyController } from './plugin/js/topology/qdrTopology.js'; -import { ChordController } from './plugin/js/chord/qdrChord.js'; -import { ListController } from './plugin/js/qdrList.js'; -import { TopAddressesController } from './plugin/js/qdrTopAddressesController.js'; -import { ChartDialogController } from './plugin/js/dlgChartController.js'; -import { DetailDialogController, SubTable } from './plugin/js/dlgDetailController.js'; -import { RouterDialogController } from './plugin/js/dlgRouterController.js'; -import { SettingsController } from './plugin/js/qdrSettings.js'; -import { SchemaController } from './plugin/js/qdrSchema.js'; -import { ChartsController } from './plugin/js/qdrCharts.js'; -import { AboutController } from './plugin/js/qdrAbout.js'; -import { posint } from './plugin/js/posintDirective.js'; - -(function (QDR) { +import { + QDRLogger, + QDRTemplatePath, + QDR_LAST_LOCATION +} from "./plugin/js/qdrGlobals.js"; +import { QDRService } from "./plugin/js/qdrService.js"; +import { QDRChartService } from "./plugin/js/qdrChartService.js"; +import { NavBarController } from "./plugin/js/navbar.js"; +import { OverviewController } from "./plugin/js/qdrOverview.js"; +import { OverviewChartsController } from "./plugin/js/qdrOverviewChartsController.js"; +import { OverviewLogsController } from "./plugin/js/qdrOverviewLogsController.js"; +import { OverviewKillController } from "./plugin/js/qdrOverviewKillController.js"; +import { TopologyController } from "./plugin/js/topology/qdrTopology.js"; +import { ChordController } from "./plugin/js/chord/qdrChord.js"; +import { ListController } from "./plugin/js/qdrList.js"; +import { TopAddressesController } from "./plugin/js/qdrTopAddressesController.js"; +import { DelayedDeliveriesController } from "./plugin/js/qdrDelayedDeliveriesController.js"; +import { ChartDialogController } from "./plugin/js/dlgChartController.js"; +import { + DetailDialogController, + SubTable +} from "./plugin/js/dlgDetailController.js"; +import { RouterDialogController } from "./plugin/js/dlgRouterController.js"; +import { SettingsController } from "./plugin/js/qdrSettings.js"; +import { SchemaController } from "./plugin/js/qdrSchema.js"; +import { ChartsController } from "./plugin/js/qdrCharts.js"; +import { AboutController } from "./plugin/js/qdrAbout.js"; +import { posint } from "./plugin/js/posintDirective.js"; +(function(QDR) { /** * This plugin's angularjs module instance */ - QDR.module = angular.module('QDR', ['ngRoute', 'ngSanitize', 'ngResource', 'ui.bootstrap', -'ui.grid', 'ui.grid.selection', 'ui.grid.autoResize', 'ui.grid.resizeColumns', 'ui.grid.saveState', -'
[qpid-dispatch] branch master updated: DISPATCH-1356 Remove dotted line around pinned router icons in console
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 14d6501 DISPATCH-1356 Remove dotted line around pinned router icons in console 14d6501 is described below commit 14d6501ba57b0adc4303a82b10b906b797cffdd6 Author: Ernest Allen AuthorDate: Wed Jun 5 12:33:07 2019 -0400 DISPATCH-1356 Remove dotted line around pinned router icons in console --- console/stand-alone/plugin/css/dispatch.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/console/stand-alone/plugin/css/dispatch.css b/console/stand-alone/plugin/css/dispatch.css index 73811dd..0c79e1b 100644 --- a/console/stand-alone/plugin/css/dispatch.css +++ b/console/stand-alone/plugin/css/dispatch.css @@ -1082,7 +1082,7 @@ svg { } circle.node.fixed { - stroke-dasharray: 10,2; + /* stroke-dasharray: 10,2; */ } text { /*font: 12px sans-serif;*/ - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1357 Change name of Kill buttons to Close
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 0bbba9f DISPATCH-1357 Change name of Kill buttons to Close 0bbba9f is described below commit 0bbba9f5083f16926e41c9c1a462ebd9cc89ad1e Author: Ernest Allen AuthorDate: Wed Jun 5 12:28:18 2019 -0400 DISPATCH-1357 Change name of Kill buttons to Close --- console/stand-alone/index.html | 6 +++--- console/stand-alone/plugin/html/qdrList.html | 2 +- console/stand-alone/plugin/html/qdrOverview.html | 7 ++- console/stand-alone/plugin/js/qdrList.js | 6 +++--- console/stand-alone/plugin/js/qdrOverview.js | 16 5 files changed, 21 insertions(+), 16 deletions(-) diff --git a/console/stand-alone/index.html b/console/stand-alone/index.html index e745089..c4fb2ab 100644 --- a/console/stand-alone/index.html +++ b/console/stand-alone/index.html @@ -127,13 +127,13 @@ under the License. <div class="modal-header"> -<h3 class="modal-title">Confirm kill order for {{name}}</h3> +<h3 class="modal-title">Confirm close of {{name}}</h3> </div> <div class="modal-body"> -Are you sure you want to kill this connection? +Are you sure you want to close this connection? </div> <div class="modal-footer"> -<button class="btn btn-danger" type="button" ng-click="ok()">Kill</button> +<button class="btn btn-danger" type="button" ng-click="ok()">Close</button> <button class="btn btn-secondary" type="button" ng-click="cancel()">Cancel</button> </div> diff --git a/console/stand-alone/plugin/html/qdrList.html b/console/stand-alone/plugin/html/qdrList.html index bac387a..76a5706 100644 --- a/console/stand-alone/plugin/html/qdrList.html +++ b/console/stand-alone/plugin/html/qdrList.html @@ -84,7 +84,7 @@ under the License. ng-class="{active : isModeSelected(mode)}" title="{{mode.title}}" ng-bind-html="mode.content"> {{selectedRecordName | to_trusted}} Kill +ng-click="killAConnection(selectedRecordName)" class="btn btn-danger">Close There are no {{selectedEntity | safePlural | to_trusted}} diff --git a/console/stand-alone/plugin/html/qdrOverview.html b/console/stand-alone/plugin/html/qdrOverview.html index dd94aac..a642fba 100644 --- a/console/stand-alone/plugin/html/qdrOverview.html +++ b/console/stand-alone/plugin/html/qdrOverview.html @@ -125,6 +125,11 @@ under the License. There are no addresses to which messages are being delivered. + +Links with delayed deliveries + +There are no endpoint links that have delayed deliveries. + @@ -203,7 +208,7 @@ under the License. -Connection {{connection.title}} Kill +Connection {{connection.title}} Close diff --git a/console/stand-alone/plugin/js/qdrList.js b/console/stand-alone/plugin/js/qdrList.js index 53427f7..a331cf5 100644 --- a/console/stand-alone/plugin/js/qdrList.js +++ b/console/stand-alone/plugin/js/qdrList.js @@ -595,10 +595,10 @@ export class ListController { let statusCode = results.context.message.application_properties.statusCode; if (statusCode < 200 || statusCode >= 300) { QDRCore.notification('error', results.context.message.application_properties.statusDescription); - QDRLog.error(`Error when killing ${row.entity.name}: ${results.context.message.application_properties.statusDescription}`); + QDRLog.error(`Error when closing ${row.entity.name}: ${results.context.message.application_properties.statusDescription}`); } else { - QDRCore.notification('success', `Manually killed ${row.entity.name}`); - QDRLog.info(`Manually killed ${row.entity.name}`); + QDRCore.notification('success', `Manually closed ${row.entity.name}`); + QDRLog.info(`Manually closed ${row.entity.name}`); } }); updateExpandedEntities(); diff --git a/console/stand-alone/plugin/js/qdrOverview.js b/console/stand-alone/plugin/js/qdrOverview.js index be7d94e..18032c1 100644 --- a/console/stand-alone/plugin/js/qdrOverview.js +++ b/console/stand-alone/plugin/js/qdrOverview
[qpid-dispatch] branch master updated: DISPATCH-1340 Show updated link statistics on client popup
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 9300914 DISPATCH-1340 Show updated link statistics on client popup 9300914 is described below commit 9300914a8ddfa54854b87a34d1c241648dc79250 Author: Ernest Allen AuthorDate: Tue May 21 08:08:28 2019 -0400 DISPATCH-1340 Show updated link statistics on client popup --- .../stand-alone/plugin/js/dlgDetailController.js | 342 + 1 file changed, 211 insertions(+), 131 deletions(-) diff --git a/console/stand-alone/plugin/js/dlgDetailController.js b/console/stand-alone/plugin/js/dlgDetailController.js index 25d1fa3..6bb2d1a 100644 --- a/console/stand-alone/plugin/js/dlgDetailController.js +++ b/console/stand-alone/plugin/js/dlgDetailController.js @@ -22,18 +22,18 @@ import { utils } from "./amqp/utilities.js"; export class DetailDialogController { constructor(QDRService, $scope, $timeout, $uibModalInstance, d) { -this.controllerName = 'QDR.DetailDialogController'; +this.controllerName = "QDR.DetailDialogController"; this.rates = {}; let expandedRows = new Set(); -$scope.d = d; // the node object +$scope.d = d; // the node object $scope.detail = { - template: 'loading.html', + template: "loading.html" }; // count the number of characters in an array of strings -let countChars = function (ar) { +let countChars = function(ar) { let count = 0; - ar.forEach(a => count += a.length); + ar.forEach(a => (count += a.length)); return count; }; @@ -41,49 +41,62 @@ export class DetailDialogController { $scope.fields = { detailFields: { cols: [ - 'version', - 'mode', - 'presettledDeliveries', - 'droppedPresettledDeliveries', - 'acceptedDeliveries', - 'rejectedDeliveries', - 'releasedDeliveries', - 'modifiedDeliveries', - 'deliveriesIngress', - 'deliveriesEgress', - 'deliveriesTransit', - 'deliveriesIngressRouteContainer', - 'deliveriesEgressRouteContainer' + "version", + "mode", + "presettledDeliveries", + "droppedPresettledDeliveries", + "acceptedDeliveries", + "rejectedDeliveries", + "releasedDeliveries", + "modifiedDeliveries", + "deliveriesIngress", + "deliveriesEgress", + "deliveriesTransit", + "deliveriesIngressRouteContainer", + "deliveriesEgressRouteContainer" ] }, linkFields: { +attrs: [ + "linkType", + "owningAddr", + "settleRate", + "deliveriesDelayed1Sec", + "deliveriesDelayed10Sec", + "unsettledCount", + "capacity" +], cols: [ - 'linkType', - 'owningAddr', - 'priority', - 'acceptedCount', - 'unsettledCount' -] + "linkType", + "addr", + "settleRate", + "delayed1", + "delayed10", + "capacity" +], +calc: { + addr: function(link) { +return utils.addr_text(link.owningAddr); + }, + delayed1: function(link) { +return link.deliveriesDelayed1Sec; + }, + delayed10: function(link) { +return link.deliveriesDelayed10Sec; + }, + capacity: function(link) { +return link.unsettledCount / link.capacity; + } +} }, linkRouteFields: { -cols: [ - 'prefix', - 'direction', - 'containerId' -] +cols: ["prefix", "direction", "containerId"] }, autoLinkFields: { -cols: [ - 'addr', - 'direction', - 'containerId' -] +cols: ["addr", "direction", "containerId"] }, addressFields: { -cols: [ - 'prefix', - 'distribution' -] +cols: ["prefix", "distribution"] } }; // used for calculating sub-table cell widths @@ -92
[qpid-dispatch] branch master updated: DISPATCH-1339 Collapse multiple clients of same time into a single icon
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 1bcf0c3 DISPATCH-1339 Collapse multiple clients of same time into a single icon 1bcf0c3 is described below commit 1bcf0c3c9bcf13078d9088329ec25609952562cf Author: Ernest Allen AuthorDate: Tue May 21 06:47:14 2019 -0400 DISPATCH-1339 Collapse multiple clients of same time into a single icon --- console/stand-alone/plugin/js/topology/links.js | 67 ++--- 1 file changed, 38 insertions(+), 29 deletions(-) diff --git a/console/stand-alone/plugin/js/topology/links.js b/console/stand-alone/plugin/js/topology/links.js index 53cfe71..25e7525 100644 --- a/console/stand-alone/plugin/js/topology/links.js +++ b/console/stand-alone/plugin/js/topology/links.js @@ -17,9 +17,7 @@ specific language governing permissions and limitations under the License. */ -import { - utils -} from "../amqp/utilities.js"; +import { utils } from "../amqp/utilities.js"; class Link { constructor(source, target, dir, cls, uid) { @@ -31,13 +29,15 @@ class Link { this.uid = uid; } markerId(end) { -let selhigh = this.highlighted ? - "highlighted" : - (this.selected ? -"selected" : -""); +let selhigh = this.highlighted + ? "highlighted" + : this.selected + ? "selected" + : ""; if (selhigh === "" && (!this.left && !this.right)) selhigh = "unknown"; -return `-${selhigh}-${end === "end" ? this.target.radius() : this.source.radius()}`; +return `-${selhigh}-${ + end === "end" ? this.target.radius() : this.source.radius() +}`; } } @@ -73,7 +73,7 @@ export class Links { } //this.logger.debug("creating new link (" + (links.length) + ") between " + nodes[_source].name + " and " + nodes[_target].name); if ( - this.links.some(function (l) { + this.links.some(function(l) { return l.uid === uid; }) ) @@ -92,7 +92,9 @@ export class Links { } getPosition(name, nodes, source, client, height, localStorage) { -let position = localStorage[name] ? JSON.parse(localStorage[name]) : undefined; +let position = localStorage[name] + ? JSON.parse(localStorage[name]) + : undefined; if (typeof position == "undefined") { position = { x: Math.round( @@ -112,9 +114,11 @@ export class Links { } if (position.x === null || position.y === null) { position.x = Math.round( -nodes.get(source).x + 40 * Math.sin(client / (Math.PI * 2.0))); +nodes.get(source).x + 40 * Math.sin(client / (Math.PI * 2.0)) + ); position.y = Math.round( -nodes.get(source).y + 40 * Math.cos(client / (Math.PI * 2.0))); +nodes.get(source).y + 40 * Math.cos(client / (Math.PI * 2.0)) + ); } position.fixed = position.fixed ? true : false; return position; @@ -143,8 +147,10 @@ export class Links { ); // we need a unique connection.container -if (connection.container === '') { - connection.container = connection.name.replace('/', '').replace(':', '-'); +if (connection.container === "") { + connection.container = connection.name +.replace("/", "") +.replace(":", "-"); //utils.uuidv4(); } // this is a connection to another interior router @@ -172,10 +178,11 @@ export class Links { // create map of type:id:dir to [containers] for (let container in connectionsPerContainer) { let key = getKey(connectionsPerContainer[container]); - if (!unique[key]) unique[key] = { -c: [], -nodes: [] - }; + if (!unique[key]) +unique[key] = { + c: [], + nodes: [] +}; unique[key].c.push(container); } for (let key in unique) { @@ -213,7 +220,9 @@ export class Links { node.user = container.connection.user; node.isEncrypted = container.connection.isEncrypted; node.connectionId = container.connection.identity; -node.uuid = `${containerId}-${node.routerId}-${node.nodeType}-${node.cdir}`; +node.uuid = `${containerId}-${node.routerId}-${node.nodeType}-${ + node.cdir +}`; // in case a created node (or group) is connected to multiple // routers, we need to remember all the routers for traffic animations for (let c = 1; c < connections.length; c++) { @@ -258,7 +267,7 @@ export class Links { } } -var getContainerIndex = fun
[qpid-dispatch] branch master updated: DISPATCH-1308 Only allow manual killing of endpoint connections
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 7d3f860 DISPATCH-1308 Only allow manual killing of endpoint connections 7d3f860 is described below commit 7d3f86038b844dd7e9bc705f4a93117b6f98a64a Author: Ernest Allen AuthorDate: Mon May 13 12:57:13 2019 -0400 DISPATCH-1308 Only allow manual killing of endpoint connections --- console/stand-alone/plugin/html/qdrOverview.html | 2 +- console/stand-alone/plugin/js/qdrList.js | 2 +- console/stand-alone/plugin/js/qdrOverview.js | 5 - 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/console/stand-alone/plugin/html/qdrOverview.html b/console/stand-alone/plugin/html/qdrOverview.html index 05b27b8..dd94aac 100644 --- a/console/stand-alone/plugin/html/qdrOverview.html +++ b/console/stand-alone/plugin/html/qdrOverview.html @@ -203,7 +203,7 @@ under the License. -Connection {{connection.title}} Kill +Connection {{connection.title}} Kill diff --git a/console/stand-alone/plugin/js/qdrList.js b/console/stand-alone/plugin/js/qdrList.js index 3d79417..53427f7 100644 --- a/console/stand-alone/plugin/js/qdrList.js +++ b/console/stand-alone/plugin/js/qdrList.js @@ -560,7 +560,7 @@ export class ListController { } }); $scope.isConnection = function (selectedEntity) { - return selectedEntity === 'connection'; + return selectedEntity === 'connection' && $scope.detailsObject && $scope.detailsObject.role === 'normal'; }; $scope.killAConnection = function (selectedRecordName) { const identityField = $scope.detailFields.filter(field => field.name === 'identity'); diff --git a/console/stand-alone/plugin/js/qdrOverview.js b/console/stand-alone/plugin/js/qdrOverview.js index 0350464..be7d94e 100644 --- a/console/stand-alone/plugin/js/qdrOverview.js +++ b/console/stand-alone/plugin/js/qdrOverview.js @@ -802,7 +802,7 @@ export class OverviewController { { field: 'Kill', width: '4%', - cellTemplate: 'Kill' + cellTemplate: 'Kill' } ], enablePaging: true, @@ -819,6 +819,9 @@ export class OverviewController { enableRowHeaderSelection: false, noUnselect: true }; +$scope.isNormalConnection = function (connection) { + return connection.data.fields.role === 'normal'; +}; $scope.killConnection = function (row, event) { row.cancelEvent = true; killDialog(row); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1335 Prevent topology node from have NaN for position
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new a8a0e5c DISPATCH-1335 Prevent topology node from have NaN for position a8a0e5c is described below commit a8a0e5c1682d72b7be259973135e8bee481c834f Author: Ernest Allen AuthorDate: Fri May 10 10:21:53 2019 -0400 DISPATCH-1335 Prevent topology node from have NaN for position --- console/stand-alone/plugin/js/topology/links.js | 10 -- console/stand-alone/plugin/js/topology/qdrTopology.js | 8 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/console/stand-alone/plugin/js/topology/links.js b/console/stand-alone/plugin/js/topology/links.js index 82806e8..53cfe71 100644 --- a/console/stand-alone/plugin/js/topology/links.js +++ b/console/stand-alone/plugin/js/topology/links.js @@ -110,6 +110,12 @@ export class Links { nodes.get(source).y + 40 + Math.cos(client / (Math.PI * 2.0)) ); } +if (position.x === null || position.y === null) { + position.x = Math.round( +nodes.get(source).x + 40 * Math.sin(client / (Math.PI * 2.0))); + position.y = Math.round( +nodes.get(source).y + 40 * Math.cos(client / (Math.PI * 2.0))); +} position.fixed = position.fixed ? true : false; return position; } @@ -138,7 +144,8 @@ export class Links { // we need a unique connection.container if (connection.container === '') { - connection.container = utils.uuidv4(); + connection.container = connection.name.replace('/', '').replace(':', '-'); + //utils.uuidv4(); } // this is a connection to another interior router if (connection.role === "inter-router") { @@ -189,7 +196,6 @@ export class Links { height, localStorage ); - let node = nodes.getOrCreateNode( nodeIds[container.source], name, diff --git a/console/stand-alone/plugin/js/topology/qdrTopology.js b/console/stand-alone/plugin/js/topology/qdrTopology.js index d02a176..6ecbb33 100644 --- a/console/stand-alone/plugin/js/topology/qdrTopology.js +++ b/console/stand-alone/plugin/js/topology/qdrTopology.js @@ -364,6 +364,10 @@ export class TopologyController { forceData.nodes.saveLonLat(backgroundMap); }) .start(); + for (let i = 0; i < forceData.nodes.nodes.length; i++) { +forceData.nodes.nodes[i].sx = forceData.nodes.nodes[i].x; +forceData.nodes.nodes[i].sy = forceData.nodes.nodes[i].y; + } // app starts here if (unknowns.length === 0) @@ -462,6 +466,10 @@ export class TopologyController { function tick() { // move the circles circle.attr("transform", function (d) { +if (isNaN(d.x) || isNaN(d.px)) { + d.x = d.px = d.sx; + d.y = d.py = d.sy; +} // don't let the edges of the circle go beyond the edges of the svg let r = Nodes.radius(d.nodeType); d.x = Math.max(Math.min(d.x, width - r), r); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1334 Fix topology background map height problem.
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new f76154e DISPATCH-1334 Fix topology background map height problem. f76154e is described below commit f76154e687d1663bf6476e7c2eab4eddca103e03 Author: Ernest Allen AuthorDate: Fri May 10 07:47:12 2019 -0400 DISPATCH-1334 Fix topology background map height problem. --- console/stand-alone/plugin/js/amqp/utilities.js| 8 +- console/stand-alone/plugin/js/qdrService.js| 6 ++--- .../stand-alone/plugin/js/topology/qdrTopology.js | 29 ++ .../stand-alone/plugin/js/topology/topoUtils.js| 2 +- console/stand-alone/plugin/js/topology/traffic.js | 5 5 files changed, 35 insertions(+), 15 deletions(-) diff --git a/console/stand-alone/plugin/js/amqp/utilities.js b/console/stand-alone/plugin/js/amqp/utilities.js index 34f1d7d..ba603de 100644 --- a/console/stand-alone/plugin/js/amqp/utilities.js +++ b/console/stand-alone/plugin/js/amqp/utilities.js @@ -14,7 +14,7 @@ * limitations under the License. */ -/* global d3 */ +/* global d3 Uint8Array */ var ddd = typeof window === 'undefined' ? require('d3') : d3; var utils = { @@ -218,8 +218,14 @@ var utils = { } if (conn.tenant.length > 1) return conn.tenant.replace(/\/$/, ''); + }, + uuidv4: function () { +return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c => + (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) +); } + }; export { utils diff --git a/console/stand-alone/plugin/js/qdrService.js b/console/stand-alone/plugin/js/qdrService.js index a51d3c2..76432f0 100644 --- a/console/stand-alone/plugin/js/qdrService.js +++ b/console/stand-alone/plugin/js/qdrService.js @@ -69,12 +69,12 @@ export class QDRService { self.management.getSchema() .then(function () { - self.QDRLog.info('got schema after connection'); + //self.QDRLog.info('got schema after connection'); self.management.topology.setUpdateEntities([]); - self.QDRLog.info('requesting a topology'); + //self.QDRLog.info('requesting a topology'); self.management.topology.get() // gets the list of routers .then(function () { - self.QDRLog.info('got initial topology'); + //self.QDRLog.info('got initial topology'); let curPath = self.$location.path(); let parts = curPath.split('/'); let org = parts[parts.length - 1]; diff --git a/console/stand-alone/plugin/js/topology/qdrTopology.js b/console/stand-alone/plugin/js/topology/qdrTopology.js index 88df593..d02a176 100644 --- a/console/stand-alone/plugin/js/topology/qdrTopology.js +++ b/console/stand-alone/plugin/js/topology/qdrTopology.js @@ -281,12 +281,6 @@ export class TopologyController { $timeout(updateLegend); }); -window.addEventListener("resize", resize); -let sizes = getSizes(QDRLog); -width = sizes[0]; -height = sizes[1]; -if (width <= 0 || height <= 0) return; - // initialize the nodes and links array from the QDRService.topology._nodeInfo object var initForceGraph = function () { if (width < 768) { @@ -300,7 +294,9 @@ export class TopologyController { mouseover_node = null; selected_node = null; - d3.select("#SVG_ID").remove(); + d3.select("#SVG_ID .links").remove(); + d3.select("#SVG_ID .nodes").remove(); + d3.select("#SVG_ID circle.flow").remove(); if (d3.select("#SVG_ID").empty()) { svg = d3 .select("#topology") @@ -318,10 +314,18 @@ export class TopologyController { }); addDefs(svg); addGradient(svg); -// handles to link and node element groups -path = svg.append("svg:g").attr("class", "links").selectAll("g"); -circle = svg.append("svg:g").attr("class", "nodes").selectAll("g"); } + // handles to link and node element groups + path = svg.append("svg:g").attr("class", "links").selectAll("g"); + circle = svg.append("svg:g").attr("class", "nodes").selectAll("g"); + traffic.remove(); + if ($scope.legendOptions.traffic.open) { +if ($scope.legendOptions.traffic.dots) + traffic.addAnimationType('dots', separateAddresses, Nodes.radius("inter-router"
[qpid-dispatch] branch master updated: DISPATCH-1331 Add router info popup to console's topology page
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new ca6f853 DISPATCH-1331 Add router info popup to console's topology page ca6f853 is described below commit ca6f853661a995b58473daa276e427278c7e7494 Author: Ernest Allen AuthorDate: Thu May 9 15:43:32 2019 -0400 DISPATCH-1331 Add router info popup to console's topology page --- console/stand-alone/main.js| 2 + console/stand-alone/plugin/html/qdrTopology.html | 4 +- .../stand-alone/plugin/html/tmplRouterDetail.html | 123 + .../stand-alone/plugin/js/dlgRouterController.js | 37 +++ console/stand-alone/plugin/js/topology/links.js| 4 + console/stand-alone/plugin/js/topology/nodes.js| 22 +++- .../stand-alone/plugin/js/topology/qdrTopology.js | 60 +++--- 7 files changed, 228 insertions(+), 24 deletions(-) diff --git a/console/stand-alone/main.js b/console/stand-alone/main.js index 11445c1..8ad5e37 100644 --- a/console/stand-alone/main.js +++ b/console/stand-alone/main.js @@ -41,6 +41,7 @@ import { ListController } from './plugin/js/qdrList.js'; import { TopAddressesController } from './plugin/js/qdrTopAddressesController.js'; import { ChartDialogController } from './plugin/js/dlgChartController.js'; import { DetailDialogController, SubTable } from './plugin/js/dlgDetailController.js'; +import { RouterDialogController } from './plugin/js/dlgRouterController.js'; import { SettingsController } from './plugin/js/qdrSettings.js'; import { SchemaController } from './plugin/js/qdrSchema.js'; import { ChartsController } from './plugin/js/qdrCharts.js'; @@ -286,6 +287,7 @@ import { posint } from './plugin/js/posintDirective.js'; QDR.module.controller('QDR.TopAddressesController', TopAddressesController); QDR.module.controller('QDR.ChartDialogController', ChartDialogController); QDR.module.controller('QDR.DetailDialogController', DetailDialogController); + QDR.module.controller('QDR.RouterDialogController', RouterDialogController); QDR.module.controller('QDR.SettingsController', SettingsController); QDR.module.controller('QDR.TopologyController', TopologyController); QDR.module.controller('QDR.ChordController', ChordController); diff --git a/console/stand-alone/plugin/html/qdrTopology.html b/console/stand-alone/plugin/html/qdrTopology.html index 14b5c8b..4c1a7d2 100644 --- a/console/stand-alone/plugin/html/qdrTopology.html +++ b/console/stand-alone/plugin/html/qdrTopology.html @@ -305,6 +305,8 @@ td.more-info { Freeze in place Unfreeze +Unselect +Select @@ -321,4 +323,4 @@ td.more-info { <div title="{{row.entity.attributeValue}}" class="ui-grid-cell-contents">{{COL_FIELD CUSTOM_FILTERS | pretty}}</div> - \ No newline at end of file + diff --git a/console/stand-alone/plugin/html/tmplRouterDetail.html b/console/stand-alone/plugin/html/tmplRouterDetail.html new file mode 100644 index 000..b479ceb --- /dev/null +++ b/console/stand-alone/plugin/html/tmplRouterDetail.html @@ -0,0 +1,123 @@ + + + +div.details { +max-height: 21em; +overflow: auto; +} + +table td.right { +text-align: right; +} +table td { +padding: .4em; +border-right: 1px solid #F0F0F0; +} +table tr.odd { +background-color: #F0F0F0; +} +table td.expander { +cursor: pointer; +width: 1em; +} +table tr.hiddenRow { +display: none; +} +div.details { +width: 100%; +} +div.details span.right { +float: right; +} + +div.sub-table { +border: 1px solid #CC; +margin: 1em 0; +} +div.sub-table-row.body { +background-color: #FF; +} +div.sub-table-row { +border-bottom: 1px solid #CC; +} +div.sub-table-row:last-child { +border-bottom: 0px; +} +div.sub-table-row.header { +background-clip: padding-box; +background-color: #f5f5f5; +background-image: linear-gradient(to bottom,#fafafa 0,#ededed 100%); +background-repeat: repeat-x; +} + +span.sub-table-col { +display: inline-block; +border-right: 1px solid #CC; +padding: 2px 10px 3px; +} +span.sub-table-col:last-child { +border-right: 0px; +} + + +dl.sub-table { +display: grid; +grid-template-columns: max-content auto; +margin-left: 0.5em; +background-color: white; +border:
[qpid-dispatch] branch master updated: DISPATCH-1328 Added deliveries delayed stats to /metrics request
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 72ace9e DISPATCH-1328 Added deliveries delayed stats to /metrics request 72ace9e is described below commit 72ace9edf2bc4ba1086969d2a83d2b9a7694b003 Author: Ernest Allen AuthorDate: Wed May 1 13:46:14 2019 -0400 DISPATCH-1328 Added deliveries delayed stats to /metrics request --- include/qpid/dispatch/router_core.h | 2 ++ src/http-libwebsockets.c| 6 +- src/router_core/router_core.c | 2 ++ tests/system_tests_http.py | 2 ++ 4 files changed, 11 insertions(+), 1 deletion(-) diff --git a/include/qpid/dispatch/router_core.h b/include/qpid/dispatch/router_core.h index e36cc38..faa8f5c 100644 --- a/include/qpid/dispatch/router_core.h +++ b/include/qpid/dispatch/router_core.h @@ -842,6 +842,8 @@ typedef struct { size_t deliveries_transit; size_t deliveries_ingress_route_container; size_t deliveries_egress_route_container; +size_t deliveries_delayed_1sec; +size_t deliveries_delayed_10sec; } qdr_global_stats_t; ALLOC_DECLARE(qdr_global_stats_t); typedef void (*qdr_global_stats_handler_t) (void *context); diff --git a/src/http-libwebsockets.c b/src/http-libwebsockets.c index f086dca..a74e9ca 100644 --- a/src/http-libwebsockets.c +++ b/src/http-libwebsockets.c @@ -469,6 +469,8 @@ static int stats_get_deliveries_egress(qdr_global_stats_t *stats) { return stats static int stats_get_deliveries_transit(qdr_global_stats_t *stats) { return stats->deliveries_transit; } static int stats_get_deliveries_ingress_route_container(qdr_global_stats_t *stats) { return stats->deliveries_ingress_route_container; } static int stats_get_deliveries_egress_route_container(qdr_global_stats_t *stats) { return stats->deliveries_egress_route_container; } +static int stats_get_deliveries_delayed_1sec(qdr_global_stats_t *stats) { return stats->deliveries_delayed_1sec; } +static int stats_get_deliveries_delayed_10sec(qdr_global_stats_t *stats) { return stats->deliveries_delayed_10sec; } static struct metric_definition metrics[] = { {"connections", "gauge", stats_get_connections}, @@ -487,7 +489,9 @@ static struct metric_definition metrics[] = { {"deliveries_egress", "counter", stats_get_deliveries_egress}, {"deliveries_transit", "counter", stats_get_deliveries_transit}, {"deliveries_ingress_route_container", "counter", stats_get_deliveries_ingress_route_container}, -{"deliveries_egress_route_container", "counter", stats_get_deliveries_egress_route_container} +{"deliveries_egress_route_container", "counter", stats_get_deliveries_egress_route_container}, +{"deliveries_delayed_1sec", "counter", stats_get_deliveries_delayed_1sec}, +{"deliveries_delayed_10sec", "counter", stats_get_deliveries_delayed_10sec} }; static size_t metrics_length = sizeof(metrics)/sizeof(metrics[0]); diff --git a/src/router_core/router_core.c b/src/router_core/router_core.c index fcc7421..16d7242 100644 --- a/src/router_core/router_core.c +++ b/src/router_core/router_core.c @@ -776,6 +776,8 @@ static void qdr_global_stats_request_CT(qdr_core_t *core, qdr_action_t *action, stats->deliveries_transit = core->deliveries_transit; stats->deliveries_ingress_route_container = core->deliveries_ingress_route_container; stats->deliveries_egress_route_container = core->deliveries_egress_route_container; +stats->deliveries_delayed_1sec = core->deliveries_delayed_1sec; +stats->deliveries_delayed_1sec = core->deliveries_delayed_10sec; } qdr_general_work_t *work = qdr_general_work(qdr_post_global_stats_response); work->stats_handler = action->args.stats_request.handler; diff --git a/tests/system_tests_http.py b/tests/system_tests_http.py index 3753259..7b445a9 100644 --- a/tests/system_tests_http.py +++ b/tests/system_tests_http.py @@ -170,6 +170,8 @@ class RouterTestHttp(TestCase): data = result.read().decode('utf-8') assert('connections' in data) assert('deliveries_ingress' in data) +assert('deliveries_delayed_1sec' in data) +assert('deliveries_delayed_10sec' in data) # Sequential calls on multiple ports for port in r.ports: test(port) - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1308 Added Kill button and confirm dialog to connections
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 993501d DISPATCH-1308 Added Kill button and confirm dialog to connections 993501d is described below commit 993501d152be094e30a517afe4ebcb3d83fe3658 Author: Ernest Allen AuthorDate: Mon Apr 15 11:52:37 2019 -0400 DISPATCH-1308 Added Kill button and confirm dialog to connections --- console/stand-alone/index.html | 12 + console/stand-alone/main.js| 2 + console/stand-alone/plugin/html/qdrList.html | 3 +- console/stand-alone/plugin/html/qdrOverview.html | 2 +- console/stand-alone/plugin/js/qdrList.js | 295 - console/stand-alone/plugin/js/qdrOverview.js | 53 .../plugin/js/qdrOverviewKillController.js | 35 +++ 7 files changed, 277 insertions(+), 125 deletions(-) diff --git a/console/stand-alone/index.html b/console/stand-alone/index.html index ed2041c..e745089 100644 --- a/console/stand-alone/index.html +++ b/console/stand-alone/index.html @@ -125,6 +125,18 @@ under the License. }) + +<div class="modal-header"> +<h3 class="modal-title">Confirm kill order for {{name}}</h3> +</div> +<div class="modal-body"> +Are you sure you want to kill this connection? +</div> +<div class="modal-footer"> +<button class="btn btn-danger" type="button" ng-click="ok()">Kill</button> +<button class="btn btn-secondary" type="button" ng-click="cancel()">Cancel</button> +</div> + \ No newline at end of file diff --git a/console/stand-alone/main.js b/console/stand-alone/main.js index c40aa9b..11445c1 100644 --- a/console/stand-alone/main.js +++ b/console/stand-alone/main.js @@ -34,6 +34,7 @@ import { NavBarController } from './plugin/js/navbar.js'; import { OverviewController } from './plugin/js/qdrOverview.js'; import { OverviewChartsController } from './plugin/js/qdrOverviewChartsController.js'; import { OverviewLogsController } from './plugin/js/qdrOverviewLogsController.js'; +import { OverviewKillController } from './plugin/js/qdrOverviewKillController.js'; import { TopologyController } from './plugin/js/topology/qdrTopology.js'; import { ChordController } from './plugin/js/chord/qdrChord.js'; import { ListController } from './plugin/js/qdrList.js'; @@ -281,6 +282,7 @@ import { posint } from './plugin/js/posintDirective.js'; QDR.module.controller('QDR.OverviewController', OverviewController); QDR.module.controller('QDR.OverviewChartsController', OverviewChartsController); QDR.module.controller('QDR.OverviewLogsController', OverviewLogsController); + QDR.module.controller('QDR.OverviewKillController', OverviewKillController); QDR.module.controller('QDR.TopAddressesController', TopAddressesController); QDR.module.controller('QDR.ChartDialogController', ChartDialogController); QDR.module.controller('QDR.DetailDialogController', DetailDialogController); diff --git a/console/stand-alone/plugin/html/qdrList.html b/console/stand-alone/plugin/html/qdrList.html index 845339d..bac387a 100644 --- a/console/stand-alone/plugin/html/qdrList.html +++ b/console/stand-alone/plugin/html/qdrList.html @@ -83,7 +83,8 @@ under the License. -{{selectedRecordName | to_trusted}} +{{selectedRecordName | to_trusted}} Kill There are no {{selectedEntity | safePlural | to_trusted}} diff --git a/console/stand-alone/plugin/html/qdrOverview.html b/console/stand-alone/plugin/html/qdrOverview.html index 98d7027..05b27b8 100644 --- a/console/stand-alone/plugin/html/qdrOverview.html +++ b/console/stand-alone/plugin/html/qdrOverview.html @@ -203,7 +203,7 @@ under the License. -Connection {{connection.title}} +Connection {{connection.title}} Kill diff --git a/console/stand-alone/plugin/js/qdrList.js b/console/stand-alone/plugin/js/qdrList.js index e162371..3d79417 100644 --- a/console/stand-alone/plugin/js/qdrList.js +++ b/console/stand-alone/plugin/js/qdrList.js @@ -18,7 +18,7 @@ under the License. */ /* global angular d3 */ -import { QDRFolder, QDRLeaf, QDRCore, QDRLogger, QDRTemplatePath, QDRRedirectWhenConnected} from './qdrGlobals.js'; +import { QDRFolder, QDRLeaf, QDRCo
[qpid-dispatch] branch master updated: DISPATCH-1320 Make it easier to replace the masthead logo
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 3297688 DISPATCH-1320 Make it easier to replace the masthead logo 3297688 is described below commit 329768878bde390e933434c1d8b93b1785b4cc98 Author: Ernest Allen AuthorDate: Sat Apr 13 10:23:40 2019 -0400 DISPATCH-1320 Make it easier to replace the masthead logo --- console/stand-alone/index.html | 4 +- console/stand-alone/package-lock.json | 631 - console/stand-alone/package.json | 2 +- console/stand-alone/plugin/css/dispatch.css| 1 + .../stand-alone/plugin/js/topology/qdrTopology.js | 12 +- 5 files changed, 500 insertions(+), 150 deletions(-) diff --git a/console/stand-alone/index.html b/console/stand-alone/index.html index d69f924..ed2041c 100644 --- a/console/stand-alone/index.html +++ b/console/stand-alone/index.html @@ -55,9 +55,7 @@ under the License. - - Apache Qpid Dispatch Console - + diff --git a/console/stand-alone/package-lock.json b/console/stand-alone/package-lock.json index 488f44e..f372c16 100644 --- a/console/stand-alone/package-lock.json +++ b/console/stand-alone/package-lock.json @@ -132,25 +132,141 @@ } }, "@babel/helper-call-delegate": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.1.0.tgz";, - "integrity": "sha512-YEtYZrw3GUK6emQHKthltKNZwszBcHK58Ygcis+gVUrF4/FmTVr5CCqQNSfmvg2y+YDEANyYoaLz/SHsnusCwQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.0.tgz";, + "integrity": "sha512-SdqDfbVdNQCBp3WhK2mNdDvHd3BD6qbmIc43CAyjnsfCmgHMeqgDcM3BzY2lchi7HBJGJ2CVdynLWbezaE4mmQ==", "dev": true, "requires": { -"@babel/helper-hoist-variables": "^7.0.0", -"@babel/traverse": "^7.1.0", -"@babel/types": "^7.0.0" +"@babel/helper-hoist-variables": "^7.4.0", +"@babel/traverse": "^7.4.0", +"@babel/types": "^7.4.0" + }, + "dependencies": { +"@babel/generator": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.4.0.tgz";, + "integrity": "sha512-/v5I+a1jhGSKLgZDcmAUZ4K/VePi43eRkUs3yePW1HB1iANOD5tqJXwGSG4BZhSksP8J9ejSlwGeTiiOFZOrXQ==", + "dev": true, + "requires": { +"@babel/types": "^7.4.0", +"jsesc": "^2.5.1", +"lodash": "^4.17.11", +"source-map": "^0.5.0", +"trim-right": "^1.0.1" + } +}, +"@babel/helper-split-export-declaration": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.0.tgz";, + "integrity": "sha512-7Cuc6JZiYShaZnybDmfwhY4UYHzI6rlqhWjaIqbsJGsIqPimEYy5uh3akSRLMg65LSdSEnJ8a8/bWQN6u2oMGw==", + "dev": true, + "requires": { +"@babel/types": "^7.4.0" + } +}, +"@babel/parser": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.4.3.tgz";, + "integrity": "sha512-gxpEUhTS1sGA63EGQGuA+WESPR/6tz6ng7tSHFCmaTJK/cGK8y37cBTspX+U2xCAue2IQVvF6Z0oigmjwD8YGQ==", + "dev": true +}, +"@babel/traverse": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.4.3.tgz";, + "integrity": "sha512-HmA01qrtaCwwJWpSKpA948cBvU5BrmviAief/b3AVw936DtcdsTexlbyzNuDnthwhOQ37xshn7hvQaEQk7ISYQ==", + "dev": true, + "requires": { +"@babel/code-frame": "^7.0.0", +"@babel/generator": "^7.4.0", +"@babel/helper-func
[qpid-dispatch] branch master updated: DISPATCH-1320 Revering commit
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new fdedd6a DISPATCH-1320 Revering commit fdedd6a is described below commit fdedd6a493b967d2f4678a839600dfb90f9f1d3c Author: Ernest Allen AuthorDate: Fri Apr 12 11:59:27 2019 -0400 DISPATCH-1320 Revering commit --- bin/make_standalone_console_tarball.sh | 1 - console/CMakeLists.txt | 1 - .../stand-alone/plugin/img/downstream_console_logo.png | Bin 11622 -> 0 bytes 3 files changed, 2 deletions(-) diff --git a/bin/make_standalone_console_tarball.sh b/bin/make_standalone_console_tarball.sh index 8c473e8..14015e6 100755 --- a/bin/make_standalone_console_tarball.sh +++ b/bin/make_standalone_console_tarball.sh @@ -90,7 +90,6 @@ echo Working Directory=${WORKDIR} cmake -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR -DCMAKE_BUILD_TYPE=Release ../$PREFIX make install pushd $INSTALL_DIR/share/qpid-dispatch/ -cp console/img/downstream_console_logo.png console/img/console_logo.png tar -c -h -z \ --owner=root --group=root --numeric-owner \ --mtime="${MTIME}" \ diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index e953c42..7bdb481 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -85,7 +85,6 @@ if(CONSOLE_INSTALL) ${CONSOLE_SOURCE_DIR}/plugin/img/bg-modal-about-pf.png ${CONSOLE_SOURCE_DIR}/plugin/img/logo-alt.svg ${CONSOLE_SOURCE_DIR}/plugin/img/console_logo.png -${CONSOLE_SOURCE_DIR}/plugin/img/downstream_console_logo.png ) ## Files copied to the css/ dir set(CSS_FONTS diff --git a/console/stand-alone/plugin/img/downstream_console_logo.png b/console/stand-alone/plugin/img/downstream_console_logo.png deleted file mode 100644 index a9adea5..000 Binary files a/console/stand-alone/plugin/img/downstream_console_logo.png and /dev/null differ - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1320 Add downstream logo for masthead
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new 8b467ea DISPATCH-1320 Add downstream logo for masthead 8b467ea is described below commit 8b467ea966703d8691c55d80431d65ca51474d49 Author: Ernest Allen AuthorDate: Fri Apr 12 11:44:50 2019 -0400 DISPATCH-1320 Add downstream logo for masthead --- bin/make_standalone_console_tarball.sh | 1 + console/CMakeLists.txt | 2 ++ console/stand-alone/index.html | 4 +--- console/stand-alone/plugin/css/dispatch.css | 1 + console/stand-alone/plugin/img/console_logo.png | Bin 0 -> 6568 bytes .../stand-alone/plugin/img/downstream_console_logo.png | Bin 0 -> 11622 bytes console/stand-alone/plugin/js/qdrGlobals.js | 1 + 7 files changed, 6 insertions(+), 3 deletions(-) diff --git a/bin/make_standalone_console_tarball.sh b/bin/make_standalone_console_tarball.sh index 14015e6..8c473e8 100755 --- a/bin/make_standalone_console_tarball.sh +++ b/bin/make_standalone_console_tarball.sh @@ -90,6 +90,7 @@ echo Working Directory=${WORKDIR} cmake -DCMAKE_INSTALL_PREFIX=$INSTALL_DIR -DCMAKE_BUILD_TYPE=Release ../$PREFIX make install pushd $INSTALL_DIR/share/qpid-dispatch/ +cp console/img/downstream_console_logo.png console/img/console_logo.png tar -c -h -z \ --owner=root --group=root --numeric-owner \ --mtime="${MTIME}" \ diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index 66e4c0c..e953c42 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -84,6 +84,8 @@ if(CONSOLE_INSTALL) set(IMAGES ${CONSOLE_SOURCE_DIR}/plugin/img/bg-modal-about-pf.png ${CONSOLE_SOURCE_DIR}/plugin/img/logo-alt.svg +${CONSOLE_SOURCE_DIR}/plugin/img/console_logo.png +${CONSOLE_SOURCE_DIR}/plugin/img/downstream_console_logo.png ) ## Files copied to the css/ dir set(CSS_FONTS diff --git a/console/stand-alone/index.html b/console/stand-alone/index.html index 220cf50..d836b54 100644 --- a/console/stand-alone/index.html +++ b/console/stand-alone/index.html @@ -55,9 +55,7 @@ under the License. - -Apache Qpid Dispatch Console - + diff --git a/console/stand-alone/plugin/css/dispatch.css b/console/stand-alone/plugin/css/dispatch.css index 2a7472a..73811dd 100644 --- a/console/stand-alone/plugin/css/dispatch.css +++ b/console/stand-alone/plugin/css/dispatch.css @@ -2105,6 +2105,7 @@ svg { .masthead-icons { position: absolute; right: 1em; +top: 0; color: white; padding-top: 5px; font-size: large; diff --git a/console/stand-alone/plugin/img/console_logo.png b/console/stand-alone/plugin/img/console_logo.png new file mode 100644 index 000..0cae841 Binary files /dev/null and b/console/stand-alone/plugin/img/console_logo.png differ diff --git a/console/stand-alone/plugin/img/downstream_console_logo.png b/console/stand-alone/plugin/img/downstream_console_logo.png new file mode 100644 index 000..a9adea5 Binary files /dev/null and b/console/stand-alone/plugin/img/downstream_console_logo.png differ diff --git a/console/stand-alone/plugin/js/qdrGlobals.js b/console/stand-alone/plugin/js/qdrGlobals.js index 42f5ee3..fa21d13 100644 --- a/console/stand-alone/plugin/js/qdrGlobals.js +++ b/console/stand-alone/plugin/js/qdrGlobals.js @@ -52,6 +52,7 @@ export const QDRTemplatePath = 'html/'; export const QDR_SETTINGS_KEY = 'QDRSettings'; export const QDR_LAST_LOCATION = 'QDRLastLocation'; export const QDR_INTERVAL = 'QDRInterval'; +export const STAND_ALONE = true; export var QDRRedirectWhenConnected = function ($location, org) { $location.path('/connect'); - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[qpid-dispatch] branch master updated: DISPATCH-1300 Update documentation and schema for removing 'stand-alone' directory from console install path
This is an automated email from the ASF dual-hosted git repository. eallen pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git The following commit(s) were added to refs/heads/master by this push: new e6374ea DISPATCH-1300 Update documentation and schema for removing 'stand-alone' directory from console install path e6374ea is described below commit e6374ea6c2247c3c8ee360e8c9883cfe7552 Author: Ernest Allen AuthorDate: Fri Mar 22 12:55:31 2019 -0400 DISPATCH-1300 Update documentation and schema for removing 'stand-alone' directory from console install path --- console/stand-alone/README.md | 27 +-- python/qpid_dispatch/management/qdrouter.json | 2 +- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/console/stand-alone/README.md b/console/stand-alone/README.md index 8d6612c..bbd3659 100644 --- a/console/stand-alone/README.md +++ b/console/stand-alone/README.md @@ -21,17 +21,11 @@ The stand-alone qpid dispatch console is an html web site that monitors and cont ## To install the console: - After a dispatch build the 3rd party libraries need to be installed. - - ### To manually install the 3rd party libraries: -- cd /usr/share/qpid-dispatch/console/stand-alone -- npm install - -Note: An internet connection is required during the npm install to retrieve the 3rd party javascript / css files. + The console files are installed during a dispatch `make install`. By default, the console files are installed in /usr/share/qpid-dispatch/console ## To run the web console: -- Ensure one of the routers in your network is configured with a normal listener with `http: true` and that -the `httpRootDir` is set to the directory containing installed stand-alone console files +- Ensure one of the routers in your network is configured with a normal listener with `http: true` + ``` listener { role: normal @@ -39,7 +33,6 @@ listener { port: 5673 http: true saslMechanisms: ANONYMOUS -httpRootDir: /usr/share/qpid-dispatch/console/stand-alone } ``` - start the router @@ -48,5 +41,19 @@ listener { The router will serve the console's html/js/css from the install directory. The console will automatically connect to the router at localhost:5673 +## To disable the console and still allow the router to respond to other http traffic + +- in the listener portion of the config file, add an httpRoot: None + +``` +listener { +role: normal +host: 0.0.0.0 +port: 5673 +http: true +httpRoot: None +saslMechanisms: ANONYMOUS +} +``` diff --git a/python/qpid_dispatch/management/qdrouter.json b/python/qpid_dispatch/management/qdrouter.json index 1bcf483..cbf154f 100644 --- a/python/qpid_dispatch/management/qdrouter.json +++ b/python/qpid_dispatch/management/qdrouter.json @@ -864,7 +864,7 @@ }, "httpRootDir": { "type": "path", -"description": "Absolute path to a directory from which to serve static HTML files. For example, /usr/share/qpid-dispatch/console/stand-alone.", +"description": "Absolute path to a directory from which to serve static HTML files. For example, /usr/share/qpid-dispatch/console.", "deprecationName": "httpRoot", "create": true }, - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org