Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_port-mirror-get-policy.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
3     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}'>
4     <method rpc='port-mirror-get-policy' mode='sync'>
5         <block atomic="true">
6             <set>
7                 <parameter name='tmp.policy-name' value='`$db.cap[0].policy-name`' />
8             </set>
9             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
10                 <parameter name='templateFileName' value="`$prop.restapi.templateDir + '/' + $prop.restapi.pm.getpolicy.templatefile`" />
11                 <parameter name='restapiUrl' value="`$prop.policy-manager.url + '/pdp/api/getConfig'`" />
12                 <parameter name='format' value='json' />
13                 <parameter name='httpMethod' value='POST' />
14                 <parameter name='responsePrefix' value="policy" />
15                 <parameter name='customHttpHeaders'
16       value="`'Authorization=Basic ' + $prop.policy-manager.authorization + ',ClientAuth=Basic ' + $prop.policy-manager.clientauth + ',Environment=' + $prop.policy-manager.environment `" />
17                 <outcome value='success'>
18                     <block atomic="true"></block>
19                 </outcome>
20                 <outcome value='Other'>
21                     <return status='failure'>
22                         <parameter name='error-code' value='500' />
23                         <parameter name='error-message' value='Failed to get policy from Policy Manager' />
24                     </return>
25                 </outcome>
26             </execute>
27             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='jsonStringToCtx' >
28                 <parameter name='source' value="policy.config" />
29                 <parameter name='outputPath' value="tmp.config-ctx" />
30                 <parameter name='isEscaped' value='false' />
31                 <outcome value='success'>
32                     <block atomic="true"></block>
33                 </outcome>
34                 <outcome value='Other'>
35                     <return status='failure'>
36                         <parameter name='error-code' value='500' />
37                         <parameter name='error-message' value='Failed to convert config variable from PolicyManager' />
38                     </return>
39                 </outcome>
40             </execute>
41             <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="toLower">
42                 <parameter name="source" value="`$tmp.tenant-context`" />
43                 <parameter name="outputPath" value="tmp.lc-tenant-context" />
44             </execute>
45             <switch test='`$tmp.lc-tenant-context`'>
46                 <outcome value=''>
47                     <set>
48                         <parameter name='tmp.dest-p-interface' value='`$tmp.config-ctx.content.defaultContext`' />
49                     </set>
50                 </outcome>
51                 <outcome value='Other'>
52                     <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome='true'>
53                         <parameter name="source" value="`$tmp.lc-tenant-context`" />
54                         <parameter name="target" value="prod" />
55                         <outcome value='true'>
56                             <set>
57                                 <parameter name='tmp.dest-p-interface' value='`$tmp.config-ctx.content.productionContext`' />
58                             </set>
59                         </outcome>
60                         <outcome value='Other'>
61                             <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome='true'>
62                                 <parameter name="source" value="`$tmp.lc-tenant-context`" />
63                                 <parameter name="target" value="test" />
64                                 <outcome value='true'>
65                                     <set>
66                                         <parameter name='tmp.dest-p-interface' value='`$tmp.config-ctx.content.testContext`' />
67                                     </set>
68                                 </outcome>
69                                 <outcome value='Other'>
70                                     <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome='true'>
71                                         <parameter name="source" value="`$tmp.lc-tenant-context`" />
72                                         <parameter name="target" value="dev" />
73                                         <outcome value='true'>
74                                             <set>
75                                                 <parameter name='tmp.dest-p-interface' value='`$tmp.config-ctx.content.developmentContext`' />
76                                             </set>
77                                         </outcome>
78                                         <outcome value='Other'>
79                                             <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="contains" emitsOutcome='true'>
80                                                 <parameter name="source" value="`$tmp.lc-tenant-context`" />
81                                                 <parameter name="target" value="default" />
82                                                 <outcome value='true'>
83                                                     <set>
84                                                         <parameter name='tmp.dest-p-interface' value='`$tmp.config-ctx.content.defaultContext`' />
85                                                     </set>
86                                                 </outcome>
87                                                 <outcome value='Other'>
88                                                     <return status='failure'>
89                                                         <parameter name='error-code' value='500' />
90                                                         <parameter name='error-message' value="`'Unexpected tenant-context value of ' + $tmp.tenant-context`" />
91                                                     </return>
92                                                 </outcome>
93                                             </execute>
94                                         </outcome>
95                                     </execute>
96                                 </outcome>
97                             </execute>
98                         </outcome>
99                     </execute>
100                 </outcome>
101             </switch>
102             <switch test='`$tmp.dest-p-interface`'>
103                 <outcome value=''>
104                     <return status='failure'>
105                         <parameter name='error-code' value='500' />
106                         <parameter name='error-message' value="`'Unable to find p-interface in policy ' + tmp.policy-name`" />
107                     </return>
108                 </outcome>
109             </switch>
110             <return status='success'></return>
111         </block>
112     </method>
113 </service-logic>