1 if (typeof TCD3
=== 'undefined') {
5 TCD3
.OsmController
= (function (global
) {
10 OsmController
.prototype.constructor = OsmController
;
15 function OsmController() {
21 OsmController
.prototype.addNode = function (graph_editor
, node
, success
, error
) {
23 var element_type
= node
.info
.type
;
24 var desc_id
= node
.info
.desc_id
;
25 var desc_type
= node
.info
.desc_type
;
26 var data_form
= new FormData();
27 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
28 for (var key
in node
) {
29 data_form
.append(key
, node
[key
]);
32 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/addElement/' + element_type
,
43 OsmController
.prototype.addLink = function (graph_editor
, link
, success
, error
) {
46 var desc_id
= getUrlParameter('id');
47 var desc_type
= getUrlParameter('type');
48 if (desc_type
=== 'nsd') {
49 var element_type
= 'cp';
50 var data_form
= new FormData();
52 var vnfd_node
= (link
.source
.info
.type
=== 'vnf') ? link
.source
: link
.target
;
53 var vld_node
= (link
.source
.info
.type
=== 'ns_vl') ? link
.source
: link
.target
;
54 bootbox
.prompt("Please insert the vnfd-connection-point-ref:", function(result
){
56 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
57 data_form
.append('vnfd-connection-point-ref', result
);
58 data_form
.append('member-vnf-index-ref', vnfd_node
.info
.osm
['member-vnf-index']);
59 data_form
.append('vnfd-id-ref', vnfd_node
.info
.osm
['vnfd-id-ref']);
60 data_form
.append('vld_id', vld_node
.info
.osm
['id']);
63 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/addElement/' + element_type
,
78 else if (desc_type
=== 'vnfd') {
79 if (['vdu', 'cp'].indexOf(link
.source
.info
.type
) > -1 && ['vdu', 'cp'].indexOf(link
.target
.info
.type
) > -1) {
80 var vdu_node
= (link
.source
.info
.type
=== 'vdu') ? link
.source
: link
.target
;
81 var cp_node
= (link
.source
.info
.type
=== 'cp') ? link
.source
: link
.target
;
83 var data_form
= new FormData();
84 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
85 data_form
.append('vdu_id', vdu_node
.info
.osm
.id
);
86 data_form
.append('external-connection-point-ref', cp_node
.info
.osm
.name
);
87 data_form
.append('name', "eth_" + generateUID());
89 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/addElement/interface',
99 else if (['vdu', 'vnf_vl'].indexOf(link
.source
.info
.type
) > -1 && ['vdu', 'vnf_vl'].indexOf(link
.target
.info
.type
) > -1) {
101 var vdu_node
= (link
.source
.info
.type
=== 'vdu') ? link
.source
: link
.target
;
102 var vld_node
= (link
.source
.info
.type
=== 'vnf_vl') ? link
.source
: link
.target
;
104 var data_form
= new FormData();
105 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
106 data_form
.append('vdu_id', vdu_node
.info
.osm
.id
);
107 data_form
.append('vld_id', vld_node
.info
.osm
.id
);
108 data_form
.append('id', "intcp_" + generateUID());
111 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/addElement/int_cp',
127 OsmController
.prototype.removeNode = function (graph_editor
, node
, success
, error
) {
129 var desc_id
= getUrlParameter('id');
130 var desc_type
= getUrlParameter('type');
131 var element_type
= node
['info']['type'];
132 var data_form
= new FormData();
133 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
134 for (var key
in node
.info
.osm
) {
135 data_form
.append(key
, node
.info
.osm
[key
]);
139 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/removeElement/' + element_type
,
151 OsmController
.prototype.updateNode = function (graph_editor
, node
, args
, success
, error
) {
153 var desc_id
= getUrlParameter('id');
154 var desc_type
= getUrlParameter('type');
155 var element_type
= node
['info']['type'];
157 var data_form
= new FormData();
158 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
159 data_form
.append('old', JSON
.stringify(node
.info
.osm
));
160 data_form
.append('update', JSON
.stringify(args
));
161 /*for (var key in node.info.osm) {
162 data_form.append(key, node.info.osm[key]);
167 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/updateElement/' + element_type
,
179 OsmController
.prototype.updateGraphParams = function (args
, success
, error
) {
180 var desc_id
= getUrlParameter('id');
181 var desc_type
= getUrlParameter('type');
182 var data_form
= new FormData();
183 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
184 data_form
.append('update', JSON
.stringify(args
));
186 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/updateElement/graph_params',
197 OsmController
.prototype.removeLink = function (graph_editor
, link
, success
, error
) {
200 'desc_id': link
.desc_id
,
201 'source': link
.source
.id
,
202 'source_type': link
.source
.info
.type
,
203 'target': link
.target
.id
,
204 'target_type': link
.target
.info
.type
,
209 var desc_id
= getUrlParameter('id');
210 var desc_type
= getUrlParameter('type');
212 if (desc_type
=== 'nsd') {
213 var element_type
= 'ns_cp';
214 var data_form
= new FormData();
215 var ns_cp
= (link
.source
.info
.type
=== 'ns_cp') ? link
.source
: link
.target
;
216 data_form
.append('csrfmiddlewaretoken', getCookie('csrftoken'));
217 data_form
.append('member-vnf-index-ref', ns_cp
.info
.osm
['member-vnf-index-ref']);
218 data_form
.append('vnfd-id-ref', ns_cp
.info
.osm
['vnfd-id-ref']);
219 data_form
.append('vld_id', ns_cp
.info
.osm
['vld_id']);
222 url
: '/projects/descriptors/' + desc_type
+ '/' + desc_id
+ '/removeElement/' + element_type
,
239 console
.log("::OsmController::", text
);
242 return OsmController
;
245 if (typeof module
=== 'object') {
246 module
.exports
= TCD3
.OsmController
;