X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=vid-app-common%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fvid%2Fmodel%2FserviceInstantiation%2FInstanceGroup.java;h=b945f1327afdd6af9758759e128c43ef428a9366;hb=e601bbdc43bae9a08e2e10c5139a6f76b47860d7;hp=3fda8429b5e60ad049e5f99d0d4292de6b1c262e;hpb=76c6ee4a697617ec4cdee2f3b48bc83136c858c5;p=vid.git diff --git a/vid-app-common/src/main/java/org/onap/vid/model/serviceInstantiation/InstanceGroup.java b/vid-app-common/src/main/java/org/onap/vid/model/serviceInstantiation/InstanceGroup.java index 3fda8429b..b945f1327 100644 --- a/vid-app-common/src/main/java/org/onap/vid/model/serviceInstantiation/InstanceGroup.java +++ b/vid-app-common/src/main/java/org/onap/vid/model/serviceInstantiation/InstanceGroup.java @@ -7,9 +7,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -22,21 +22,47 @@ package org.onap.vid.model.serviceInstantiation; import com.fasterxml.jackson.annotation.JsonProperty; import org.onap.vid.job.JobAdapter; +import org.onap.vid.job.JobType; import org.onap.vid.mso.model.ModelInfo; +import java.util.Collection; +import java.util.Collections; +import java.util.Map; + public class InstanceGroup extends BaseResource implements JobAdapter.AsyncJobRequest { + private final Map vnfGroupMembers; + public InstanceGroup(@JsonProperty("modelInfo") ModelInfo modelInfo, @JsonProperty("instanceName") String instanceName, @JsonProperty("action") String action, @JsonProperty("rollbackOnFailure") boolean rollbackOnFailure, - @JsonProperty("instanceId") String instanceId) { + @JsonProperty("instanceId") String instanceId, + @JsonProperty("vnfs") Map vnfGroupMembers, + @JsonProperty("trackById") String trackById, + @JsonProperty("isFailed") Boolean isFailed, + @JsonProperty("statusMessage") String statusMessage) { - super(modelInfo, instanceName, action, null, null, null, null, rollbackOnFailure, instanceId); + super(modelInfo, instanceName, action, null, null, null, null, rollbackOnFailure, instanceId, trackById, isFailed, statusMessage); + this.vnfGroupMembers = vnfGroupMembers; } @Override protected String getModelType() { return "instanceGroup"; } + + @Override + public Collection getChildren() { + return getVnfGroupMembers().values(); + } + + public Map getVnfGroupMembers() { + return vnfGroupMembers == null ? Collections.emptyMap() : vnfGroupMembers; + } + + @Override + public JobType getJobType() { + return JobType.InstanceGroup; + } }