4 def remove_node(descriptor_type
, descriptor
, node_type
, element_id
, args
):
5 if descriptor_type
== 'nsd':
6 if 'nsd-catalog' in descriptor
:
7 nsd
= descriptor
['nsd-catalog']['nsd'][0]
8 elif 'nsd:nsd-catalog' in descriptor
:
9 nsd
= descriptor
['nsd:nsd-catalog']['nsd'][0]
11 if node_type
== 'ns_vl':
12 for k
, v
in enumerate(nsd
['vld']):
13 if v
['id'] == args
['id']:
15 elif node_type
== 'vnf':
16 for k
, v
in enumerate(nsd
['constituent-vnfd']):
17 if str(v
['member-vnf-index']) == str(args
['member-vnf-index']) and str(v
['vnfd-id-ref']) == str(
19 nsd
['constituent-vnfd'].pop(k
)
20 for j
, vld
in enumerate(nsd
['vld']):
21 vld
['vnfd-connection-point-ref'] = [item
for item
in vld
['vnfd-connection-point-ref'] if
22 str(item
['member-vnf-index-ref']) != str(
23 args
['member-vnf-index']) or str(
24 item
['vnfd-id-ref']) != str(args
['vnfd-id-ref'])]
25 elif node_type
== 'cp':
26 for vld
in nsd
['vld']:
27 if vld
['id'] == args
['vld_id']:
28 vld
['vnfd-connection-point-ref'] = [item
for item
in vld
['vnfd-connection-point-ref'] if
29 str(item
['member-vnf-index-ref']) != str(
30 args
['member-vnf-index-ref']) or str(
31 item
['vnfd-id-ref']) != str(args
['vnfd-id-ref'])]
36 def update_node(descriptor_type
, descriptor
, node_type
, old
, updated
):
37 if descriptor_type
== 'nsd':
38 if 'nsd-catalog' in descriptor
:
39 nsd
= descriptor
['nsd-catalog']['nsd'][0]
40 elif 'nsd:nsd-catalog' in descriptor
:
41 nsd
= descriptor
['nsd:nsd-catalog']['nsd'][0]
43 if node_type
== 'ns_vl':
44 for k
, v
in enumerate(nsd
['vld']):
45 if v
['id'] == old
['id']:
46 nsd
['vld'][k
].update(updated
)
49 elif node_type
== 'vnf':
50 for k
, v
in enumerate(nsd
['constituent-vnfd']):
51 if str(v
['member-vnf-index']) == str(old
['member-vnf-index']) and str(v
['vnfd-id-ref']) == str(
59 def add_base_node(descriptor_type
, descriptor
, node_type
, element_id
, args
):
60 if descriptor_type
== 'nsd':
61 if 'nsd-catalog' in descriptor
:
62 nsd
= descriptor
['nsd-catalog']['nsd'][0]
63 elif 'nsd:nsd-catalog' in descriptor
:
64 nsd
= descriptor
['nsd:nsd-catalog']['nsd'][0]
65 if node_type
== 'ns_vl':
67 "vim-network-name": "PUBLIC",
69 "vnfd-connection-point-ref": [],
70 "mgmt-network": "true",
74 if node_type
== 'vnf':
76 for cvnfd
in nsd
['constituent-vnfd']:
77 indexes
.append(int(cvnfd
["member-vnf-index"]))
78 memberindex
= max(indexes
) + 1
79 nsd
['constituent-vnfd'].append({
80 "member-vnf-index": memberindex
,
81 "vnfd-id-ref": element_id
84 for vld
in nsd
['vld']:
85 if vld
['id'] == args
['vld_id']:
86 if'vnfd-connection-point-ref' not in vld
:
87 vld
['vnfd-connection-point-ref'] = []
88 vld
['vnfd-connection-point-ref'].append(
90 "vnfd-connection-point-ref": args
['vnfd-connection-point-ref'],
91 "member-vnf-index-ref": args
['member-vnf-index-ref'],
92 "vnfd-id-ref": args
['vnfd-id-ref']
98 def update_graph_params(descriptor_type
, descriptor
, updated
):
99 if descriptor_type
== 'nsd':
100 if 'nsd-catalog' in descriptor
:
101 nsd
= descriptor
['nsd-catalog']['nsd'][0]
102 elif 'nsd:nsd-catalog' in descriptor
:
103 nsd
= descriptor
['nsd:nsd-catalog']['nsd'][0]