1 <rests xmlns="http://camel.apache.org/schema/spring">
4 uri="/v2/loop/getAllNames"
5 outType="java.lang.String[]"
6 produces="application/json">
8 <removeHeaders pattern="*" />
11 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Get All ClosedLoop')" />
13 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','read')" />
15 uri="bean:org.onap.clamp.loop.LoopController?method=getLoopNames()" />
17 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
19 <exception>java.lang.Exception</exception>
21 <constant>false</constant>
24 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
30 uri="/v2/loop/{loopName}"
31 outType="org.onap.clamp.loop.Loop"
32 produces="application/json">
36 excludePattern="loopName" />
39 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Get Closed Loop')" />
41 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','read')" />
43 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />
45 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
47 <exception>java.lang.Exception</exception>
49 <constant>false</constant>
52 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
58 uri="/v2/loop/svgRepresentation/{loopName}"
59 outType="java.lang.String"
60 produces="application/xml">
64 excludePattern="loopName" />
67 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Get SVG Representation')" />
69 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','read')" />
71 uri="bean:org.onap.clamp.loop.LoopController?method=getSVGRepresentation(${header.loopName})" />
73 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
75 <exception>java.lang.Exception</exception>
77 <constant>false</constant>
80 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
87 uri="/v2/loop/updateGlobalProperties/{loopName}"
88 type="com.google.gson.JsonObject"
89 consumes="application/json"
90 outType="org.onap.clamp.loop.Loop"
91 produces="application/json">
95 excludePattern="loopName" />
98 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Update the global properties')" />
100 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
101 <setHeader headerName="GlobalPropertiesJson">
102 <simple>${body}</simple>
104 <to uri="direct:load-loop" />
106 uri="bean:org.onap.clamp.loop.LoopController?method=updateGlobalPropertiesJson(${header.loopName},${header.GlobalPropertiesJson})" />
108 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Global Properties UPDATED','INFO',${exchangeProperty[loopObject]})" />
110 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
112 <exception>java.lang.Exception</exception>
114 <constant>false</constant>
117 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
123 uri="/v2/loop/updateOperationalPolicies/{loopName}"
124 type="com.google.gson.JsonArray"
125 consumes="application/json"
126 outType="org.onap.clamp.loop.Loop"
127 produces="application/json">
131 excludePattern="loopName" />
134 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Update operational policies')" />
136 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
137 <setHeader headerName="OperationalPoliciesArray">
138 <simple>${body}</simple>
140 <to uri="direct:load-loop" />
142 uri="bean:org.onap.clamp.loop.LoopController?method=updateOperationalPolicies(${header.loopName},${header.OperationalPoliciesArray})" />
144 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Operational and Guard policies UPDATED','INFO',${exchangeProperty[loopObject]})" />
146 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
148 <exception>java.lang.Exception</exception>
150 <constant>false</constant>
153 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
159 uri="/v2/loop/updateMicroservicePolicy/{loopName}"
160 type="org.onap.clamp.policy.microservice.MicroServicePolicy"
161 consumes="application/json"
162 outType="org.onap.clamp.policy.microservice.MicroServicePolicy"
163 produces="application/json">
167 excludePattern="loopName" />
170 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Update Microservice policies')" />
172 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
173 <setProperty propertyName="MicroServicePolicyObject">
174 <simple>${body}</simple>
177 <to uri="direct:load-loop" />
179 uri="bean:org.onap.clamp.loop.LoopController?method=updateMicroservicePolicy(${header.loopName},${exchangeProperty[MicroServicePolicyObject]})" />
181 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Micro Service policies UPDATED','INFO',${exchangeProperty[loopObject]})" />
183 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
185 <exception>java.lang.Exception</exception>
187 <constant>false</constant>
190 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
196 uri="/v2/loop/deployLoop/{loopName}"
197 outType="org.onap.clamp.loop.Loop"
198 produces="application/json">
202 excludePattern="loopName" />
205 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Deploy the closed loop')" />
207 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
209 uri="direct:load-loop" />
211 uri="direct:get-status-from-policy" />
213 uri="direct:get-status-from-dcae" />
216 message="policy status0000: ${exchangeProperty[policyStatus]}"></log>
219 <simple> ${exchangeProperty[policyStatus]} == 'SUBMITTED' and
220 ${exchangeProperty[dcaeStatus]} == 'NOT_DEPLOYED'
223 uri="direct:deploy-closedloop" />
228 message="Closed Loop is in state ${exchangeProperty[policyStatus]}, it can only be deployed when in state SUBMIT" />
230 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Closed Loop is in state ${exchangeProperty[policyStatus]}, it can only be deployed when in state SUBMIT','ERROR',${exchangeProperty[loopObject]})" />
234 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
236 <exception>java.lang.Exception</exception>
238 <constant>false</constant>
241 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
244 message="Deploy request failed for loop: ${header.loopName}" />
246 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Deploy request failed','ERROR',${exchangeProperty[loopObject]})" />
252 uri="/v2/loop/undeployLoop/{loopName}"
253 outType="org.onap.clamp.loop.Loop"
254 produces="application/json">
258 excludePattern="loopName" />
261 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Undeploy the closed loop')" />
263 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
265 uri="direct:load-loop" />
267 uri="direct:get-status-from-dcae" />
270 <simple> ${exchangeProperty[dcaeStatus]} == 'DEPLOYED'
273 uri="direct:undeploy-closedloop" />
278 message="Closed Loop is in state ${exchangeProperty[dcaeStatus]}, it can only be undeployed when in state DEPLOYED" />
280 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Closed Loop is in state ${exchangeProperty[dcaeStatus]}, it can only be deployed when in state DEPLOYED','ERROR',${exchangeProperty[loopObject]})" />
284 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
286 <exception>java.lang.Exception</exception>
288 <constant>false</constant>
291 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
294 message="Undeploy request failed for loop: $${header.loopName}" />
296 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Undeploy request failed','ERROR',${exchangeProperty[loopObject]})" />
302 uri="/v2/loop/stop/{loopName}"
303 outType="org.onap.clamp.loop.Loop"
304 produces="application/json">
308 excludePattern="loopName" />
312 message="Receive STOP request for loop: ${header.loopName}" />
314 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Stop the closed loop')" />
316 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
317 <to uri="direct:load-loop" />
318 <to uri="direct:remove-all-policy-from-active-pdp-group" />
321 message="STOP request successfully executed for loop: ${body}" />
323 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('STOP request successfully executed','INFO',${exchangeProperty[loopObject]})" />
325 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />
327 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
329 <exception>java.lang.Exception</exception>
331 <constant>false</constant>
334 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
337 message="STOP request failed for loop: $${header.loopName}" />
339 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('STOP request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
345 uri="/v2/loop/start/{loopName}"
346 outType="org.onap.clamp.loop.Loop"
347 produces="application/json">
351 excludePattern="loopName" />
355 message="Receive START request for loop: ${header.loopName}" />
357 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Start the closed loop')" />
359 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
360 <to uri="direct:load-loop" />
363 <to uri="direct:add-all-to-active-pdp-group" />
366 message="START request successfully executed for loop: ${header.loopName}" />
368 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('START request successfully executed','INFO',${exchangeProperty[loopObject]})" />
370 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />
372 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
374 <exception>java.lang.Exception</exception>
376 <constant>false</constant>
379 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
382 message="START request failed for loop: ${header.loopName}" />
384 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('START request failed, Error reported: ${exception}','INFO',${exchangeProperty[loopObject]})" />
390 uri="/v2/loop/submit/{loopName}"
391 outType="org.onap.clamp.loop.Loop"
392 produces="application/json">
396 excludePattern="loopName" />
400 message="Receive SUBMIT request for loop: ${header.loopName}" />
402 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Submit the closed loop')" />
404 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
405 <to uri="direct:load-loop" />
407 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive SUBMIT request','INFO',${exchangeProperty[loopObject]})" />
408 <setProperty propertyName="raiseHttpExceptionFlag">
409 <simple resultType="java.lang.Boolean">false</simple>
411 <to uri="direct:remove-all-policy-from-active-pdp-group" />
414 message="Processing all MICRO-SERVICES policies defined in loop ${exchangeProperty[loopObject].getName()}" />
416 <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
418 <setProperty propertyName="microServicePolicy">
419 <simple>${body}</simple>
423 message="Processing Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
424 <setProperty propertyName="raiseHttpExceptionFlag">
425 <simple resultType="java.lang.Boolean">false</simple>
427 <to uri="direct:delete-micro-service-policy" />
428 <to uri="direct:create-micro-service-policy" />
432 message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
434 <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
436 <setProperty propertyName="operationalPolicy">
437 <simple>${body}</simple>
441 message="Processing Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
442 <setProperty propertyName="raiseHttpExceptionFlag">
443 <simple resultType="java.lang.Boolean">false</simple>
446 <to uri="direct:delete-operational-policy" />
447 <to uri="direct:create-operational-policy" />
451 message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
453 <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
455 <setProperty propertyName="guardPolicy">
456 <simple>${body}</simple>
460 message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
462 <setProperty propertyName="raiseHttpExceptionFlag">
463 <simple resultType="java.lang.Boolean">false</simple>
465 <to uri="direct:delete-guard-policy" />
466 <to uri="direct:create-guard-policy" />
470 <to uri="direct:add-all-to-active-pdp-group" />
474 message="SUBMIT request successfully executed for loop: ${header.loopName}" />
476 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('SUBMIT request successfully executed','INFO',${exchangeProperty[loopObject]})" />
478 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />
480 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
482 <exception>java.lang.Exception</exception>
484 <constant>false</constant>
487 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
490 message="SUBMIT request failed for loop: ${header.loopName}" />
492 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('SUBMIT request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
497 <put uri="/v2/loop/delete/{loopName}">
501 excludePattern="loopName" />
505 message="Receive DELETE request for loop: ${header.loopName}" />
507 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Delete the closed loop')" />
509 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
510 <to uri="direct:load-loop" />
512 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive DELETE request','INFO',${exchangeProperty[loopObject]})" />
513 <to uri="direct:remove-all-policy-from-active-pdp-group" />
515 <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
517 <setProperty propertyName="microServicePolicy">
518 <simple>${body}</simple>
522 message="Processing Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
523 <to uri="direct:delete-micro-service-policy" />
528 message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
530 <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
532 <setProperty propertyName="operationalPolicy">
533 <simple>${body}</simple>
537 message="Processing Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
538 <to uri="direct:delete-operational-policy" />
541 message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
543 <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
545 <setProperty propertyName="guardPolicy">
546 <simple>${body}</simple>
550 message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
551 <to uri="direct:delete-guard-policy" />
555 uri="bean:org.onap.clamp.loop.log.LoopService?method=deleteLoop(${header.loopName})" />
558 message="DELETE request successfully executed for loop: ${header.loopName}" />
560 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DELETE request successfully executed','INFO',${exchangeProperty[loopObject]})" />
562 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
564 <exception>java.lang.Exception</exception>
566 <constant>false</constant>
569 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
572 message="DELETE request failed for loop: ${header.loopName}" />
574 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DELETE request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
580 uri="/v2/loop/getstatus/{loopName}"
581 outType="org.onap.clamp.loop.Loop"
582 produces="application/json">
584 <removeHeaders pattern="*" excludePattern="loopName"/>
588 message="Get current status for loop: ${header.loopName}" />
590 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Get the closed loop status')" />
592 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','read')" />
593 <to uri="direct:load-loop" />
595 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive GET STATUS request','INFO',${exchangeProperty[loopObject]})" />
596 <setProperty propertyName="raiseHttpExceptionFlag">
597 <simple resultType="java.lang.Boolean">false</simple>
599 <to uri="direct:get-status-from-policy" />
600 <to uri="direct:get-status-from-dcae" />
602 uri="bean:org.onap.clamp.loop.LoopOperation?method=updateLoopStatus(${exchangeProperty[loopObject]},${exchangeProperty[policyStatus]}, ${exchangeProperty[dcaeStatus]})" />
605 message="Get Status request successfully executed. The new state is: ${body}" />
607 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Get Status request successfully executed','INFO',${exchangeProperty[loopObject]})" />
609 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
611 <exception>java.lang.Exception</exception>
613 <constant>false</constant>
616 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
619 message="Get Status request failed for loop: ${header.loopName}" />
621 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Get Status request failed','ERROR',${exchangeProperty[loopObject]})" />
625 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />