mirror of https://github.com/apache/nifi.git
NIFI-4402 - Add component location in Summary view
Implemented as described in the issue. Improvements are welcome. Reworded the title according to feedback. This closes #2195
This commit is contained in:
parent
ce4374ee00
commit
41d9506a2b
|
@ -413,6 +413,15 @@
|
||||||
resizable: true,
|
resizable: true,
|
||||||
formatter: nfCommon.genericValueFormatter
|
formatter: nfCommon.genericValueFormatter
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
id: 'parentGroup',
|
||||||
|
field: 'parentProcessGroupName',
|
||||||
|
name: 'Process Group',
|
||||||
|
sortable: true,
|
||||||
|
resizable: true,
|
||||||
|
formatter: nfCommon.genericValueFormatter,
|
||||||
|
toolTip: 'Parent Process Group name'
|
||||||
|
},
|
||||||
runStatusColumn,
|
runStatusColumn,
|
||||||
inputColumn,
|
inputColumn,
|
||||||
ioColumn,
|
ioColumn,
|
||||||
|
@ -430,7 +439,7 @@
|
||||||
var markup = '';
|
var markup = '';
|
||||||
|
|
||||||
if (isInShell) {
|
if (isInShell) {
|
||||||
markup += '<div class="pointer go-to fa fa-long-arrow-right" title="Go To Processor" style="margin-right: 3px;"></div>';
|
markup += '<div class="pointer go-to fa fa-long-arrow-right" title="Go To Processor in ' + nfCommon.escapeHtml(dataContext.processGroupNamePath) + '" style="margin-right: 3px;"></div>';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (nfCommon.SUPPORTS_SVG) {
|
if (nfCommon.SUPPORTS_SVG) {
|
||||||
|
@ -2524,11 +2533,20 @@
|
||||||
* @argument {array} outputPortItems The input port data
|
* @argument {array} outputPortItems The input port data
|
||||||
* @argument {array} remoteProcessGroupItems The remote process group data
|
* @argument {array} remoteProcessGroupItems The remote process group data
|
||||||
* @argument {object} aggregateSnapshot The process group status
|
* @argument {object} aggregateSnapshot The process group status
|
||||||
|
* @argument {array} ancestorsSnapshot The process group hierarchy
|
||||||
*/
|
*/
|
||||||
var populateProcessGroupStatus = function (processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, aggregateSnapshot) {
|
var populateProcessGroupStatus = function (processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, aggregateSnapshot, ancestorsSnapshot) {
|
||||||
// add the processors to the summary grid
|
// add the processors to the summary grid
|
||||||
$.each(aggregateSnapshot.processorStatusSnapshots, function (i, procStatusEntity) {
|
$.each(aggregateSnapshot.processorStatusSnapshots, function (i, procStatusEntity) {
|
||||||
processorItems.push(procStatusEntity.processorStatusSnapshot);
|
var currentProcessorStatusSnapshot = procStatusEntity.processorStatusSnapshot;
|
||||||
|
|
||||||
|
currentProcessorStatusSnapshot.parentProcessGroupName = aggregateSnapshot.name;
|
||||||
|
// construct a 'path' based on hierarchical group levels
|
||||||
|
currentProcessorStatusSnapshot.processGroupNamePath = ancestorsSnapshot.reduce(function(tempGroupNamesPath, ancestorGroup) {
|
||||||
|
return tempGroupNamesPath + '/' + ancestorGroup.name;
|
||||||
|
}, '');
|
||||||
|
|
||||||
|
processorItems.push(currentProcessorStatusSnapshot);
|
||||||
});
|
});
|
||||||
|
|
||||||
// add the processors to the summary grid
|
// add the processors to the summary grid
|
||||||
|
@ -2556,10 +2574,23 @@
|
||||||
|
|
||||||
// add any child group's status
|
// add any child group's status
|
||||||
$.each(aggregateSnapshot.processGroupStatusSnapshots, function (i, childProcessGroupEntity) {
|
$.each(aggregateSnapshot.processGroupStatusSnapshots, function (i, childProcessGroupEntity) {
|
||||||
populateProcessGroupStatus(processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, childProcessGroupEntity.processGroupStatusSnapshot);
|
var childProcessGroupStatusSnapshot = childProcessGroupEntity.processGroupStatusSnapshot;
|
||||||
|
populateProcessGroupStatus(processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, childProcessGroupStatusSnapshot, createUpdatedAncestorsSnapshot(ancestorsSnapshot, childProcessGroupStatusSnapshot));
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a new process group hierarchy.
|
||||||
|
*
|
||||||
|
* @argument {array} ancestorsSnapshot The process group hierarchy
|
||||||
|
* @argument {object} newAncestor The process group to add
|
||||||
|
*/
|
||||||
|
var createUpdatedAncestorsSnapshot = function(ancestorsSnapshot, newAncestor) {
|
||||||
|
var snapshotCopy = ancestorsSnapshot.slice();
|
||||||
|
snapshotCopy.push(newAncestor);
|
||||||
|
return snapshotCopy;
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Applies the filter found in the filter expression text field.
|
* Applies the filter found in the filter expression text field.
|
||||||
*/
|
*/
|
||||||
|
@ -3105,7 +3136,7 @@
|
||||||
var remoteProcessGroupItems = [];
|
var remoteProcessGroupItems = [];
|
||||||
|
|
||||||
// populate the tables
|
// populate the tables
|
||||||
populateProcessGroupStatus(processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, aggregateSnapshot);
|
populateProcessGroupStatus(processorItems, connectionItems, processGroupItems, inputPortItems, outputPortItems, remoteProcessGroupItems, aggregateSnapshot, [aggregateSnapshot]);
|
||||||
|
|
||||||
// update the processors
|
// update the processors
|
||||||
processorsData.setItems(processorItems);
|
processorsData.setItems(processorItems);
|
||||||
|
|
Loading…
Reference in New Issue