diff --git a/src/main/java/org/etsi/osl/osom/management/CROrchestrationCheckDeploymentService.java b/src/main/java/org/etsi/osl/osom/management/CROrchestrationCheckDeploymentService.java index 8d036fe08f7360d1b018579af19d5c4de45e803a..b69a38910d5bb83ccd5e2242916faab9f6a98c43 100644 --- a/src/main/java/org/etsi/osl/osom/management/CROrchestrationCheckDeploymentService.java +++ b/src/main/java/org/etsi/osl/osom/management/CROrchestrationCheckDeploymentService.java @@ -91,13 +91,14 @@ public class CROrchestrationCheckDeploymentService implements JavaDelegate { Service serviceResult = serviceOrderManager.updateService( aService.getId(), supd, propagateToSO ); return; } + rlist.add(res); } @Valid ServiceStateType currentState = aService.getState(); - ServiceStateType nextState = aService.findNextStateBasedOnSupportingResources(rlist); + ServiceStateType nextState = aService.findNextStateBasedOnResourceList(rlist); if (!currentState.equals(nextState)) { supd.setState( nextState ); diff --git a/src/main/java/org/etsi/osl/osom/management/GCOrchestrationCheckDeploymentService.java b/src/main/java/org/etsi/osl/osom/management/GCOrchestrationCheckDeploymentService.java index 7f8d9a47a14e2b0332761264cc404940a7152e46..8f1e4d0c724a72045491d9d141d35bf8723c5156 100644 --- a/src/main/java/org/etsi/osl/osom/management/GCOrchestrationCheckDeploymentService.java +++ b/src/main/java/org/etsi/osl/osom/management/GCOrchestrationCheckDeploymentService.java @@ -96,7 +96,7 @@ public class GCOrchestrationCheckDeploymentService implements JavaDelegate { @Valid ServiceStateType currentState = aService.getState(); - ServiceStateType nextState = aService.findNextStateBasedOnSupportingResources(rlist); + ServiceStateType nextState = aService.findNextStateBasedOnResourceList(rlist); if (!currentState.equals(nextState)) { supd.setState( nextState ); diff --git a/src/main/java/org/etsi/osl/osom/management/ProcessCreateServiceRules.java b/src/main/java/org/etsi/osl/osom/management/ProcessCreateServiceRules.java index 8aa8166bf849b3dfeea36ce6db582bbb4aad9f81..6ca1a256c557b4bc19637f9722944796432b1749 100644 --- a/src/main/java/org/etsi/osl/osom/management/ProcessCreateServiceRules.java +++ b/src/main/java/org/etsi/osl/osom/management/ProcessCreateServiceRules.java @@ -67,6 +67,11 @@ public class ProcessCreateServiceRules implements JavaDelegate { return; } + if ( spec == null) { + logger.debug("\tCannot retrieve ServiceSpec:" + contextServiceSpecId); + return; + } + /* * first find all referenced ServiceSpecs of a ServiceSpec to be created diff --git a/src/main/java/org/etsi/osl/osom/management/ProcessOrderItemActionCheck.java b/src/main/java/org/etsi/osl/osom/management/ProcessOrderItemActionCheck.java index 0b49e90173acc5353e5921f14aa6755a6472dc65..1addb48ebd457d2491c14dd30be0ed6e487497d9 100644 --- a/src/main/java/org/etsi/osl/osom/management/ProcessOrderItemActionCheck.java +++ b/src/main/java/org/etsi/osl/osom/management/ProcessOrderItemActionCheck.java @@ -34,6 +34,7 @@ public class ProcessOrderItemActionCheck implements JavaDelegate { ServiceOrder sor = serviceOrderManager.retrieveServiceOrder((String) execution.getVariable("orderid")); String orderItemIdToProcess = (String) execution.getVariable("orderItemId"); ServiceOrderItem soi = null; + execution.setVariable("saction", "NONE"); for (ServiceOrderItem i : sor.getOrderItem()) { if (i.getUuid().equals( orderItemIdToProcess )){ @@ -46,7 +47,6 @@ public class ProcessOrderItemActionCheck implements JavaDelegate { logger.error("In ProcessOrderItemActionCheck cannot find ServiceOrderItem orderItemIdToProcess=:" + orderItemIdToProcess); logger.error("In ProcessOrderItemActionCheck cannot find ServiceOrderItem sor.getUuid()=:" + sor.getUuid() ); logger.error("In ProcessOrderItemActionCheck cannot find ServiceOrderItem sor()=:" + sor.toString() ); - execution.setVariable("saction", "NONE"); return; } diff --git a/src/main/resources/processes/ProcessOrderItemProcess.bpmn b/src/main/resources/processes/ProcessOrderItemProcess.bpmn index 4f386ce6a8bc381dd822dce0f16c5f7092f9d025..a6b64894f9cb0d6ea343ef4c579a1dadf472424e 100644 --- a/src/main/resources/processes/ProcessOrderItemProcess.bpmn +++ b/src/main/resources/processes/ProcessOrderItemProcess.bpmn @@ -26,6 +26,9 @@ <sequenceFlow id="flow30" sourceRef="stActionDELETE" targetRef="stProcesOrderItemComplete"></sequenceFlow> <sequenceFlow id="flow31" sourceRef="stProcesOrderItemComplete" targetRef="endevent2"></sequenceFlow> <sequenceFlow id="flow32" sourceRef="stActionADD" targetRef="CreateServiceProcess"></sequenceFlow> + <sequenceFlow id="flow33" name="saction=='NONE'" sourceRef="exclusivegateway1" targetRef="endevent2"> + <conditionExpression xsi:type="tFormalExpression"><![CDATA[${saction=='NONE'}]]></conditionExpression> + </sequenceFlow> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_ProcessOrderItem"> <bpmndi:BPMNPlane bpmnElement="ProcessOrderItem" id="BPMNPlane_ProcessOrderItem"> @@ -85,7 +88,7 @@ <omgdi:waypoint x="320.0" y="367.0"></omgdi:waypoint> <omgdi:waypoint x="464.0" y="367.0"></omgdi:waypoint> <bpmndi:BPMNLabel> - <omgdc:Bounds height="14.0" width="88.0" x="340.0" y="339.0"></omgdc:Bounds> + <omgdc:Bounds height="14.0" width="100.0" x="340.0" y="339.0"></omgdc:Bounds> </bpmndi:BPMNLabel> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow28" id="BPMNEdge_flow28"> @@ -111,6 +114,15 @@ <omgdi:waypoint x="515.0" y="87.0"></omgdi:waypoint> <omgdi:waypoint x="560.0" y="87.0"></omgdi:waypoint> </bpmndi:BPMNEdge> + <bpmndi:BPMNEdge bpmnElement="flow33" id="BPMNEdge_flow33"> + <omgdi:waypoint x="320.0" y="197.0"></omgdi:waypoint> + <omgdi:waypoint x="319.0" y="467.0"></omgdi:waypoint> + <omgdi:waypoint x="867.0" y="467.0"></omgdi:waypoint> + <omgdi:waypoint x="867.0" y="191.0"></omgdi:waypoint> + <bpmndi:BPMNLabel> + <omgdc:Bounds height="14.0" width="100.0" x="335.0" y="449.0"></omgdc:Bounds> + </bpmndi:BPMNLabel> + </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions> \ No newline at end of file