summaryrefslogtreecommitdiffstats
path: root/platform-logic/vnfapi/src/main/xml/VNF-API_vnf-topology-changeassign.xml
blob: 40c665f8608d2e83e7a8a0ca578af45f08d7ea88 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='VNF-API' version='${project.version}'><method rpc='vnf-topology-changeassign' mode='sync'>
<block atomic="true"><switch test="`$service-data.oper-status.order-status == Active`">
<!--
leaf order-status {
	type enumeration {
		enum "Active";
		enum "PendingAssignment";
		enum "PendingCreate";
		enum "PendingUpdate";
		enum "Deleted";
	}
}
--><outcome value='false'><return status='failure'>
	<parameter name='error-code' value='400'/>
	<parameter name='error-message' value='Invalid service-data order status'/></return></outcome></switch><call module='VNF-API' rpc='vnf-topology-assign-vfmodule' mode='sync' ></call><get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
	resource="vf-module" 
		key="vf-module.vf-module-id = $vnf-topology-operation-input.vnf-request-information.vnf-id 
			and generic-vnf.vnf-id = $vnf-topology-operation-input.vnf-request-information.generic-vnf-id" 
		local-only="false" 
		pfx="tmp.AnAI.vfmodule"><outcome value='failure'>
<return status='failure'>
	<parameter name='error-code' value='500'/>
	<parameter name='error-message' value="`'An error occurred while querying vf-module from AnAI with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id`"/></return></outcome><outcome value='not-found'>
<return status='failure'>
	<parameter name='error-code' value='500'/>
	<parameter name='error-message' value="`'An error occurred while querying vf-module from AnAI with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id`"/></return></outcome></get-resource><delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
	resource="vf-module:relationship-list" 
		key="vf-module.vf-module-id = $vnf-topology-operation-input.vnf-request-information.vnf-id 
			AND generic-vnf.vnf-id = $vnf-topology-operation-input.vnf-request-information.generic-vnf-id 
			AND related-to = l3-network" 
	force="true" 
	local-only="false"><outcome value='failure'>
<return status='failure'>
	<parameter name='error-code' value='500'/>
	<parameter name='error-message' value="`'An error occurred while deleting existing vf-module l3-network relationship in AnAI with with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id + ' vf-module update FAILED.'`"/></return></outcome></delete><switch test="`$service-data.vnf-topology-information.vnf-assignments.vnf-networks_length`"><outcome value=''><set>
<parameter name = "service-data.vnf-topology-information.vnf-assignments.vnf-networks_length" value="0" />
</set></outcome></switch><for index="i" start="0" end="`$service-data.vnf-topology-information.vnf-assignments.vnf-networks_length`"><save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
	resource="vf-module:relationship-list" 
		key="vf-module.vf-module-id = $vnf-topology-operation-input.vnf-request-information.vnf-id 
			AND generic-vnf.vnf-id = $vnf-topology-operation-input.vnf-request-information.generic-vnf-id" 
	force="true" 
	local-only="false">
	
	<parameter name="relationship-list.relationship[0].related-to" value="l3-network" />
	<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="l3-network.network-id" />
	<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$service-data.vnf-topology-information.vnf-assignments.vnf-networks[$i].network-id`" /><outcome value='failure'>
<block>
<set>
	<parameter name="error-code" value="500" />
	<parameter name="error-message" value="`' | An error occurred while saving l3-network relationship with network-id = ' + $service-data.vnf-topology-information.vnf-assignments.vnf-networks[$i].network-id + ' for vf-module with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id`" />
</set><delete plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
	resource="vf-module:relationship-list" 
		key="vf-module.vf-module-id = $vnf-topology-operation-input.vnf-request-information.vnf-id 
			AND generic-vnf.vnf-id = $vnf-topology-operation-input.vnf-request-information.generic-vnf-id 
			AND related-to = l3-network" 
	force="true" 
	local-only="false"></delete><for index="i" start="0" end="`$tmp.AnAI.vfmodule.relationship-list.relationship_length`"><switch test="`$tmp.AnAI.vfmodule.relationship-list.relationship[$i].related-to`"><outcome value='l3-network'><for index="j" start="0" end="`$tmp.AnAI.vfmodule.relationship-list.relationship[$i].relationship-data_length`"><save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" 
	resource="vf-module:relationship-list" 
		key="vf-module.vf-module-id = $vnf-topology-operation-input.vnf-request-information.vnf-id 
			AND generic-vnf.vnf-id = $vnf-topology-operation-input.vnf-request-information.generic-vnf-id" 
	force="true" 
	local-only="false">
	
	<parameter name="relationship-list.relationship[0].related-to" value="l3-network" />
	<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="l3-network.network-id" />
	<parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$tmp.AnAI.vfmodule.relationship-list.relationship[$i].relationship-data[$j].relationship-value`" /><outcome value='failure'>
<set>
	<parameter name="error-code" value="500" />
	<parameter name="error-message" value="`$error-message + ' | An error occurred while during rollback of l3-network relationship for vf-module with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id`" />
</set></outcome><outcome value='not-found'>
<set>
	<parameter name="error-code" value="500" />
	<parameter name="error-message" value="`$error-message + ' | An error occurred while during rollback of l3-network relationship for vf-module with vf-module-id = ' + $vnf-topology-operation-input.vnf-request-information.vnf-id + ' and generic-vnf-id = ' + $vnf-topology-operation-input.vnf-request-information.generic-vnf-id`" />
</set></outcome></save></for></outcome></switch></for><return status='failure'>
	<parameter name='error-code' value='500'/>
	<parameter name='error-message' value="`'Failed to update vf-module l3-network relationship in AnAI. ' + $error-message`"/></return></block></outcome></save></for><set>
	<parameter name="service-data.oper-status.last-order-status" value="`$service-data.oper-status.order-status`"/></set><set>
	<parameter name="service-data.oper-status.order-status" value="PendingUpdate"/></set><set>
	<parameter name="service-data.oper-status.last-action" value="`$service-data.request-information.request-action`"/></set><set>
<parameter name="ack-final" value="Y"/></set><return status='success'>
	<parameter name="error-code" value="200" /></return></block></method></service-logic>