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}}&connectionTimeToLive=5000&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}}&connectionTimeToLive=5000&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}}&connectionTimeToLive=5000&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}}&connectionTimeToLive=5000&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}}&connectionTimeToLive=5000&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]}
284 <simple>${exchangeProperty[policy].isLegacy()} == true</simple>
285 <setProperty propertyName="policyVersion">
290 <setProperty propertyName="policyVersion">
291 <simple>1.0.0</simple>
295 <log loggingLevel="INFO"
296 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>
298 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}}&connectionTimeToLive=5000&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
301 <to uri="direct:reset-raise-http-exception-flag"/>
303 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
304 <setProperty propertyName="logMessage">
305 <simple>${exchangeProperty[policy].getName()} removal
309 <setProperty propertyName="logComponent">
310 <simple>POLICY</simple>
312 <to uri="direct:dump-loop-log-http-response"/>
316 <route id="add-all-to-active-pdp-group">
317 <from uri="direct:add-all-to-active-pdp-group"/>
319 <log loggingLevel="INFO"
320 message="Adding loop policies to PDP Group: ${exchangeProperty[loopObject].getName()}"/>
322 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Add policies to PDP group')"/>
325 ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"POST")}
328 <setHeader headerName="CamelHttpMethod">
329 <constant>POST</constant>
331 <setHeader headerName="Content-Type">
332 <constant>application/json</constant>
334 <setHeader headerName="X-ONAP-RequestID">
335 <simple>${exchangeProperty[X-ONAP-RequestID]}
338 <setHeader headerName="X-ONAP-InvocationID">
339 <simple>${exchangeProperty[X-ONAP-InvocationID]}
342 <setHeader headerName="X-ONAP-PartnerName">
343 <simple>${exchangeProperty[X-ONAP-PartnerName]}
346 <log loggingLevel="INFO"
347 message="Endpoint to add policies to PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
349 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}}&connectionTimeToLive=5000&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
352 <to uri="direct:reset-raise-http-exception-flag"/>
354 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
355 <setProperty propertyName="logMessage">
356 <simple>PDP Group push ALL status</simple>
358 <setProperty propertyName="logComponent">
359 <simple>POLICY</simple>
361 <to uri="direct:dump-loop-log-http-response"/>
366 <route id="remove-all-policy-from-active-pdp-group">
367 <from uri="direct:remove-all-policy-from-active-pdp-group"/>
369 <log loggingLevel="INFO"
370 message="Removing loop policies from PDP Group: ${exchangeProperty[loopObject].getName()}"/>
372 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Remove policies from PDP group')"/>
375 ${exchangeProperty[loopObject].getComponent("POLICY").createPoliciesPayloadPdpGroup(exchangeProperty[loopObject],"DELETE")}
378 <setHeader headerName="CamelHttpMethod">
379 <constant>POST</constant>
381 <setHeader headerName="Content-Type">
382 <constant>application/json</constant>
384 <setHeader headerName="X-ONAP-RequestID">
385 <simple>${exchangeProperty[X-ONAP-RequestID]}
388 <setHeader headerName="X-ONAP-InvocationID">
389 <simple>${exchangeProperty[X-ONAP-InvocationID]}
392 <setHeader headerName="X-ONAP-PartnerName">
393 <simple>${exchangeProperty[X-ONAP-PartnerName]}
396 <log loggingLevel="INFO"
397 message="Endpoint to remove policies from PDP Group: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps/deployments/batch"></log>
399 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}}&connectionTimeToLive=5000&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
402 <to uri="direct:reset-raise-http-exception-flag"/>
404 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
405 <setProperty propertyName="logMessage">
406 <simple>PDP Group remove ALL status</simple>
408 <setProperty propertyName="logComponent">
409 <simple>POLICY</simple>
411 <to uri="direct:dump-loop-log-http-response"/>
415 <route id="get-all-pdp-groups">
416 <from uri="direct:get-all-pdp-groups"/>
418 <log loggingLevel="INFO"
419 message="Getting the list of PDP Groups"/>
421 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Getting the PDP Group list')"/>
422 <setHeader headerName="CamelHttpMethod">
423 <constant>GET</constant>
425 <setHeader headerName="X-ONAP-RequestID">
426 <simple>${exchangeProperty[X-ONAP-RequestID]}
429 <setHeader headerName="X-ONAP-InvocationID">
430 <simple>${exchangeProperty[X-ONAP-InvocationID]}
433 <setHeader headerName="X-ONAP-PartnerName">
434 <simple>${exchangeProperty[X-ONAP-PartnerName]}
437 <log loggingLevel="INFO"
438 message="Endpoint to get policy model: {{clamp.config.policy.pap.url}}/policy/pap/v1/pdps"></log>
440 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}}&connectionTimeToLive=5000&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
441 <convertBodyTo type="java.lang.String"/>
443 <to uri="direct:reset-raise-http-exception-flag"/>
445 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>
449 <route id="remove-one-policy-from-active-pdp-group">
450 <from uri="direct:remove-one-policy-from-active-pdp-group"/>
452 <log loggingLevel="INFO"
453 message="Removing policy from active PDP group for loop: ${exchangeProperty[loopObject].getName()}"/>
455 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeLog('Policy', 'Removing one policy PDP group')"/>
457 <constant>null</constant>
459 <setHeader headerName="CamelHttpMethod">
460 <constant>DELETE</constant>
462 <setHeader headerName="X-ONAP-RequestID">
463 <simple>${exchangeProperty[X-ONAP-RequestID]}
466 <setHeader headerName="X-ONAP-InvocationID">
467 <simple>${exchangeProperty[X-ONAP-InvocationID]}
470 <setHeader headerName="X-ONAP-PartnerName">
471 <simple>${exchangeProperty[X-ONAP-PartnerName]}
474 <log loggingLevel="INFO"
475 message="Endpoint to delete policy from PDP Group: {{clamp.config.policy.pap.url}}/pdps/policies/${exchangeProperty[policyName]}/versions/1.0.0"></log>
477 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}}&connectionTimeToLive=5000&httpClient.connectTimeout=10000&httpClient.socketTimeout=20000&authenticationPreemptive=true&connectionClose=true"/>
478 <setProperty propertyName="logMessage">
479 <simple>${exchangeProperty[policyName]} PDP Group removal status
482 <setProperty propertyName="logComponent">
483 <simple>POLICY</simple>
485 <to uri="direct:dump-loop-log-http-response"/>
487 <exception>java.lang.Exception</exception>
489 <constant>false</constant>
491 <setProperty propertyName="logMessage">
492 <simple>PDP Group removal, Error reported: ${exception}</simple>
494 <setProperty propertyName="logComponent">
495 <simple>POLICY</simple>
497 <to uri="direct:dump-loop-log-http-response"/>
500 <to uri="direct:reset-raise-http-exception-flag"/>
502 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=invokeReturnLog()"/>