Grouped injected vars and shortened findNodeById
Fixed syntax in Topo2NodeModel.js
Added SubRegions to the topo2 view
Change-Id: I04c793f3a9a98808eaa11049f31bbb166cc5b66f
diff --git a/web/gui/src/main/webapp/app/view/topo2/topo2Region.js b/web/gui/src/main/webapp/app/view/topo2/topo2Region.js
index 45c2652..67fec91 100644
--- a/web/gui/src/main/webapp/app/view/topo2/topo2Region.js
+++ b/web/gui/src/main/webapp/app/view/topo2/topo2Region.js
@@ -22,14 +22,11 @@
(function () {
'use strict';
- var $log,
- wss,
- Model,
- t2sr,
- t2ds,
- t2hs,
- t2ls;
+ // Injected Services
+ var $log, wss, t2sr, t2ds, t2hs, t2ls;
+ var Collection, Model;
+ //Internal
var region;
function init() {
@@ -38,9 +35,13 @@
function addRegion(data) {
- region = new Model({
+ var RegionModel = Model.extend({
+ findNodeById: findNodeById
+ })
+
+ region = new RegionModel({
id: data.id,
- layerOrder: data.layerOrder
+ layerOrder: data.layerOrder,
});
region.set({
@@ -50,8 +51,6 @@
links: t2ls.createLinkCollection(data.links, region),
});
- region.set('test', 2);
-
angular.forEach(region.get('links').models, function (link) {
link.createLink();
});
@@ -60,9 +59,23 @@
}
function regionNodes() {
- return [].concat(region.get('devices').models, region.get('hosts').models);
+ return [].concat(
+ region.get('devices').models,
+ region.get('hosts').models,
+ region.get('subregions').models
+ );
}
+ function findNodeById(id) {
+
+ // Remove /{port} from id if needed
+ var regex = new RegExp('^[^\/]*');
+ id = regex.exec(id)[0];
+
+ return region.get('devices').get(id) ||
+ region.get('hosts').get(id) ||
+ region.get('subregions').get(id);
+ }
function regionLinks() {
return region.get('links').models;
@@ -71,9 +84,9 @@
angular.module('ovTopo2')
.factory('Topo2RegionService',
['$log', 'WebSocketService', 'Topo2Model', 'Topo2SubRegionService', 'Topo2DeviceService',
- 'Topo2HostService', 'Topo2LinkService',
+ 'Topo2HostService', 'Topo2LinkService', 'Topo2Collection',
- function (_$log_, _wss_, _Model_, _t2sr_, _t2ds_, _t2hs_, _t2ls_) {
+ function (_$log_, _wss_, _Model_, _t2sr_, _t2ds_, _t2hs_, _t2ls_, _Collection_) {
$log = _$log_;
wss = _wss_;
@@ -82,6 +95,7 @@
t2ds = _t2ds_;
t2hs = _t2hs_;
t2ls = _t2ls_;
+ Collection = _Collection_;
return {
init: init,