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>
7 <to uri="direct:get-policy"/>
9 <simple>${header.CamelHttpResponseCode} != 200</simple>
10 <setProperty propertyName="policyFound">
11 <simple resultType="java.lang.Boolean">false</simple>
13 <log loggingLevel="WARN"
14 message="At least one policy has not been found on policy engine: ${exchangeProperty[policyName]}"/>
16 <setProperty propertyName="raiseHttpExceptionFlag">
17 <simple resultType="java.lang.Boolean">false</simple>
19 <to uri="direct:get-deployment-policy"/>
21 <simple>${header.CamelHttpResponseCode} != 200</simple>
22 <setProperty propertyName="policyDeployed">
23 <simple resultType="java.lang.Boolean">false</simple>
25 <log loggingLevel="WARN"
26 message="At least one policy has not been deployed on policy engine: ${exchangeProperty[policyName]}"/>
28 <setProperty propertyName="newPolicyState">
29 <simple>${exchangeProperty[policyComponent].computeState(*)}</simple>
33 <route id="get-policy">
34 <from uri="direct:get-policy"/>
36 <log loggingLevel="INFO"
37 message="Getting Policy: ${exchangeProperty[policyName]}"/>
39 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Get Policy')"/>
40 <setHeader headerName="CamelHttpMethod">
41 <constant>GET</constant>
43 <setHeader headerName="X-ONAP-RequestID">
44 <simple>${exchangeProperty[X-ONAP-RequestID]}
47 <setHeader headerName="X-ONAP-InvocationID">
48 <simple>${exchangeProperty[X-ONAP-InvocationID]}
51 <setHeader headerName="X-ONAP-PartnerName">
52 <simple>${exchangeProperty[X-ONAP-PartnerName]}
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>
58 uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyType]}/versions/${exchangeProperty[policyTypeVersion]}/policies/${exchangeProperty[policyName]}/versions/${exchangeProperty[policyVersion]}?bridgeEndpoint=true&useSystemProperties=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authMethod=Basic&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
60 <exception>java.lang.Exception</exception>
62 <constant>true</constant>
65 <log loggingLevel="ERROR"
66 message="GET policy request FAILED for loop: ${header.loopName}, ${exception.stacktrace}" />
68 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('GET policy request failed, Error reported: ${exception.message}','ERROR',${exchangeProperty[loopObject]})" />
71 <to uri="direct:reset-raise-http-exception-flag"/>
73 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
74 <setProperty propertyName="logMessage">
75 <simple>${exchangeProperty[policyName]} GET
79 <setProperty propertyName="logComponent">
80 <simple>POLICY</simple>
82 <to uri="direct:dump-loop-log-http-response"/>
87 <route id="get-deployment-policy">
88 <from uri="direct:get-deployment-policy"/>
90 <log loggingLevel="INFO"
91 message="Getting the policy deployment in PDP: ${exchangeProperty[policyName]}"/>
93 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy deployment in PDP')"/>
94 <setHeader headerName="CamelHttpMethod">
95 <constant>GET</constant>
97 <setHeader headerName="X-ONAP-RequestID">
98 <simple>${exchangeProperty[X-ONAP-RequestID]}
101 <setHeader headerName="X-ONAP-InvocationID">
102 <simple>${exchangeProperty[X-ONAP-InvocationID]}
105 <setHeader headerName="X-ONAP-PartnerName">
106 <simple>${exchangeProperty[X-ONAP-PartnerName]}
109 <log loggingLevel="INFO"
110 message="Endpoint to get policy deployment status: {{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0"></log>
112 uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/policies/deployed/${exchangeProperty[policyName]}/1.0.0?bridgeEndpoint=true&useSystemProperties=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authMethod=Basic&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
114 <exception>java.lang.Exception</exception>
116 <constant>true</constant>
119 <log loggingLevel="ERROR"
120 message="GET policy request FAILED for loop: ${header.loopName}, ${exception.stacktrace}" />
122 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('GET policy request failed, Error reported: ${exception.message}','ERROR',${exchangeProperty[loopObject]})" />
125 <to uri="direct:reset-raise-http-exception-flag"/>
127 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
128 <setProperty propertyName="logMessage">
129 <simple>${exchangeProperty[policyName]} GET Policy deployment
133 <setProperty propertyName="logComponent">
134 <simple>POLICY</simple>
136 <to uri="direct:dump-loop-log-http-response"/>
140 <route id="get-all-policy-models">
141 <from uri="direct:get-all-policy-models"/>
143 <log loggingLevel="INFO" message="Getting all the policy models"/>
145 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting all the policy models')"/>
146 <setHeader headerName="CamelHttpMethod">
147 <constant>GET</constant>
149 <setHeader headerName="X-ONAP-RequestID">
150 <simple>${exchangeProperty[X-ONAP-RequestID]}
153 <setHeader headerName="X-ONAP-InvocationID">
154 <simple>${exchangeProperty[X-ONAP-InvocationID]}
157 <setHeader headerName="X-ONAP-PartnerName">
158 <simple>${exchangeProperty[X-ONAP-PartnerName]}
161 <log loggingLevel="INFO"
162 message="Endpoint to get all policy models: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes"></log>
164 uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes?bridgeEndpoint=true&useSystemProperties=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authMethod=Basic&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
165 <convertBodyTo type="java.lang.String"/>
167 <to uri="direct:reset-raise-http-exception-flag"/>
169 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
173 <route id="get-policy-model">
174 <from uri="direct:get-policy-model"/>
176 <log loggingLevel="INFO"
177 message="Getting the policy model: ${exchangeProperty[policyModelName]}/${exchangeProperty[policyModelVersion]}"/>
179 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the policy model')"/>
180 <setHeader headerName="CamelHttpMethod">
181 <constant>GET</constant>
183 <setHeader headerName="X-ONAP-RequestID">
184 <simple>${exchangeProperty[X-ONAP-RequestID]}
187 <setHeader headerName="X-ONAP-InvocationID">
188 <simple>${exchangeProperty[X-ONAP-InvocationID]}
191 <setHeader headerName="X-ONAP-PartnerName">
192 <simple>${exchangeProperty[X-ONAP-PartnerName]}
195 <log loggingLevel="INFO"
196 message="Endpoint to get policy model: {{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}"></log>
198 uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policyModelName]}/versions/${exchangeProperty[policyModelVersion]}?bridgeEndpoint=true&useSystemProperties=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authMethod=Basic&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
199 <convertBodyTo type="java.lang.String"/>
201 <to uri="direct:reset-raise-http-exception-flag"/>
203 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
207 <route id="create-policy">
208 <from uri="direct:create-policy"/>
210 <log loggingLevel="INFO"
211 message="Creating Policy: ${exchangeProperty[policy].getName()}"/>
213 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Create Policy')"/>
215 <simple>${exchangeProperty[policy].createPolicyPayload()}
218 <setHeader headerName="CamelHttpMethod">
219 <constant>POST</constant>
221 <setHeader headerName="Content-Type">
222 <constant>application/json</constant>
224 <setHeader headerName="X-ONAP-RequestID">
225 <simple>${exchangeProperty[X-ONAP-RequestID]}
228 <setHeader headerName="X-ONAP-InvocationID">
229 <simple>${exchangeProperty[X-ONAP-InvocationID]}
232 <setHeader headerName="X-ONAP-PartnerName">
233 <simple>${exchangeProperty[X-ONAP-PartnerName]}
236 <log loggingLevel="INFO"
237 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>
239 uri="{{clamp.config.policy.api.url}}/policy/api/v1/policytypes/${exchangeProperty[policy].getPolicyModel().getPolicyModelType()}/versions/${exchangeProperty[policy].getPolicyModel().getVersion()}/policies?bridgeEndpoint=true&useSystemProperties=true&mapHttpMessageHeaders=false&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
241 <to uri="direct:reset-raise-http-exception-flag"/>
243 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
244 <setProperty propertyName="logMessage">
245 <simple>${exchangeProperty[policy].getName()} creation
249 <setProperty propertyName="logComponent">
250 <simple>POLICY</simple>
252 <to uri="direct:dump-loop-log-http-response"/>
257 <route id="delete-policy">
258 <from uri="direct:delete-policy"/>
260 <log loggingLevel="INFO"
261 message="Deleting Policy: ${exchangeProperty[policy].getName()}"/>
263 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Delete Policy')"/>
265 <constant>null</constant>
267 <setHeader headerName="CamelHttpMethod">
268 <constant>DELETE</constant>
270 <setHeader headerName="X-ONAP-RequestID">
271 <simple>${exchangeProperty[X-ONAP-RequestID]}
274 <setHeader headerName="X-ONAP-InvocationID">
275 <simple>${exchangeProperty[X-ONAP-InvocationID]}
278 <setHeader headerName="X-ONAP-PartnerName">
279 <simple>${exchangeProperty[X-ONAP-PartnerName]}
282 <setProperty propertyName="policyVersion">
283 <simple>1.0.0</simple>
285 <log loggingLevel="INFO"
286 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>
288 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&useSystemProperties=true&mapHttpMessageHeaders=false&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&deleteWithBody=false&mapHttpMessageBody=false&mapHttpMessageFormUrlEncodedBody=false&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
291 <to uri="direct:reset-raise-http-exception-flag"/>
293 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
294 <setProperty propertyName="logMessage">
295 <simple>${exchangeProperty[policy].getName()} removal
299 <setProperty propertyName="logComponent">
300 <simple>POLICY</simple>
302 <to uri="direct:dump-loop-log-http-response"/>
306 <route id="add-all-to-active-pdp-group">
307 <from uri="direct:add-all-to-active-pdp-group"/>
309 <log loggingLevel="INFO"
310 message="Adding loop policies to PDP Group: ${exchangeProperty[loopObject].getName()}"/>
312 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')"/>
315 ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"POST")}
318 <setHeader headerName="CamelHttpMethod">
319 <constant>POST</constant>
321 <setHeader headerName="Content-Type">
322 <constant>application/json</constant>
324 <setHeader headerName="X-ONAP-RequestID">
325 <simple>${exchangeProperty[X-ONAP-RequestID]}
328 <setHeader headerName="X-ONAP-InvocationID">
329 <simple>${exchangeProperty[X-ONAP-InvocationID]}
332 <setHeader headerName="X-ONAP-PartnerName">
333 <simple>${exchangeProperty[X-ONAP-PartnerName]}
336 <log loggingLevel="INFO"
337 message="Endpoint to add policies to PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
339 uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch?bridgeEndpoint=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&useSystemProperties=true&authUsername={{clamp.config.policy.pap.userName}}&authPassword={{clamp.config.policy.pap.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
342 <to uri="direct:reset-raise-http-exception-flag"/>
344 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
345 <setProperty propertyName="logMessage">
346 <simple>PDP Group push ALL status</simple>
348 <setProperty propertyName="logComponent">
349 <simple>POLICY</simple>
351 <to uri="direct:dump-loop-log-http-response"/>
356 <route id="remove-all-policy-from-active-pdp-group">
357 <from uri="direct:remove-all-policy-from-active-pdp-group"/>
359 <log loggingLevel="INFO"
360 message="Removing loop policies from PDP Group: ${exchangeProperty[loopObject].getName()}"/>
362 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Remove policies from PDP group')"/>
365 ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"DELETE")}
368 <setHeader headerName="CamelHttpMethod">
369 <constant>POST</constant>
371 <setHeader headerName="Content-Type">
372 <constant>application/json</constant>
374 <setHeader headerName="X-ONAP-RequestID">
375 <simple>${exchangeProperty[X-ONAP-RequestID]}
378 <setHeader headerName="X-ONAP-InvocationID">
379 <simple>${exchangeProperty[X-ONAP-InvocationID]}
382 <setHeader headerName="X-ONAP-PartnerName">
383 <simple>${exchangeProperty[X-ONAP-PartnerName]}
386 <log loggingLevel="INFO"
387 message="Endpoint to remove policies from PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
389 uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch?bridgeEndpoint=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&useSystemProperties=true&authUsername={{clamp.config.policy.pap.userName}}&authPassword={{clamp.config.policy.pap.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
392 <to uri="direct:reset-raise-http-exception-flag"/>
394 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
395 <setProperty propertyName="logMessage">
396 <simple>PDP Group remove ALL status</simple>
398 <setProperty propertyName="logComponent">
399 <simple>POLICY</simple>
401 <to uri="direct:dump-loop-log-http-response"/>
405 <route id="get-all-pdp-groups">
406 <from uri="direct:get-all-pdp-groups"/>
408 <log loggingLevel="INFO"
409 message="Getting the list of PDP Groups"/>
411 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the PDP Group list')"/>
412 <setHeader headerName="CamelHttpMethod">
413 <constant>GET</constant>
415 <setHeader headerName="X-ONAP-RequestID">
416 <simple>${exchangeProperty[X-ONAP-RequestID]}
419 <setHeader headerName="X-ONAP-InvocationID">
420 <simple>${exchangeProperty[X-ONAP-InvocationID]}
423 <setHeader headerName="X-ONAP-PartnerName">
424 <simple>${exchangeProperty[X-ONAP-PartnerName]}
427 <log loggingLevel="INFO"
428 message="Endpoint to get policy model: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps"></log>
430 uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps?bridgeEndpoint=true&useSystemProperties=true&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authMethod=Basic&authUsername={{clamp.config.policy.api.userName}}&authPassword={{clamp.config.policy.api.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
431 <convertBodyTo type="java.lang.String"/>
433 <to uri="direct:reset-raise-http-exception-flag"/>
435 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
439 <route id="remove-one-policy-from-active-pdp-group">
440 <from uri="direct:remove-one-policy-from-active-pdp-group"/>
442 <log loggingLevel="INFO"
443 message="Removing policy from active PDP group for loop: ${exchangeProperty[loopObject].getName()}"/>
445 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing one policy PDP group')"/>
447 <constant>null</constant>
449 <setHeader headerName="CamelHttpMethod">
450 <constant>DELETE</constant>
452 <setHeader headerName="X-ONAP-RequestID">
453 <simple>${exchangeProperty[X-ONAP-RequestID]}
456 <setHeader headerName="X-ONAP-InvocationID">
457 <simple>${exchangeProperty[X-ONAP-InvocationID]}
460 <setHeader headerName="X-ONAP-PartnerName">
461 <simple>${exchangeProperty[X-ONAP-PartnerName]}
464 <log loggingLevel="INFO"
465 message="Endpoint to delete policy from PDP Group: {{clamp.config.policy.pap.url}}/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0"></log>
467 uri="{{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0?bridgeEndpoint=true&useSystemProperties=true&mapHttpMessageHeaders=false&throwExceptionOnFailure=${exchangeProperty[raiseHttpExceptionFlag]}&authUsername={{clamp.config.policy.pap.userName}}&authPassword={{clamp.config.policy.pap.password}}&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
468 <setProperty propertyName="logMessage">
469 <simple>${exchangeProperty[policyName]} PDP Group removal status
472 <setProperty propertyName="logComponent">
473 <simple>POLICY</simple>
475 <to uri="direct:dump-loop-log-http-response"/>
477 <exception>java.lang.Exception</exception>
479 <constant>false</constant>
481 <setProperty propertyName="logMessage">
482 <simple>PDP Group removal, Error reported: ${exception}</simple>
484 <setProperty propertyName="logComponent">
485 <simple>POLICY</simple>
487 <to uri="direct:dump-loop-log-http-response"/>
490 <to uri="direct:reset-raise-http-exception-flag"/>
492 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>