import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.google.common.base.Optional;
+import static org.apache.commons.lang3.StringUtils.isNotBlank;
/**
* Manages lifecycle operations towards the VNFMs.
}
}
- private InlineResponse201 sendCreateRequestToVnfm(final CreateVnfRequest aaiRequest, final GenericVnf genericVnf,
- final String vnfIdInAai, final EsrVnfm vnfm) {
- logger.debug("Sending a create request to SVNFM " + aaiRequest);
+ private InlineResponse201 sendCreateRequestToVnfm(final CreateVnfRequest createVnfRequest,
+ final GenericVnf genericVnf, final String vnfIdInAai, final EsrVnfm vnfm) {
+ logger.debug("Sending a create request to SVNFM {}", createVnfRequest);
final org.onap.so.adapters.etsisol003adapter.lcm.extclients.vnfm.model.CreateVnfRequest vnfmRequest =
new org.onap.so.adapters.etsisol003adapter.lcm.extclients.vnfm.model.CreateVnfRequest();
- final String vnfdId = packageProvider.getVnfdId(genericVnf.getModelVersionId());
+ final String pkgId = getPackageId(createVnfRequest, genericVnf);
+ final String vnfdId = packageProvider.getVnfdId(pkgId);
vnfmRequest.setVnfdId(vnfdId);
- vnfmRequest.setVnfInstanceName(aaiRequest.getName().replaceAll(" ", "_"));
+ vnfmRequest.setVnfInstanceName(createVnfRequest.getName().replaceAll(" ", "_"));
vnfmRequest.setVnfInstanceDescription(vnfIdInAai);
final Optional<InlineResponse201> optionalResponse = vnfmServiceProvider.createVnf(vnfm, vnfmRequest);
}
}
+ private String getPackageId(final CreateVnfRequest createVnfRequest, final GenericVnf genericVnf) {
+ if (isNotBlank(createVnfRequest.getPkgId())) {
+ logger.info("Found createVnfRequest pkgId: {}", createVnfRequest.getPkgId());
+ return createVnfRequest.getPkgId();
+ }
+ logger.info("Found genericVnf modelVersionId: {}", genericVnf.getModelVersionId());
+ return genericVnf.getModelVersionId();
+ }
+
private void createNotificationSubscription(final EsrVnfm vnfm, final String vnfId) {
try {
final LccnSubscriptionRequest subscriptionRequest = vnfmHelper.createNotificationSubscriptionRequest(vnfId);