summaryrefslogtreecommitdiffstats
path: root/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
diff options
context:
space:
mode:
Diffstat (limited to 'vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js')
-rw-r--r--vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js31
1 files changed, 30 insertions, 1 deletions
diff --git a/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js b/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
index 0a24c2329..a86fa06fc 100644
--- a/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
+++ b/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
@@ -55,6 +55,16 @@ define(['app/vpp/vpp.module'], function(vpp) {
});
};
+ s.delete = function(bridgeDomainId, vppId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomainId).one('node').one(vppId);
+
+ return restObj.remove().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
s.checkAndWriteVpp = function(bridgeDomainId, vppId, successCallback, errorCallback) {
s.getOne(bridgeDomainId, vppId,
function() {
@@ -69,9 +79,28 @@ define(['app/vpp/vpp.module'], function(vpp) {
});
}
);
+ };
- //getPromise.then
+ s.checkAndDeleteVpp = function(bridgeDomainId, vppId, successCallback, errorCallback) {
+ s.getOne(bridgeDomainId, vppId,
+ function(data) {
+ if(!data['termination-point']) {
+ s.delete(bridgeDomainId, vppId,
+ function(){
+ successCallback();
+ },
+ function() {
+ errorCallback();
+ }
+ );
+ }
+ },
+ function() {
+ errorCallback();
+ }
+ );
};
+
return s;
});
}); \ No newline at end of file