Remove policy from PEF when removing op policy
[clamp.git] / src / main / resources / clds / camel / routes / policy-flows.xml
1 <routes xmlns="http://camel.apache.org/schema/spring">
2     <route id="verify-one-policy">
3         <from uri="direct:verify-one-policy"/>
4         <setProperty propertyName="raiseHttpExceptionFlag">
5             <simple resultType="java.lang.Boolean">false</simple>
6         </setProperty>
7         <to uri="direct:get-policy"/>
8         <when>
9             <simple>${header.CamelHttpResponseCode} != 200</simple>
10             <setProperty propertyName="policyFound">
11                 <simple resultType="java.lang.Boolean">false</simple>
12             </setProperty>
13             <log loggingLevel="WARN"
14                  message="At least one policy has not been found on policy engine: ${exchangeProperty[policyName]}"/>
15         </when>
16         <setProperty propertyName="raiseHttpExceptionFlag">
17             <simple resultType="java.lang.Boolean">false</simple>
18         </setProperty>
19         <to uri="direct:get-deployment-policy"/>
20         <when>
21             <simple>${header.CamelHttpResponseCode} != 200</simple>
22             <setProperty propertyName="policyDeployed">
23                 <simple resultType="java.lang.Boolean">false</simple>
24             </setProperty>
25             <log loggingLevel="WARN"
26                  message="At least one policy has not been deployed on policy engine: ${exchangeProperty[policyName]}"/>
27         </when>
28         <setProperty propertyName="newPolicyState">
29             <simple>${exchangeProperty[policyComponent].computeState(*)}</simple>
30         </setProperty>
31     </route>
32
33     <route id="get-policy">
34         <from uri="direct:get-policy"/>
35         <doTry>
36             <log loggingLevel="INFO"
37                  message="Getting Policy: ${exchangeProperty[policyName]}"/>
38             <to
39                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Get Policy')"/>
40             <setHeader headerName="CamelHttpMethod">
41                 <constant>GET</constant>
42             </setHeader>
43             <setHeader headerName="X-ONAP-RequestID">
44                 <simple>${exchangeProperty[X-ONAP-RequestID]}
45                 </simple>
46             </setHeader>
47             <setHeader headerName="X-ONAP-InvocationID">
48                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
49                 </simple>
50             </setHeader>
51             <setHeader headerName="X-ONAP-PartnerName">
52                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
53                 </simple>
54             </setHeader>
55             <log loggingLevel="INFO"
56                  message="Endpoint to get policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/${exchangeProperty[policyTypeVersion]}/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}"></log>
57             <toD
58                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/${exchangeProperty[policyTypeVersion]}/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
59             <doFinally>
60                 <to uri="direct:reset-raise-http-exception-flag"/>
61                 <to
62                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
63                 <setProperty propertyName="logMessage">
64                     <simple>${exchangeProperty[policyName]} GET
65                         Policy status
66                     </simple>
67                 </setProperty>
68                 <setProperty propertyName="logComponent">
69                     <simple>POLICY</simple>
70                 </setProperty>
71                 <to uri="direct:dump-loop-log-http-response"/>
72             </doFinally>
73         </doTry>
74     </route>
75
76     <route id="get-deployment-policy">
77         <from uri="direct:get-deployment-policy"/>
78         <doTry>
79             <log loggingLevel="INFO"
80                  message="Getting the policy deployment in PDP: ${exchangeProperty[policyName]}"/>
81             <to
82                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy deployment in PDP')"/>
83             <setHeader headerName="CamelHttpMethod">
84                 <constant>GET</constant>
85             </setHeader>
86             <setHeader headerName="X-ONAP-RequestID">
87                 <simple>${exchangeProperty[X-ONAP-RequestID]}
88                 </simple>
89             </setHeader>
90             <setHeader headerName="X-ONAP-InvocationID">
91                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
92                 </simple>
93             </setHeader>
94             <setHeader headerName="X-ONAP-PartnerName">
95                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
96                 </simple>
97             </setHeader>
98             <log loggingLevel="INFO"
99                  message="Endpoint to get policy deployment status: {{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0"></log>
100             <toD
101                     uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
102             <doFinally>
103                 <to uri="direct:reset-raise-http-exception-flag"/>
104                 <to
105                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
106                 <setProperty propertyName="logMessage">
107                     <simple>${exchangeProperty[policyName]} GET Policy deployment
108                         status
109                     </simple>
110                 </setProperty>
111                 <setProperty propertyName="logComponent">
112                     <simple>POLICY</simple>
113                 </setProperty>
114                 <to uri="direct:dump-loop-log-http-response"/>
115             </doFinally>
116         </doTry>
117     </route>
118     <route id="get-all-policy-models">
119         <from uri="direct:get-all-policy-models"/>
120         <doTry>
121             <log loggingLevel="INFO" message="Getting all the policy models"/>
122             <to
123                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting all the policy models')"/>
124             <setHeader headerName="CamelHttpMethod">
125                 <constant>GET</constant>
126             </setHeader>
127             <setHeader headerName="X-ONAP-RequestID">
128                 <simple>${exchangeProperty[X-ONAP-RequestID]}
129                 </simple>
130             </setHeader>
131             <setHeader headerName="X-ONAP-InvocationID">
132                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
133                 </simple>
134             </setHeader>
135             <setHeader headerName="X-ONAP-PartnerName">
136                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
137                 </simple>
138             </setHeader>
139             <log loggingLevel="INFO"
140                  message="Endpoint to get all policy models: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes"></log>
141             <toD
142                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
143             <convertBodyTo type="java.lang.String"/>
144             <doFinally>
145                 <to uri="direct:reset-raise-http-exception-flag"/>
146                 <to
147                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
148             </doFinally>
149         </doTry>
150     </route>
151     <route id="get-policy-model">
152         <from uri="direct:get-policy-model"/>
153         <doTry>
154             <log loggingLevel="INFO"
155                  message="Getting the policy model: ${exchangeProperty[policyModelName]}/${exchangeProperty[policyModelVersion]}"/>
156             <to
157                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy model')"/>
158             <setHeader headerName="CamelHttpMethod">
159                 <constant>GET</constant>
160             </setHeader>
161             <setHeader headerName="X-ONAP-RequestID">
162                 <simple>${exchangeProperty[X-ONAP-RequestID]}
163                 </simple>
164             </setHeader>
165             <setHeader headerName="X-ONAP-InvocationID">
166                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
167                 </simple>
168             </setHeader>
169             <setHeader headerName="X-ONAP-PartnerName">
170                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
171                 </simple>
172             </setHeader>
173             <log loggingLevel="INFO"
174                  message="Endpoint to get policy model: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}"></log>
175             <toD
176                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
177             <convertBodyTo type="java.lang.String"/>
178             <doFinally>
179                 <to uri="direct:reset-raise-http-exception-flag"/>
180                 <to
181                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
182             </doFinally>
183         </doTry>
184     </route>
185     <route id="create-policy">
186         <from uri="direct:create-policy"/>
187         <doTry>
188             <log loggingLevel="INFO"
189                  message="Creating Policy: ${exchangeProperty[policy].getName()}"/>
190             <to
191                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Policy')"/>
192             <setBody>
193                 <simple>${exchangeProperty[policy].createPolicyPayload()}
194                 </simple>
195             </setBody>
196             <setHeader headerName="CamelHttpMethod">
197                 <constant>POST</constant>
198             </setHeader>
199             <setHeader headerName="Content-Type">
200                 <constant>application/json</constant>
201             </setHeader>
202             <setHeader headerName="X-ONAP-RequestID">
203                 <simple>${exchangeProperty[X-ONAP-RequestID]}
204                 </simple>
205             </setHeader>
206             <setHeader headerName="X-ONAP-InvocationID">
207                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
208                 </simple>
209             </setHeader>
210             <setHeader headerName="X-ONAP-PartnerName">
211                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
212                 </simple>
213             </setHeader>
214             <log loggingLevel="INFO"
215                  message="Endpoint to create policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies"></log>
216             <toD
217                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
218             <doFinally>
219                 <to uri="direct:reset-raise-http-exception-flag"/>
220                 <to
221                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
222                 <setProperty propertyName="logMessage">
223                     <simple>${exchangeProperty[policy].getName()} creation
224                         status
225                     </simple>
226                 </setProperty>
227                 <setProperty propertyName="logComponent">
228                     <simple>POLICY</simple>
229                 </setProperty>
230                 <to uri="direct:dump-loop-log-http-response"/>
231             </doFinally>
232         </doTry>
233     </route>
234
235     <route id="delete-policy">
236         <from uri="direct:delete-policy"/>
237         <doTry>
238             <log loggingLevel="INFO"
239                  message="Deleting Policy: ${exchangeProperty[policy].getName()}"/>
240             <to
241                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Policy')"/>
242             <setBody>
243                 <constant>null</constant>
244             </setBody>
245             <setHeader headerName="CamelHttpMethod">
246                 <constant>DELETE</constant>
247             </setHeader>
248             <setHeader headerName="X-ONAP-RequestID">
249                 <simple>${exchangeProperty[X-ONAP-RequestID]}
250                 </simple>
251             </setHeader>
252             <setHeader headerName="X-ONAP-InvocationID">
253                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
254                 </simple>
255             </setHeader>
256             <setHeader headerName="X-ONAP-PartnerName">
257                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
258                 </simple>
259             </setHeader>
260             <choice>
261                 <when>
262                     <simple>${exchangeProperty[policy].isLegacy()} == true</simple>
263                     <setProperty propertyName="policyVersion">
264                         <simple>1</simple>
265                     </setProperty>
266                 </when>
267                 <otherwise>
268                     <setProperty propertyName="policyVersion">
269                         <simple>1.0.0</simple>
270                     </setProperty>
271                 </otherwise>
272             </choice>
273             <log loggingLevel="INFO"
274                  message="Endpoint to delete policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies/${exchangeProperty[policy].getName()}/versions/${exchangeProperty[policyVersion]}"></log>
275             <toD
276                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies/${exchangeProperty[policy].getName()}/versions/${exchangeProperty[policyVersion]}?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
277
278             <doFinally>
279                 <to uri="direct:reset-raise-http-exception-flag"/>
280                 <to
281                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
282                 <setProperty propertyName="logMessage">
283                     <simple>${exchangeProperty[policy].getName()} removal
284                         status
285                     </simple>
286                 </setProperty>
287                 <setProperty propertyName="logComponent">
288                     <simple>POLICY</simple>
289                 </setProperty>
290                 <to uri="direct:dump-loop-log-http-response"/>
291             </doFinally>
292         </doTry>
293     </route>
294     <route id="create-guard-policy">
295         <from uri="direct:create-guard-policy"/>
296         <doTry>
297             <log loggingLevel="INFO"
298                  message="Creating Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
299             <to
300                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Guard Policy')"/>
301             <setBody>
302                 <simple>${exchangeProperty[guardPolicy].getValue()}
303                 </simple>
304             </setBody>
305             <setHeader headerName="CamelHttpMethod">
306                 <constant>POST</constant>
307             </setHeader>
308             <setHeader headerName="Content-Type">
309                 <constant>application/json</constant>
310             </setHeader>
311             <setHeader headerName="X-ONAP-RequestID">
312                 <simple>${exchangeProperty[X-ONAP-RequestID]}
313                 </simple>
314             </setHeader>
315             <setHeader headerName="X-ONAP-InvocationID">
316                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
317                 </simple>
318             </setHeader>
319             <setHeader headerName="X-ONAP-PartnerName">
320                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
321                 </simple>
322             </setHeader>
323             <log loggingLevel="INFO"
324                  message="Endpoint to create guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies"></log>
325             <toD
326                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
327             <doFinally>
328                 <to uri="direct:reset-raise-http-exception-flag"/>
329                 <to
330                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
331                 <setProperty propertyName="logMessage">
332                     <simple>${exchangeProperty[guardPolicy].getKey()} creation status
333                     </simple>
334                 </setProperty>
335                 <setProperty propertyName="logComponent">
336                     <simple>POLICY</simple>
337                 </setProperty>
338                 <to uri="direct:dump-loop-log-http-response"/>
339             </doFinally>
340         </doTry>
341     </route>
342
343     <route id="delete-guard-policy">
344         <from uri="direct:delete-guard-policy"/>
345         <doTry>
346             <log loggingLevel="INFO"
347                  message="Deleting Guard Policy: ${exchangeProperty[guardPolicy].getKey()}"/>
348             <to
349                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Guard Policy')"/>
350             <setBody>
351                 <constant>null</constant>
352             </setBody>
353             <setHeader headerName="CamelHttpMethod">
354                 <constant>DELETE</constant>
355             </setHeader>
356             <setHeader headerName="X-ONAP-RequestID">
357                 <simple>${exchangeProperty[X-ONAP-RequestID]}
358                 </simple>
359             </setHeader>
360             <setHeader headerName="X-ONAP-InvocationID">
361                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
362                 </simple>
363             </setHeader>
364             <setHeader headerName="X-ONAP-PartnerName">
365                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
366                 </simple>
367             </setHeader>
368             <log loggingLevel="INFO"
369                  message="Endpoint to delete guard policy: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1"></log>
370             <toD
371                     uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${exchangeProperty[guardPolicy].getKey()}/versions/1?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
372
373             <doFinally>
374                 <to uri="direct:reset-raise-http-exception-flag"/>
375                 <to
376                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
377                 <setProperty propertyName="logMessage">
378                     <simple>${exchangeProperty[guardPolicy].getKey()} removal status
379                     </simple>
380                 </setProperty>
381                 <setProperty propertyName="logComponent">
382                     <simple>POLICY</simple>
383                 </setProperty>
384                 <to uri="direct:dump-loop-log-http-response"/>
385             </doFinally>
386         </doTry>
387     </route>
388
389     <route id="add-all-to-active-pdp-group">
390         <from uri="direct:add-all-to-active-pdp-group"/>
391         <doTry>
392             <log loggingLevel="INFO"
393                  message="Adding loop policies to PDP Group: ${exchangeProperty[loopObject].getName()}"/>
394             <to
395                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')"/>
396             <setBody>
397                 <simple>
398                     ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"POST")}
399                 </simple>
400             </setBody>
401             <setHeader headerName="CamelHttpMethod">
402                 <constant>POST</constant>
403             </setHeader>
404             <setHeader headerName="Content-Type">
405                 <constant>application/json</constant>
406             </setHeader>
407             <setHeader headerName="X-ONAP-RequestID">
408                 <simple>${exchangeProperty[X-ONAP-RequestID]}
409                 </simple>
410             </setHeader>
411             <setHeader headerName="X-ONAP-InvocationID">
412                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
413                 </simple>
414             </setHeader>
415             <setHeader headerName="X-ONAP-PartnerName">
416                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
417                 </simple>
418             </setHeader>
419             <log loggingLevel="INFO"
420                  message="Endpoint to add policies to PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
421             <toD
422                     uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch?bridgeEndpoint=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;useSystemProperties=true&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
423
424             <doFinally>
425                 <to uri="direct:reset-raise-http-exception-flag"/>
426                 <to
427                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
428                 <setProperty propertyName="logMessage">
429                     <simple>PDP Group push ALL status</simple>
430                 </setProperty>
431                 <setProperty propertyName="logComponent">
432                     <simple>POLICY</simple>
433                 </setProperty>
434                 <to uri="direct:dump-loop-log-http-response"/>
435             </doFinally>
436         </doTry>
437     </route>
438
439     <route id="remove-all-policy-from-active-pdp-group">
440         <from uri="direct:remove-all-policy-from-active-pdp-group"/>
441         <doTry>
442             <log loggingLevel="INFO"
443                  message="Removing loop policies from PDP Group: ${exchangeProperty[loopObject].getName()}"/>
444             <to
445                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Remove policies from PDP group')"/>
446             <setBody>
447                 <simple>
448                     ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"DELETE")}
449                 </simple>
450             </setBody>
451             <setHeader headerName="CamelHttpMethod">
452                 <constant>POST</constant>
453             </setHeader>
454             <setHeader headerName="Content-Type">
455                 <constant>application/json</constant>
456             </setHeader>
457             <setHeader headerName="X-ONAP-RequestID">
458                 <simple>${exchangeProperty[X-ONAP-RequestID]}
459                 </simple>
460             </setHeader>
461             <setHeader headerName="X-ONAP-InvocationID">
462                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
463                 </simple>
464             </setHeader>
465             <setHeader headerName="X-ONAP-PartnerName">
466                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
467                 </simple>
468             </setHeader>
469             <log loggingLevel="INFO"
470                  message="Endpoint to remove policies from PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
471             <toD
472                     uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch?bridgeEndpoint=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;useSystemProperties=true&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
473
474             <doFinally>
475                 <to uri="direct:reset-raise-http-exception-flag"/>
476                 <to
477                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
478                 <setProperty propertyName="logMessage">
479                     <simple>PDP Group remove ALL status</simple>
480                 </setProperty>
481                 <setProperty propertyName="logComponent">
482                     <simple>POLICY</simple>
483                 </setProperty>
484                 <to uri="direct:dump-loop-log-http-response"/>
485             </doFinally>
486         </doTry>
487     </route>
488     <route id="get-all-pdp-groups">
489         <from uri="direct:get-all-pdp-groups"/>
490         <doTry>
491             <log loggingLevel="INFO"
492                  message="Getting the list of PDP Groups"/>
493             <to
494                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the PDP Group list')"/>
495             <setHeader headerName="CamelHttpMethod">
496                 <constant>GET</constant>
497             </setHeader>
498             <setHeader headerName="X-ONAP-RequestID">
499                 <simple>${exchangeProperty[X-ONAP-RequestID]}
500                 </simple>
501             </setHeader>
502             <setHeader headerName="X-ONAP-InvocationID">
503                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
504                 </simple>
505             </setHeader>
506             <setHeader headerName="X-ONAP-PartnerName">
507                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
508                 </simple>
509             </setHeader>
510             <log loggingLevel="INFO"
511                  message="Endpoint to get policy model: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps"></log>
512             <toD
513                     uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps?bridgeEndpoint=true&amp;useSystemProperties=true&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authMethod=Basic&amp;authUsername={{clamp.config.policy.api.userName}}&amp;authPassword={{clamp.config.policy.api.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
514             <convertBodyTo type="java.lang.String"/>
515             <doFinally>
516                 <to uri="direct:reset-raise-http-exception-flag"/>
517                 <to
518                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
519             </doFinally>
520         </doTry>
521     </route>
522     <route id="remove-one-policy-from-active-pdp-group">
523         <from uri="direct:remove-one-policy-from-active-pdp-group"/>
524         <doTry>
525             <log loggingLevel="INFO"
526                  message="Removing policy from active PDP group for loop: ${exchangeProperty[loopObject].getName()}"/>
527             <to
528                     uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing one policy PDP group')"/>
529             <setBody>
530                 <constant>null</constant>
531             </setBody>
532             <setHeader headerName="CamelHttpMethod">
533                 <constant>DELETE</constant>
534             </setHeader>
535             <setHeader headerName="X-ONAP-RequestID">
536                 <simple>${exchangeProperty[X-ONAP-RequestID]}
537                 </simple>
538             </setHeader>
539             <setHeader headerName="X-ONAP-InvocationID">
540                 <simple>${exchangeProperty[X-ONAP-InvocationID]}
541                 </simple>
542             </setHeader>
543             <setHeader headerName="X-ONAP-PartnerName">
544                 <simple>${exchangeProperty[X-ONAP-PartnerName]}
545                 </simple>
546             </setHeader>
547             <log loggingLevel="INFO"
548                  message="Endpoint to delete policy from PDP Group: {{clamp.config.policy.pap.url}}/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0"></log>
549             <toD
550                     uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0?bridgeEndpoint=true&amp;useSystemProperties=true&amp;mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&amp;authUsername={{clamp.config.policy.pap.userName}}&amp;authPassword={{clamp.config.policy.pap.password}}&amp;connectionTimeToLive=5000&amp;httpClient.connectTimeout=10000&amp;httpClient.socketTimeout=20000&amp;authenticationPreemptive=true&amp;connectionClose=true"/>
551             <setProperty propertyName="logMessage">
552                 <simple>${exchangeProperty[policyName]} PDP Group removal status
553                 </simple>
554             </setProperty>
555             <setProperty propertyName="logComponent">
556                 <simple>POLICY</simple>
557             </setProperty>
558             <to uri="direct:dump-loop-log-http-response"/>
559             <doCatch>
560                 <exception>java.lang.Exception</exception>
561                 <handled>
562                     <constant>false</constant>
563                 </handled>
564                 <setProperty propertyName="logMessage">
565                     <simple>PDP Group removal, Error reported: ${exception}</simple>
566                 </setProperty>
567                 <setProperty propertyName="logComponent">
568                     <simple>POLICY</simple>
569                 </setProperty>
570                 <to uri="direct:dump-loop-log-http-response"/>
571             </doCatch>
572             <doFinally>
573                 <to uri="direct:reset-raise-http-exception-flag"/>
574                 <to
575                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
576             </doFinally>
577         </doTry>
578     </route>
579 </routes>