Fix logging issues
[clamp.git] / src / main / resources / clds / camel / routes / flexible-flow.xml
1 <routes xmlns="http://camel.apache.org/schema/spring">
2         <route id="submit">
3                 <from uri="direct:processSubmit" />
4                 <choice>
5                         <when>
6                                 <simple> ${exchangeProperty.actionCd} == 'SUBMIT' ||
7                                         ${exchangeProperty.actionCd} == 'RESUBMIT'
8                                 </simple>
9                                 <to
10                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'INITIATED')" />
11                                 <to uri="bean:org.onap.clamp.clds.client.TcaPolicyDelegate" />
12                                 <to uri="bean:org.onap.clamp.clds.client.HolmesPolicyDelegate" />
13                                 <delay>
14                                         <constant>30000</constant>
15                                 </delay>
16                                 <to
17                                         uri="bean:org.onap.clamp.clds.client.OperationalPolicyDelegate" />
18                                 <to uri="bean:org.onap.clamp.clds.client.GuardPolicyDelegate" />
19                                 <to
20                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'COMPLETED')" />
21                         </when>
22                         <when>
23                                 <simple> ${exchangeProperty.actionCd} == 'DELETE'</simple>
24                                 <to
25                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'INITIATED')" />
26                                 <to uri="bean:org.onap.clamp.clds.client.TcaPolicyDeleteDelegate" />
27                                 <to
28                                         uri="bean:org.onap.clamp.clds.client.HolmesPolicyDeleteDelegate" />
29                                 <delay>
30                                         <constant>30000</constant>
31                                 </delay>
32                                 <to
33                                         uri="bean:org.onap.clamp.clds.client.OperationalPolicyDeleteDelegate" />
34                                 <to
35                                         uri="bean:org.onap.clamp.clds.client.GuardPolicyDeleteDelegate" />
36                                 <to uri="bean:org.onap.clamp.clds.client.ModelDeleteDelegate" />
37                                 <to
38                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'COMPLETED')" />
39                         </when>
40                         <when>
41                                 <simple> ${exchangeProperty.actionCd} == 'UPDATE'</simple>
42                                 <to
43                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'INITIATED')" />
44                                 <to uri="bean:org.onap.clamp.clds.client.TcaPolicyDelegate" />
45                                 <to uri="bean:org.onap.clamp.clds.client.HolmesPolicyDelegate" />
46                                 <delay>
47                                         <constant>30000</constant>
48                                 </delay>
49                                 <to
50                                         uri="bean:org.onap.clamp.clds.client.OperationalPolicyDelegate" />
51                                 <to uri="bean:org.onap.clamp.clds.client.GuardPolicyDelegate" />
52                                 <to
53                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'COMPLETED')" />
54                         </when>
55                         <when>
56                                 <simple> ${exchangeProperty.actionCd} == 'STOP'</simple>
57                                 <to
58                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'INITIATED')" />
59                                 <to
60                                         uri="bean:org.onap.clamp.clds.client.OperationalPolicyDeleteDelegate" />
61                                 <to
62                                         uri="bean:org.onap.clamp.clds.client.GuardPolicyDeleteDelegate" />
63                                 <to
64                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'COMPLETED')" />
65                         </when>
66                         <when>
67                                 <simple> ${exchangeProperty.actionCd} == 'RESTART'</simple>
68                                 <to
69                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'INITIATED')" />
70                                 <to uri="bean:org.onap.clamp.clds.client.GuardPolicyDelegate" />
71                                 <to
72                                         uri="bean:org.onap.clamp.clds.client.OperationalPolicyDelegate" />
73                                 <to
74                                         uri="bean:org.onap.clamp.clds.client.CldsEventDelegate?method=addEvent(*,'COMPLETED')" />
75                         </when>
76                 </choice>
77         </route>
78
79         <route id="load-loop">
80                 <from uri="direct:load-loop" />
81                 <setBody>
82                         <simple>${header.loopName}</simple>
83                 </setBody>
84                 <setHeader headerName="LoopObject">
85                         <method
86                                 ref="org.onap.clamp.loop.LoopService"
87                                 method="getLoop" />
88                 </setHeader>
89
90                 <when>
91                         <simple>${header.LoopObject} == null</simple>
92                         <setHeader headerName="CamelHttpResponseCode">
93                                 <constant>404</constant>
94                         </setHeader>
95                         <log
96                                 loggingLevel="WARNING"
97                                 message="Loop not found in database: ${body}" />
98                         <stop />
99                 </when>
100         </route>
101         <route id="create-micro-service-policy">
102                 <from uri="direct:create-micro-service-policy" />
103                 
104                 <log
105                         loggingLevel="INFO"
106                         message="Creating Micro Service Policy: ${header.microServicePolicy.getName()}" />
107                 <to
108                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Micro Service Policy')" />
109                 <setBody>
110                         <simple>${header.microServicePolicy.createPolicyPayload()}
111                         </simple>
112                 </setBody>
113                 <setHeader headerName="CamelHttpMethod">
114                         <constant>POST</constant>
115                 </setHeader>
116                 <setHeader headerName="Content-Type">
117                         <constant>application/json</constant>
118                 </setHeader>
119                 <setHeader headerName="CamelHttpUri">
120                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/${header.microServicePolicy.getModelType()}/versions/1.0.0/policies
121                         </simple>
122                 </setHeader>
123                 <setHeader headerName="X-ONAP-RequestID">
124                         <simple>${header.X-ONAP-REAUESTID}
125                         </simple>
126                 </setHeader>
127                 <setHeader headerName="X-ONAP-InvocationID">
128                         <simple>${header.X-ONAP-InvocationID}
129                         </simple>
130                 </setHeader>
131                 <setHeader headerName="X-ONAP-PartnerName">
132                         <simple>${header.X-ONAP-PartnerName}
133                         </simple>
134                 </setHeader>
135                 <log
136                         loggingLevel="INFO"
137                         message="Endpoint to create microservice policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
138                 <toD
139                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
140                 <to
141                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('MicroService policy created successfully','INFO',${header.LoopObject})" />
142                 <to uri="direct:reset-raise-http-exception-flag" />
143         <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
144         </route>
145         <route id="delete-micro-service-policy">
146                 <from uri="direct:delete-micro-service-policy" />
147                 
148                 <log
149                         loggingLevel="INFO"
150                         message="Deleting Micro Service Policy: ${header.microServicePolicy.getName()}" />
151                 <to
152                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Micro Service Policy')" />
153                 <setBody>
154                         <constant>null</constant>
155                 </setBody>
156                 <setHeader headerName="CamelHttpMethod">
157                         <constant>DELETE</constant>
158                 </setHeader>
159                 <setHeader headerName="CamelHttpUri">
160                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/${header.microServicePolicy.getModelType()}/versions/1.0.0/policies/${header.microServicePolicy.getName()}
161                         </simple>
162                 </setHeader>
163                 <setHeader headerName="X-ONAP-RequestID">
164                         <simple>${header.X-ONAP-REAUESTID}
165                         </simple>
166                 </setHeader>
167                 <setHeader headerName="X-ONAP-InvocationID">
168                         <simple>${header.X-ONAP-InvocationID}
169                         </simple>
170                 </setHeader>
171                 <setHeader headerName="X-ONAP-PartnerName">
172                         <simple>${header.X-ONAP-PartnerName}
173                         </simple>
174                 </setHeader>
175                 <log
176                         loggingLevel="INFO"
177                         message="Endpoint to delete microservice policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
178                 <toD
179                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
180                 <to
181                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('MicroService policy deleted successfully','INFO',${header.LoopObject})" />
182                 <to uri="direct:reset-raise-http-exception-flag" />
183                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
184         </route>
185
186         <route id="create-operational-policy">
187                 <from uri="direct:create-operational-policy" />
188                 
189                 <log
190                         loggingLevel="INFO"
191                         message="Creating Operational Policy: ${header.operationalPolicy.getName()}" />
192                 <to
193                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Operational Policy')" />
194                 <setBody>
195                         <simple>${header.operationalPolicy.createPolicyPayload()}
196                         </simple>
197                 </setBody>
198                 <setHeader headerName="CamelHttpMethod">
199                         <constant>POST</constant>
200                 </setHeader>
201                 <setHeader headerName="Content-Type">
202                         <constant>application/yaml; legacy-version</constant>
203                 </setHeader>
204                 <setHeader headerName="CamelHttpUri">
205                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/onap.policies.controloop.operational/versions/1.0.0/policies
206                         </simple>
207                 </setHeader>
208                 <setHeader headerName="X-ONAP-RequestID">
209                         <simple>${header.X-ONAP-REAUESTID}
210                         </simple>
211                 </setHeader>
212                 <setHeader headerName="X-ONAP-InvocationID">
213                         <simple>${header.X-ONAP-InvocationID}
214                         </simple>
215                 </setHeader>
216                 <setHeader headerName="X-ONAP-PartnerName">
217                         <simple>${header.X-ONAP-PartnerName}
218                         </simple>
219                 </setHeader>
220                 <log
221                         loggingLevel="INFO"
222                         message="Endpoint to create operational policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
223                 <toD
224                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
225                 <to
226                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Operational policy created successfully','INFO',${header.LoopObject})" />
227                 <to uri="direct:reset-raise-http-exception-flag" />
228                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
229         </route>
230         <route id="delete-operational-policy">
231                 <from uri="direct:delete-operational-policy" />
232                 
233                 <log
234                         loggingLevel="INFO"
235                         message="Deleting Operational Policy: ${header.operationalPolicy.getName()}" />
236                 <to
237                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Operational Policy')" />
238                 <setBody>
239                         <constant>null</constant>
240                 </setBody>
241                 <setHeader headerName="CamelHttpMethod">
242                         <constant>DELETE</constant>
243                 </setHeader>
244                 <setHeader headerName="CamelHttpUri">
245                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/onap.policies.controloop.operational/versions/1.0.0/policies/${header.operationalPolicy.getName()}
246                         </simple>
247                 </setHeader>
248                 <setHeader headerName="X-ONAP-RequestID">
249                         <simple>${header.X-ONAP-REAUESTID}
250                         </simple>
251                 </setHeader>
252                 <setHeader headerName="X-ONAP-InvocationID">
253                         <simple>${header.X-ONAP-InvocationID}
254                         </simple>
255                 </setHeader>
256                 <setHeader headerName="X-ONAP-PartnerName">
257                         <simple>${header.X-ONAP-PartnerName}
258                         </simple>
259                 </setHeader>
260                 <log
261                         loggingLevel="INFO"
262                         message="Endpoint to delete operational policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
263                 <toD
264                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
265                 <to
266                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Operational policy deleted successfully','INFO',${header.LoopObject})" />
267                 <to uri="direct:reset-raise-http-exception-flag" />
268                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
269         </route>
270
271         <route id="create-guard-policy">
272                 <from uri="direct:create-guard-policy" />
273                 
274                 <log
275                         loggingLevel="INFO"
276                         message="Creating Guard Policy: ${header.guardPolicy.getKey()}" />
277                 <to
278                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Guard Policy')" />
279                 <setBody>
280                         <simple>${header.guardPolicy.getValue()}
281                         </simple>
282                 </setBody>
283                 <setHeader headerName="CamelHttpMethod">
284                         <constant>POST</constant>
285                 </setHeader>
286                 <setHeader headerName="Content-Type">
287                         <constant>application/json</constant>
288                 </setHeader>
289                 <setHeader headerName="CamelHttpUri">
290                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/onap.policies.controlloop.Guard/versions/1.0.0/policies
291                         </simple>
292                 </setHeader>
293                 <setHeader headerName="X-ONAP-RequestID">
294                         <simple>${header.X-ONAP-REAUESTID}
295                         </simple>
296                 </setHeader>
297                 <setHeader headerName="X-ONAP-InvocationID">
298                         <simple>${header.X-ONAP-InvocationID}
299                         </simple>
300                 </setHeader>
301                 <setHeader headerName="X-ONAP-PartnerName">
302                         <simple>${header.X-ONAP-PartnerName}
303                         </simple>
304                 </setHeader>
305                 <log
306                         loggingLevel="INFO"
307                         message="Endpoint to create guard policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
308                 <toD
309                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
310                 <to
311                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Guard policy created successfully','INFO',${header.LoopObject})" />
312                 <to uri="direct:reset-raise-http-exception-flag" />
313                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
314         </route>
315         <route id="delete-guard-policy">
316                 <from uri="direct:delete-guard-policy" />
317                 
318                 <log
319                         loggingLevel="INFO"
320                         message="Deleting Guard Policy: ${header.guardPolicy.getKey()}" />
321                 <to
322                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Guard Policy')" />
323                 <setBody>
324                         <constant>null</constant>
325                 </setBody>
326                 <setHeader headerName="CamelHttpMethod">
327                         <constant>DELETE</constant>
328                 </setHeader>
329                 <setHeader headerName="CamelHttpUri">
330                         <simple>{{clamp.config.policy.url}}/policy/api/v1/policyTypes/onap.policies.controlloop.Guard/versions/1.0.0/policies/${header.guardPolicy.getKey()}
331                         </simple>
332                 </setHeader>
333                 <setHeader headerName="X-ONAP-RequestID">
334                         <simple>${header.X-ONAP-REAUESTID}
335                         </simple>
336                 </setHeader>
337                 <setHeader headerName="X-ONAP-InvocationID">
338                         <simple>${header.X-ONAP-InvocationID}
339                         </simple>
340                 </setHeader>
341                 <setHeader headerName="X-ONAP-PartnerName">
342                         <simple>${header.X-ONAP-PartnerName}
343                         </simple>
344                 </setHeader>
345                 <log
346                         loggingLevel="INFO"
347                         message="Endpoint to delete guard policy: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
348                 <toD
349                         uri="http4://policyhost:8085?throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;deleteWithBody=false&amp;mapHttpMessageBody=false&amp;mapHttpMessageFormUrlEncodedBody=false&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
350                 <to
351                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Guard policy deleted successfully','INFO',${header.LoopObject})" />
352                 <to uri="direct:reset-raise-http-exception-flag" />
353                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
354         </route>
355         <route id="add-all-to-active-pdp-group">
356                 <from uri="direct:add-all-to-active-pdp-group" />
357                 
358                 <log
359                         loggingLevel="INFO"
360                         message="Adding loop policies to PDP Group: ${header.LoopObject.getName()}" />
361                 <to
362                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')" />
363                 <setBody>
364                         <simple>${header.LoopObject.createPoliciesPayloadPdpGroup()}
365                         </simple>
366                 </setBody>
367                 <setHeader headerName="CamelHttpMethod">
368                         <constant>POST</constant>
369                 </setHeader>
370                 <setHeader headerName="Content-Type">
371                         <constant>application/json</constant>
372                 </setHeader>
373                 <setHeader headerName="CamelHttpUri">
374                         <simple>{{clamp.config.policy.url}}/policy/pap/v1/pdps
375                         </simple>
376                 </setHeader>
377                 <setHeader headerName="X-ONAP-RequestID">
378                         <simple>${header.X-ONAP-REAUESTID}
379                         </simple>
380                 </setHeader>
381                 <setHeader headerName="X-ONAP-InvocationID">
382                         <simple>${header.X-ONAP-InvocationID}
383                         </simple>
384                 </setHeader>
385                 <setHeader headerName="X-ONAP-PartnerName">
386                         <simple>${header.X-ONAP-PartnerName}
387                         </simple>
388                 </setHeader>
389                 <log
390                         loggingLevel="INFO"
391                         message="Endpoint to add policies to PDP Group: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
392                 <toD
393                         uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
394                 <to
395                         uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Policies pushed to PDP Group successfully','INFO',${header.LoopObject})" />
396                 <to uri="direct:reset-raise-http-exception-flag" />
397                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
398         </route>
399
400         <route id="remove-all-policy-from-active-pdp-group">
401                 <from uri="direct:remove-all-policy-from-active-pdp-group" />
402                 <log
403                         loggingLevel="INFO"
404                         message="Removing policies from active PDP group for loop: ${header.LoopObject.getName()}" />
405                 <to
406                         uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing policies PDP group')" />
407                 <split>
408                         <simple>${header.LoopObject.listPolicyNamesPdpGroup()}</simple>
409                         <setHeader headerName="PolicyName">
410                                 <simple>${body}</simple>
411                         </setHeader>
412                         <setBody>
413                                 <constant>null</constant>
414                         </setBody>
415                         <setHeader headerName="CamelHttpMethod">
416                                 <constant>DELETE</constant>
417                         </setHeader>
418                         <setHeader headerName="CamelHttpUri">
419                                 <simple>{{clamp.config.policy.url}}/pdps/policies/${header.PolicyName}/versions/1.0.0
420                                 </simple>
421                         </setHeader>
422                         <setHeader headerName="X-ONAP-RequestID">
423                                 <simple>${header.X-ONAP-REAUESTID}
424                                 </simple>
425                         </setHeader>
426                         <setHeader headerName="X-ONAP-InvocationID">
427                                 <simple>${header.X-ONAP-InvocationID}
428                                 </simple>
429                         </setHeader>
430                         <setHeader headerName="X-ONAP-PartnerName">
431                                 <simple>${header.X-ONAP-PartnerName}
432                                 </simple>
433                         </setHeader>
434                         <log
435                                 loggingLevel="INFO"
436                                 message="Endpoint to delete policy from PDP Group: ${header.CamelHttpMethod} ${header.CamelHttpUri}"></log>
437                         <toD
438                                 uri="http4://policyhost:8085?mapHttpMessageHeaders=false&amp;throwExceptionOnFailure=${header.RaiseHttpExceptionFlag}&amp;httpClient.connectTimeout=10000&amp;authUsername={{clamp.config.policy.userName}}&amp;authPassword={{clamp.config.policy.password}}" />
439                         <to
440                                 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog(${header.PolicyName}' Policy removed from PDP Group successfully','INFO',${header.LoopObject})" />
441                 </split>
442                 <to uri="direct:reset-raise-http-exception-flag" />
443                 <to uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()" />
444         </route>
445         <route id="reset-raise-http-exception-flag">
446                 <from uri="direct:reset-raise-http-exception-flag" />
447                 <setHeader headerName="RaiseHttpExceptionFlag">
448                         <simple resultType="java.lang.Boolean">true</simple>
449                 </setHeader>
450         </route>
451 </routes>