Repository: incubator-edgent Updated Branches: refs/heads/master f49b95758 -> d6f09b59c
[EDGENT-168] Console: Multi-line format for source/target stream tags Project: http://git-wip-us.apache.org/repos/asf/incubator-edgent/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-edgent/commit/d6f09b59 Tree: http://git-wip-us.apache.org/repos/asf/incubator-edgent/tree/d6f09b59 Diff: http://git-wip-us.apache.org/repos/asf/incubator-edgent/diff/d6f09b59 Branch: refs/heads/master Commit: d6f09b59c52113530ca42154668d60bf2c264d23 Parents: 6ea69f0 Author: Queenie Ma <queeniema.apa...@gmail.com> Authored: Thu Sep 15 10:47:55 2016 -0700 Committer: Queenie Ma <queeniema.apa...@gmail.com> Committed: Thu Sep 15 12:13:56 2016 -0700 ---------------------------------------------------------------------- console/servlets/webapp_content/js/index.js | 99 ++++++++++++++++++------ 1 file changed, 76 insertions(+), 23 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-edgent/blob/d6f09b59/console/servlets/webapp_content/js/index.js ---------------------------------------------------------------------- diff --git a/console/servlets/webapp_content/js/index.js b/console/servlets/webapp_content/js/index.js index 1649b19..1a4bb7d 100644 --- a/console/servlets/webapp_content/js/index.js +++ b/console/servlets/webapp_content/js/index.js @@ -509,7 +509,7 @@ var displayRowsTooltip = function(newRequest) { } else if (newKey === "Oplet kind"){ content += "<td class='left' tabindex=0>" + row[newKey] + "</td>"; } else { - content += "<td class='center' tabindex=0>" + row[newKey] + "</td>"; + content += "<td class='center' tabindex=0 style='white-space:nowrap;'>" + row[newKey] + "</td>"; } } firstTime = false; @@ -526,7 +526,7 @@ var displayRowsTooltip = function(newRequest) { "<body>"; var buttonStr = '<button title="Pause table refresh" id="pauseTableRefresh" type="button">Pause table refresh</button>'; var closeWinStr = '<button title="Close window" id="closeTablePropsWindow" type="button">Close window</button>'; - var tableHdr = "<table id='allPropsTable' tabindex=0 style='width: 675px;margin: 10px;table-layout:fixed;word-wrap: break-word;'><caption>Oplet properties</caption>"; + var tableHdr = "<table id='allPropsTable' tabindex=0 style='margin: 10px;table-layout:fixed;word-wrap: break-word;'><caption>Oplet properties</caption>"; var str = htmlStr + buttonStr + closeWinStr + tableHdr + headerStr + content + "</table></body><html>"; propWindow = window.open("", "Properties", "width=825,height=500,scrollbars=yes,dependent=yes"); @@ -703,19 +703,21 @@ var makeRows = function() { var theRows = []; nodes.forEach(function(n) { var sources = []; - var sourceStreams = []; + var sourceStreamsMap = new Map(); n.targetLinks.forEach(function(trg){ - sources.push(trg.sourceIdx.idx); + var source = trg.sourceIdx.idx.toString(); + sources.push(source); if (trg.tags && trg.tags.length > 0) { - sourceStreams.push(trg.tags); + sourceStreamsMap.set(source, trg.tags); } }); var targets = []; - var targetStreams = []; + var targetStreamsMap = new Map(); n.sourceLinks.forEach(function(src){ - targets.push(src.targetIdx.idx); + var target = src.targetIdx.idx.toString(); + targets.push(target); if (src.tags && src.tags.length > 0) { - targetStreams.push(src.tags); + targetStreamsMap.set(target, src.tags); } }); var kind = parseOpletKind(n.invocation.kind); @@ -729,10 +731,36 @@ var makeRows = function() { value = formatNumber(n.value); } + var sStreamString = ""; + if (sourceStreamsMap.size == 0) { + sStreamString = "None"; + } else if (sourceStreamsMap.size == 1) { + for (var value of sourceStreamsMap.values()) { + sStreamString = value.join(", "); + } + } else { + for (var [key, value] of sourceStreamsMap) { + sStreamString += "[" + key + "] " + value.join(", ") + "<br/>"; + } + } + + var tStreamString = ""; + if (targetStreamsMap.size == 0) { + tStreamString = "None"; + } else if (targetStreamsMap.size == 1) { + for (var value of targetStreamsMap.values()) { + tStreamString = value.join(", "); + } + } else { + for (var [key, value] of targetStreamsMap) { + tStreamString += "[" + key + "] " + value.join(", ") + "<br/>"; + } + } + var rowObj = {"Name": n.idx, "Oplet kind": kind, "Tuple count": formatNumber(n.value), "Sources": sources.toString(), "Targets": targets.toString(), - "Source stream tags": sourceStreams.toString() === "" ? "None" : sourceStreams.toString(), - "Target stream tags": targetStreams.toString() === "" ? "None" : targetStreams.toString()}; + "Source stream tags": sStreamString, + "Target stream tags": tStreamString}; theRows.push(rowObj); }); return theRows; @@ -971,29 +999,54 @@ var renderGraph = function(jobId, counterMetrics, bIsNewJob) { + formatNumber(d.value) + "</td>"; var sources = []; - var sourceStreams = []; + var sourceStreamsMap = new Map(); d.targetLinks.forEach(function(trg){ - sources.push(trg.sourceIdx.idx.toString()); - if (trg.tags && trg.tags.length > 0) { - sourceStreams.push(trg.tags); - } + var source = trg.sourceIdx.idx.toString(); + sources.push(source); + if (trg.tags && trg.tags.length > 0) { + sourceStreamsMap.set(source, trg.tags); + } }); var targets = []; - var targetStreams = []; - + var targetStreamsMap = new Map(); d.sourceLinks.forEach(function(src){ - targets.push(src.targetIdx.idx); + var target = src.targetIdx.idx.toString(); + targets.push(target); if (src.tags && src.tags.length > 0) { - targetStreams.push(src.tags); + targetStreamsMap.set(target, src.tags); } }); valueStr += "<td class='smallCenter'>" + sources.toString() + "</td>"; valueStr += "<td class='smallCenter'>" + targets.toString() + "</td>"; - var sStreamString = sourceStreams.toString() === "" ? "None" : sourceStreams.toString(); - valueStr += "<td class='smallCenter'>" + sStreamString + "</td>"; - var tStreamString = targetStreams.toString() === "" ? "None" : targetStreams.toString(); - valueStr += "<td class='smallCenter'>" + tStreamString + "</td>"; + + var sStreamString = ""; + if (sourceStreamsMap.size == 0) { + sStreamString = "None"; + } else if (sourceStreamsMap.size == 1) { + for (var value of sourceStreamsMap.values()) { + sStreamString = value.join(", "); + } + } else { + for (var [key, value] of sourceStreamsMap) { + sStreamString += "[" + key + "] " + value.join(", ") + "<br/>"; + } + } + valueStr += "<td class='smallCenter' style='white-space:nowrap;'>" + sStreamString + "</td>"; + + var tStreamString = ""; + if (targetStreamsMap.size == 0) { + tStreamString = "None"; + } else if (targetStreamsMap.size == 1) { + for (var value of targetStreamsMap.values()) { + tStreamString = value.join(", "); + } + } else { + for (var [key, value] of targetStreamsMap) { + tStreamString += "[" + key + "] " + value.join(", ") + "<br/>"; + } + } + valueStr += "<td class='smallCenter' style='white-space:nowrap;'>" + tStreamString + "</td>"; valueStr += "</tr></table></div>"; var str = headStr + valueStr;