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