Add generic-resource-api DG seed code
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_generate-panorama-name.xml
1 <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='GENERIC-RESOURCE-API' version='${project.version}'><method rpc='generate-panorama-name' mode='sync'>\r
2 <block atomic="true"><set>\r
3 <parameter name='tmp.trust-sz' value='$TenantOAMNetworkRole_$LandingNetworkRole_T' />\r
4 <parameter name='tmp.untrust-sz' value='$TenantOAMNetworkRole_$LandingNetworkRole_U' />\r
5 </set><set>\r
6 <parameter name='original-name' value='`$security-zone-topology-operation-input.security-zone-request-input.untrusted-network-role`' />\r
7 </set><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
8     <parameter name="original_string" value="`$original-name`" />\r
9     <parameter name="regex" value="\."/>\r
10     <parameter name="limit" value="2" />\r
11     <parameter name="ctx_memory_result_key" value="splits" />\r
12   \r
13 </execute><switch test='`$splits_length`'>\r
14 <outcome value='1'>\r
15 <set>\r
16 <parameter name='new-name' value='`$splits[0]`' />\r
17 </set></outcome><outcome value='2'>\r
18 <set>\r
19 <parameter name='new-name' value='`$splits[1]`' />\r
20 </set></outcome><outcome value='Other'>\r
21 <return status='failure'>\r
22 <parameter name='error-code' value='500' />\r
23 <parameter name='error-message' value='Unexpected network role used for panorama naming' />\r
24 </return></outcome></switch><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='getLength' >\r
25     <parameter name="source" value="`$new-name`" />\r
26     <parameter name="outputPath" value="tmp.strlen"/>\r
27   \r
28 </execute><switch test='`$tmp.strlen > 14`'>\r
29 <outcome value='true'>\r
30 <block atomic="true"><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring' >\r
31     <parameter name="string" value="`$new-name`" />\r
32     <parameter name="result" value="new-name"/>\r
33     <parameter name="begin-index" value="0" />\r
34     <parameter name="end-index" value="14" />\r
35   \r
36 </execute></block></outcome><outcome value='false'>\r
37 <block atomic="true"><set>\r
38 <parameter name='new-name' value='`$new-name`' />\r
39 </set></block></outcome></switch><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
40     <parameter name="source" value="`$tmp.trust-sz`"/>\r
41     <parameter name="outputPath" value="tmp.trust-sz"/>\r
42     <parameter name="target" value="$TenantOAMNetworkRole"/>\r
43     <parameter name="replacement" value="`$new-name`"/>\r
44 \r
45 </execute><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
46     <parameter name="source" value="`$tmp.untrust-sz`"/>\r
47     <parameter name="outputPath" value="tmp.untrust-sz"/>\r
48     <parameter name="target" value="$TenantOAMNetworkRole"/>\r
49     <parameter name="replacement" value="`$new-name`"/>\r
50 \r
51 </execute><set>\r
52 <parameter name='original-name' value='`$security-zone-topology-operation-input.security-zone-request-input.trusted-network-role`' />\r
53 </set><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
54     <parameter name="original_string" value="`$original-name`" />\r
55     <parameter name="regex" value="\."/>\r
56     <parameter name="limit" value="2" />\r
57     <parameter name="ctx_memory_result_key" value="splits" />\r
58   \r
59 </execute><switch test='`$splits_length`'>\r
60 <outcome value='1'>\r
61 <set>\r
62 <parameter name='new-name' value='`$splits[0]`' />\r
63 </set></outcome><outcome value='2'>\r
64 <set>\r
65 <parameter name='new-name' value='`$splits[1]`' />\r
66 </set></outcome><outcome value='Other'>\r
67 <return status='failure'>\r
68 <parameter name='error-code' value='500' />\r
69 <parameter name='error-message' value='Unexpected network role used for panorama naming' />\r
70 </return></outcome></switch><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='getLength' >\r
71     <parameter name="source" value="`$new-name`" />\r
72     <parameter name="outputPath" value="tmp.strlen"/>\r
73   \r
74 </execute><switch test='`$tmp.strlen > 14`'>\r
75 <outcome value='true'>\r
76 <block atomic="true"><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='substring' >\r
77     <parameter name="string" value="`$new-name`" />\r
78     <parameter name="result" value="new-name"/>\r
79     <parameter name="begin-index" value="0" />\r
80     <parameter name="end-index" value="14" />\r
81   \r
82 </execute></block></outcome><outcome value='false'>\r
83 <block atomic="true"><set>\r
84 <parameter name='new-name' value='`$new-name`' />\r
85 </set></block></outcome></switch><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
86     <parameter name="source" value="`$tmp.trust-sz`"/>\r
87     <parameter name="outputPath" value="tmp.trust-sz"/>\r
88     <parameter name="target" value="$LandingNetworkRole"/>\r
89     <parameter name="replacement" value="`$new-name`"/>\r
90 \r
91 </execute><execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\r
92     <parameter name="source" value="`$tmp.untrust-sz`"/>\r
93     <parameter name="outputPath" value="tmp.untrust-sz"/>\r
94     <parameter name="target" value="$LandingNetworkRole"/>\r
95     <parameter name="replacement" value="`$new-name`"/>\r
96 \r
97 </execute></block></method></service-logic>