summaryrefslogtreecommitdiffstats
path: root/vbd/gui/module/src/main/resources/vpp/services
diff options
context:
space:
mode:
Diffstat (limited to 'vbd/gui/module/src/main/resources/vpp/services')
-rw-r--r--vbd/gui/module/src/main/resources/vpp/services/bdm.bridgedomain.service.js51
-rw-r--r--vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js37
-rw-r--r--vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js41
3 files changed, 123 insertions, 6 deletions
diff --git a/vbd/gui/module/src/main/resources/vpp/services/bdm.bridgedomain.service.js b/vbd/gui/module/src/main/resources/vpp/services/bdm.bridgedomain.service.js
index 9316cbff7..5d3b69632 100644
--- a/vbd/gui/module/src/main/resources/vpp/services/bdm.bridgedomain.service.js
+++ b/vbd/gui/module/src/main/resources/vpp/services/bdm.bridgedomain.service.js
@@ -5,10 +5,57 @@
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-define(['app/vpp/vpp.module', 'next'], function(vpp) {
- vpp.register.factory('bdmBridgeDomainService', function(VPPRestangular, VPPRestangularXml) {
+define(['app/vpp/vpp.module'], function(vpp) {
+ vpp.register.factory('bdmBridgeDomainService', function(VPPRestangular) {
var s = {};
+ var BridgeDomain = function(topologyId) {
+ this['topology-id'] = topologyId || null;
+ this['topology-types'] = {
+ 'vbridge-topology:vbridge-topology': {}
+ };
+ this['underlay-topology'] = [
+ {
+ 'topology-ref': 'topology-netconf'
+ }
+ ];
+ this['vbridge-topology:tunnel-type'] = 'tunnel-type-vxlan';
+ this['vbridge-topology:vxlan'] = {
+ 'vni': '1'
+ };
+ this['vbridge-topology:flood'] = "true",
+ this['vbridge-topology:forward'] = "true",
+ this['vbridge-topology:learn'] = "true",
+ this['vbridge-topology:unknown-unicast-flood'] = "true",
+ this['vbridge-topology:arp-termination'] = "false"
+ };
+
+ s.createObj = function(topologyId) {
+ return new BridgeDomain(topologyId);
+ };
+
+ s.add = function(bridgeDomain, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomain['topology-id']);
+ var dataObj = {'topology': [bridgeDomain]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = function(successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology');
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file
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 9dca2d29d..341fb5d48 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
@@ -5,10 +5,43 @@
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-define(['app/vpp/vpp.module', 'next'], function(vpp) {
- vpp.register.factory('bdmInterfaceService', function(VPPRestangular, VPPRestangularXml) {
+define(['app/vpp/vpp.module'], function(vpp) {
+ vpp.register.factory('bdmInterfaceService', function(VPPRestangular) {
var s = {};
+ var Interface = function(tpId, interfaceName) {
+ this['tp-id'] = tpId || null;
+ this['vbridge-topology:user-interface'] = interfaceName;
+ };
+
+ s.createObj = function(tpId, interfaceName) {
+ return new Interface(tpId, interfaceName);
+ };
+
+ s.add = function(interface, 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]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = 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);
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file
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 5a23d831c..b817a75a3 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
@@ -5,10 +5,47 @@
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-define(['app/vpp/vpp.module', 'next'], function(vpp) {
- vpp.register.factory('bdmVppService', function(VPPRestangular, VPPRestangularXml) {
+define(['app/vpp/vpp.module'], function(vpp) {
+ vpp.register.factory('bdmVppService', function(VPPRestangular) {
var s = {};
+ var Vpp = function(nodeId, vppId) {
+ this['node-id'] = nodeId || null;
+ this['supporting-node'] = [
+ {
+ 'topology-ref': 'topology-netconf',
+ 'node-ref': vppId
+ }
+ ];
+ this['netconf-node-topology:pass-through'] = {};
+ };
+
+ s.createObj = function(nodeId, vppId) {
+ return new Vpp(nodeId, vppId);
+ };
+
+ s.add = function(vpp, bridgeDomainId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomainId).one('node').one(vpp['node-id']);
+ var dataObj = {'node': [vpp]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = function(bridgeDomainId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomainId);
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file