From 37c09259c1958fe5ed7c28bc24f593577070bbcb Mon Sep 17 00:00:00 2001 From: Daniel Malachovsky Date: Mon, 8 Feb 2016 19:05:54 +0100 Subject: Initial commit of vBd Manager functions. - Bug Fixes for graphical manipulation. Fix req'd for unassigning pre-assigned. - Fixed Graphical issues, interface, vpp and vBD manipulation - Added REST functionality, GUI enhancements and squashed a few bugs. - reworked assigning and unassigning IF to vBD Change-Id: Ice13835699455439f6ab49a18facb49f7a16b7ef Signed-off-by: Varun Seereeram Signed-off-by: Daniel Malachovsky --- .../vpp/services/bdm.interface.service.js | 31 +++++++++++++++++----- 1 file changed, 25 insertions(+), 6 deletions(-) (limited to 'vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js') diff --git a/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js b/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js index 341fb5d48..d2abc77b1 100644 --- a/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js +++ b/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js @@ -6,7 +6,7 @@ * and is available at http://www.eclipse.org/legal/epl-v10.html */ define(['app/vpp/vpp.module'], function(vpp) { - vpp.register.factory('bdmInterfaceService', function(VPPRestangular) { + vpp.register.factory('bdmInterfaceService', function(VPPRestangular, bdmVppService) { var s = {}; var Interface = function(tpId, interfaceName) { @@ -18,12 +18,32 @@ define(['app/vpp/vpp.module'], function(vpp) { return new Interface(tpId, interfaceName); }; - s.add = function(interface, bridgeDomainId, vppId, successCallback, errorCallback) { + s.add = function(interf, bridgeDomainId, vppId, successCallback, errorCallback) { var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology') - .one('topology').one(bridgeDomainId).one('node').one(vppId).one('termination-point').one(interface['tp-id']); - var dataObj = {'termination-point': [interface]}; + .one('topology').one(bridgeDomainId).one('node').one(vppId).one('termination-point').one(encodeURIComponent(interf['tp-id'])); - restObj.customPUT(dataObj).then(function(data) { + var dataObj = {'termination-point': [interf]}; + + var write = function() { + restObj.customPUT(dataObj).then(function(data) { + successCallback(data); + }, function(res) { + errorCallback(res.data, res.status); + }); + }; + + var errorCallback = function() {}; + + bdmVppService.checkAndWriteVpp(bridgeDomainId, vppId, write, errorCallback); + + + }; + + s.delete = function(interf, bridgeDomainId, vppId, successCallback, errorCallback) { + var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology') + .one('topology').one(bridgeDomainId).one('node').one(vppId).one('termination-point').one(encodeURIComponent(interf['tp-id'])); + + restObj.remove().then(function(data) { successCallback(data); }, function(res) { errorCallback(res.data, res.status); @@ -41,7 +61,6 @@ define(['app/vpp/vpp.module'], function(vpp) { }); }; - return s; }); }); \ No newline at end of file -- cgit 1.2.3-korg