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')" />
208 <to uri="direct:load-loop" />
209 <to uri="direct:get-status-from-policy" />
210 <to uri="direct:get-status-from-dcae" />
213 message="Policy deployment status: ${exchangeProperty[policyStatus]}"></log>
216 <simple> ${exchangeProperty[policyStatus]} == 'SUBMITTED' and
217 ${exchangeProperty[dcaeStatus]} == 'NOT_DEPLOYED'
219 <to uri="direct:deploy-closedloop" />
224 message="Closed Loop is in state ${exchangeProperty[policyStatus]}, it can only be deployed when in state SUBMIT" />
226 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]})" />
231 message="DEPLOY request successfully executed for loop: ${header.loopName}" />
233 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DEPLOY request successfully executed','INFO',${exchangeProperty[loopObject]})" />
235 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
237 <exception>java.lang.Exception</exception>
239 <constant>false</constant>
242 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
245 message="DEPLOY request failed for loop: ${header.loopName}" />
247 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DEPLOY request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
253 uri="/v2/loop/undeployLoop/{loopName}"
254 outType="org.onap.clamp.loop.Loop"
255 produces="application/json">
259 excludePattern="loopName" />
262 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Undeploy the closed loop')" />
264 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
265 <to uri="direct:load-loop" />
266 <to uri="direct:get-status-from-dcae" />
269 <simple> ${exchangeProperty[dcaeStatus]} == 'DEPLOYED'
271 <to uri="direct:undeploy-closedloop" />
276 message="Closed Loop is in state ${exchangeProperty[dcaeStatus]}, it can only be undeployed when in state DEPLOYED" />
278 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]})" />
283 message="UNDEPLOY request successfully executed for loop: ${header.loopName}" />
285 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('UNDEPLOY request successfully executed','INFO',${exchangeProperty[loopObject]})" />
287 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
289 <exception>java.lang.Exception</exception>
291 <constant>false</constant>
294 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
297 message="UNDEPLOY request failed for loop: ${header.loopName}" />
299 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('UNDEPLOY request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
305 uri="/v2/loop/stop/{loopName}"
306 outType="org.onap.clamp.loop.Loop"
307 produces="application/json">
311 excludePattern="loopName" />
315 message="Receive STOP request for loop: ${header.loopName}" />
317 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Stop the closed loop')" />
319 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
320 <to uri="direct:load-loop" />
321 <to uri="direct:remove-all-policy-from-active-pdp-group" />
324 message="STOP request successfully executed for loop: ${header.loopName}" />
326 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('STOP request successfully executed','INFO',${exchangeProperty[loopObject]})" />
328 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
330 <exception>java.lang.Exception</exception>
332 <constant>false</constant>
335 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
338 message="STOP request failed for loop: $${header.loopName}" />
340 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('STOP request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
346 uri="/v2/loop/start/{loopName}"
347 outType="org.onap.clamp.loop.Loop"
348 produces="application/json">
352 excludePattern="loopName" />
356 message="Receive START request for loop: ${header.loopName}" />
358 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Start the closed loop')" />
360 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
361 <to uri="direct:load-loop" />
364 <to uri="direct:add-all-to-active-pdp-group" />
367 message="START request successfully executed for loop: ${header.loopName}" />
369 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('START request successfully executed','INFO',${exchangeProperty[loopObject]})" />
371 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
373 <exception>java.lang.Exception</exception>
375 <constant>false</constant>
378 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
381 message="START request failed for loop: ${header.loopName}" />
383 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('START request failed, Error reported: ${exception}','INFO',${exchangeProperty[loopObject]})" />
389 uri="/v2/loop/submit/{loopName}"
390 outType="org.onap.clamp.loop.Loop"
391 produces="application/json">
395 excludePattern="loopName" />
399 message="Receive SUBMIT request for loop: ${header.loopName}" />
401 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Submit the closed loop')" />
403 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
404 <to uri="direct:load-loop" />
406 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive SUBMIT request','INFO',${exchangeProperty[loopObject]})" />
407 <setProperty propertyName="raiseHttpExceptionFlag">
408 <simple resultType="java.lang.Boolean">false</simple>
410 <to uri="direct:remove-all-policy-from-active-pdp-group" />
413 message="Processing all MICRO-SERVICES policies defined in loop ${exchangeProperty[loopObject].getName()}" />
415 <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
417 <setProperty propertyName="microServicePolicy">
418 <simple>${body}</simple>
422 message="Processing Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
423 <setProperty propertyName="raiseHttpExceptionFlag">
424 <simple resultType="java.lang.Boolean">false</simple>
426 <to uri="direct:delete-micro-service-policy" />
427 <to uri="direct:create-micro-service-policy" />
431 message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
433 <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
435 <setProperty propertyName="operationalPolicy">
436 <simple>${body}</simple>
440 message="Processing Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
441 <setProperty propertyName="raiseHttpExceptionFlag">
442 <simple resultType="java.lang.Boolean">false</simple>
445 <to uri="direct:delete-operational-policy" />
446 <to uri="direct:create-operational-policy" />
450 message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
452 <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
454 <setProperty propertyName="guardPolicy">
455 <simple>${body}</simple>
459 message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
461 <setProperty propertyName="raiseHttpExceptionFlag">
462 <simple resultType="java.lang.Boolean">false</simple>
464 <to uri="direct:delete-guard-policy" />
465 <to uri="direct:create-guard-policy" />
469 <to uri="direct:add-all-to-active-pdp-group" />
473 message="SUBMIT request successfully executed for loop: ${header.loopName}" />
475 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('SUBMIT request successfully executed','INFO',${exchangeProperty[loopObject]})" />
477 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
479 <exception>java.lang.Exception</exception>
481 <constant>false</constant>
484 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
487 message="SUBMIT request failed for loop: ${header.loopName}" />
489 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('SUBMIT request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
494 <put uri="/v2/loop/delete/{loopName}">
498 excludePattern="loopName" />
502 message="Receive DELETE request for loop: ${header.loopName}" />
504 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog('Delete the closed loop')" />
506 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','update')" />
507 <to uri="direct:load-loop" />
509 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive DELETE request','INFO',${exchangeProperty[loopObject]})" />
510 <to uri="direct:remove-all-policy-from-active-pdp-group" />
512 <simple>${exchangeProperty[loopObject].getMicroServicePolicies()}
514 <setProperty propertyName="microServicePolicy">
515 <simple>${body}</simple>
519 message="Processing Micro Service Policy: ${exchangeProperty[microServicePolicy].getName()}" />
520 <to uri="direct:delete-micro-service-policy" />
525 message="Processing all OPERATIONAL policies defined in loop ${exchangeProperty[loopObject].getName()}" />
527 <simple>${exchangeProperty[loopObject].getOperationalPolicies()}
529 <setProperty propertyName="operationalPolicy">
530 <simple>${body}</simple>
534 message="Processing Operational Policy: ${exchangeProperty[operationalPolicy].getName()}" />
535 <to uri="direct:delete-operational-policy" />
538 message="Processing all GUARD policies defined in loop ${exchangeProperty[loopObject].getName()}" />
540 <simple>${exchangeProperty[operationalPolicy].createGuardPolicyPayloads().entrySet()}
542 <setProperty propertyName="guardPolicy">
543 <simple>${body}</simple>
547 message="Processing Guard Policy: ${exchangeProperty[guardPolicy].getKey()}" />
548 <to uri="direct:delete-guard-policy" />
552 uri="bean:org.onap.clamp.loop.log.LoopService?method=deleteLoop(${header.loopName})" />
555 message="DELETE request successfully executed for loop: ${header.loopName}" />
557 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DELETE request successfully executed','INFO',${exchangeProperty[loopObject]})" />
559 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
561 <exception>java.lang.Exception</exception>
563 <constant>false</constant>
566 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
569 message="DELETE request failed for loop: ${header.loopName}" />
571 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('DELETE request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
577 uri="/v2/loop/getstatus/{loopName}"
578 outType="org.onap.clamp.loop.Loop"
579 produces="application/json">
583 excludePattern="loopName" />
587 message="Get current status for loop: ${header.loopName}" />
589 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=startLog(*, 'Get the closed loop status')" />
591 uri="bean:org.onap.clamp.authorization.AuthorizationController?method=authorize(*,'cl','','read')" />
592 <to uri="direct:load-loop" />
594 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Receive GET STATUS request','INFO',${exchangeProperty[loopObject]})" />
595 <setProperty propertyName="raiseHttpExceptionFlag">
596 <simple resultType="java.lang.Boolean">false</simple>
598 <to uri="direct:get-status-from-policy" />
599 <to uri="direct:get-status-from-dcae" />
601 uri="bean:org.onap.clamp.loop.LoopOperation?method=updateLoopStatus(${exchangeProperty[loopObject]},${exchangeProperty[policyStatus]}, ${exchangeProperty[dcaeStatus]})" />
604 message="Get Status request successfully executed. The new state is: ${body}" />
606 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Get Status request successfully executed','INFO',${exchangeProperty[loopObject]})" />
608 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=endLog()" />
610 <exception>java.lang.Exception</exception>
612 <constant>false</constant>
615 uri="bean:org.onap.clamp.flow.log.FlowLogOperation?method=errorLog()" />
618 message="Get Status request failed for loop: ${header.loopName}" />
620 uri="bean:org.onap.clamp.loop.log.LoopLogService?method=addLog('Get Status request failed, Error reported: ${exception}','ERROR',${exchangeProperty[loopObject]})" />
624 uri="bean:org.onap.clamp.loop.LoopController?method=getLoop(${header.loopName})" />