diff options
Diffstat (limited to 'bpmn/MSOCommonBPMN/src/main/java')
3 files changed, 47 insertions, 4 deletions
diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/ResourceKey.java b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/ResourceKey.java index 641cd35027..aa5da4c790 100644 --- a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/ResourceKey.java +++ b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/ResourceKey.java @@ -35,6 +35,9 @@ public enum ResourceKey { VPN_BONDING_LINK_ID, INSTANCE_GROUP_ID, PNF, + PNF_INSTANCE_NAME, VNF_INSTANCE_NAME, - VF_MODULE_INSTANCE_NAME + VF_MODULE_INSTANCE_NAME, + CHILD_SERVICE_INSTANCE_ID, + CHILD_SERVICE_INSTANCE_NAME } diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/WorkflowResourceIds.java b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/WorkflowResourceIds.java index 5df7c60f74..a44d5e972d 100644 --- a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/WorkflowResourceIds.java +++ b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/entities/WorkflowResourceIds.java @@ -42,6 +42,10 @@ public class WorkflowResourceIds implements Serializable { private String instanceGroupId; private String vnfInstanceName; private String vfModuleInstanceName; + private String childServiceInstanceId; + private String childServiceInstanceName; + private String pnfInstanceName; + public WorkflowResourceIds() { @@ -58,6 +62,8 @@ public class WorkflowResourceIds implements Serializable { this.networkCollectionId = workflowResourceIds.networkCollectionId; this.configurationId = workflowResourceIds.configurationId; this.instanceGroupId = workflowResourceIds.instanceGroupId; + this.childServiceInstanceId = workflowResourceIds.childServiceInstanceId; + this.childServiceInstanceName = workflowResourceIds.childServiceInstanceName; } @@ -157,4 +163,28 @@ public class WorkflowResourceIds implements Serializable { public void setVfModuleInstanceName(String vfModuleInstanceName) { this.vfModuleInstanceName = vfModuleInstanceName; } + + public String getChildServiceInstanceId() { + return childServiceInstanceId; + } + + public void setChildServiceInstanceId(String childServiceInstanceId) { + this.childServiceInstanceId = childServiceInstanceId; + } + + public String getChildServiceInstanceName() { + return childServiceInstanceName; + } + + public void setChildServiceInstanceName(String childServiceInstanceName) { + this.childServiceInstanceName = childServiceInstanceName; + } + + public String getPnfInstanceName() { + return pnfInstanceName; + } + + public void setPnfInstanceName(String pnfInstanceName) { + this.pnfInstanceName = pnfInstanceName; + } } diff --git a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/tasks/BBInputSetup.java b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/tasks/BBInputSetup.java index 6d5eb63b0d..a0784b375e 100644 --- a/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/tasks/BBInputSetup.java +++ b/bpmn/MSOCommonBPMN/src/main/java/org/onap/so/bpmn/servicedecomposition/tasks/BBInputSetup.java @@ -262,6 +262,9 @@ public class BBInputSetup implements JavaDelegate { lookupKeyMap.put(ResourceKey.INSTANCE_GROUP_ID, workflowResourceIds.getInstanceGroupId()); lookupKeyMap.put(ResourceKey.VNF_INSTANCE_NAME, workflowResourceIds.getVnfInstanceName()); lookupKeyMap.put(ResourceKey.VF_MODULE_INSTANCE_NAME, workflowResourceIds.getVfModuleInstanceName()); + lookupKeyMap.put(ResourceKey.CHILD_SERVICE_INSTANCE_ID, workflowResourceIds.getChildServiceInstanceId()); + lookupKeyMap.put(ResourceKey.CHILD_SERVICE_INSTANCE_NAME, workflowResourceIds.getChildServiceInstanceName()); + lookupKeyMap.put(ResourceKey.PNF_INSTANCE_NAME, workflowResourceIds.getPnfInstanceName()); } protected GeneralBuildingBlock getGBBALaCarteNonService(ExecuteBuildingBlock executeBB, @@ -1632,9 +1635,16 @@ public class BBInputSetup implements JavaDelegate { } else if (bbName.contains(PNF) || (bbName.contains(CONTROLLER) && (PNF).equalsIgnoreCase(executeBB.getBuildingBlock().getBpmnScope()))) { String pnfId = lookupKeyMap.get(ResourceKey.PNF); - resources.getPnfs().stream() - .filter(pnfs -> Objects.equals(key, pnfs.getModelInfo().getModelCustomizationId())).findFirst() - .ifPresent(pnfs -> BBInputSetupPnf.populatePnfToServiceInstance(pnfs, pnfId, serviceInstance)); + String pnfInstanceName = lookupKeyMap.get(ResourceKey.PNF_INSTANCE_NAME); + if (StringUtils.isNotBlank(pnfInstanceName)) { + resources.getPnfs().stream().filter(pnfs -> Objects.equals(pnfInstanceName, pnfs.getInstanceName())) + .findFirst() + .ifPresent(pnfs -> BBInputSetupPnf.populatePnfToServiceInstance(pnfs, pnfId, serviceInstance)); + } else { + resources.getPnfs().stream() + .filter(pnfs -> Objects.equals(key, pnfs.getModelInfo().getModelCustomizationId())).findFirst() + .ifPresent(pnfs -> BBInputSetupPnf.populatePnfToServiceInstance(pnfs, pnfId, serviceInstance)); + } } else if (bbName.contains(VF_MODULE) || bbName.contains(VOLUME_GROUP) || (bbName.contains(CONTROLLER) && (VF_MODULE).equalsIgnoreCase(executeBB.getBuildingBlock().getBpmnScope()))) { String vfModuleInstanceName = lookupKeyMap.get(ResourceKey.VF_MODULE_INSTANCE_NAME); |