use of org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance in project so by onap.
the class CreateNetworkCollection method connectCollectionToServiceInstance.
/**
* BPMN access method to connect Network Collection
*
* @param execution
* @throws Exception
*/
public void connectCollectionToServiceInstance(BuildingBlockExecution execution) throws Exception {
execution.setVariable("connectCollectionToServiceInstanceRollback", false);
try {
ServiceInstance serviceInstance = extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
Collection networkCollection = serviceInstance.getCollection();
aaiNetworkResources.connectNetworkCollectionToServiceInstance(networkCollection, serviceInstance);
execution.setVariable("connectCollectionToServiceInstanceRollback", true);
} catch (Exception ex) {
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance in project so by onap.
the class CreateNetworkCollection method buildNetworkCollectionName.
/**
* BPMN access method to build Network Collection Name
*
* @param execution
* @throws Exception
*/
public void buildNetworkCollectionName(BuildingBlockExecution execution) throws Exception {
try {
ServiceInstance serviceInstance = extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
InstanceGroup instanceGroup = serviceInstance.getCollection().getInstanceGroup();
if (instanceGroup.getModelInfoInstanceGroup() != null) {
// Build collection name assembling SI name and IG function
if (serviceInstance.getServiceInstanceName() != null && instanceGroup.getModelInfoInstanceGroup().getFunction() != null) {
String networkCollectionName = serviceInstance.getServiceInstanceName().concat(UNDERSCORE).concat(instanceGroup.getModelInfoInstanceGroup().getFunction());
// set networkCollectionName object on execution to be re-used within current BB
execution.setVariable(NETWORK_COLLECTION_NAME, networkCollectionName);
} else {
throw new IllegalArgumentException("Cannot generate collection name because either one or both fields are null: " + " Service Instance Name: " + serviceInstance.getServiceInstanceName() + ", Instance Group Function: " + instanceGroup.getModelInfoInstanceGroup().getFunction());
}
} else {
throw new IllegalArgumentException("Instance group model info is null");
}
} catch (Exception ex) {
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance in project so by onap.
the class SDNCDeactivateTasks method deactivateVnf.
/**
* BPMN access method to perform Service Topology Deactivate action on SDNC for Vnf
*
* @param execution
* @throws Exception
*/
public void deactivateVnf(BuildingBlockExecution execution) throws Exception {
try {
GeneralBuildingBlock gBBInput = execution.getGeneralBuildingBlock();
RequestContext requestContext = gBBInput.getRequestContext();
ServiceInstance serviceInstance = null;
GenericVnf vnf = null;
serviceInstance = extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
vnf = extractPojosForBB.extractByKey(execution, ResourceKey.GENERIC_VNF_ID);
CloudRegion cloudRegion = gBBInput.getCloudRegion();
Customer customer = gBBInput.getCustomer();
SDNCRequest sdncRequest = new SDNCRequest();
GenericResourceApiVnfOperationInformation req = sdncVnfResources.deactivateVnf(vnf, serviceInstance, customer, cloudRegion, requestContext, buildCallbackURI(sdncRequest));
sdncRequest.setSDNCPayload(req);
sdncRequest.setTopology(SDNCTopology.VNF);
execution.setVariable(SDNC_REQUEST, sdncRequest);
} catch (Exception ex) {
logger.error("Exception occurred in SDNCDeactivateTasks deactivateVnf", ex);
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance in project so by onap.
the class SDNCDeactivateTasks method deactivateNetwork.
/**
* BPMN access method to invoke deactivate on a L3Network object
*
* @param execution
*/
public void deactivateNetwork(BuildingBlockExecution execution) {
try {
GeneralBuildingBlock gBBInput = execution.getGeneralBuildingBlock();
L3Network l3Network = extractPojosForBB.extractByKey(execution, ResourceKey.NETWORK_ID);
ServiceInstance serviceInstance = extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
Customer customer = gBBInput.getCustomer();
RequestContext requestContext = gBBInput.getRequestContext();
CloudRegion cloudRegion = gBBInput.getCloudRegion();
GenericResourceApiNetworkOperationInformation req = sdncNetworkResources.deactivateNetwork(l3Network, serviceInstance, customer, requestContext, cloudRegion);
SDNCRequest sdncRequest = new SDNCRequest();
sdncRequest.setSDNCPayload(req);
sdncRequest.setTopology(SDNCTopology.NETWORK);
execution.setVariable(SDNC_REQUEST, sdncRequest);
} catch (Exception ex) {
logger.error("Exception occurred in SDNCDeactivateTasks deactivateNetwork", ex);
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
use of org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance in project so by onap.
the class NamingServiceDeleteTasks method deleteServiceInstanceName.
public void deleteServiceInstanceName(BuildingBlockExecution execution) throws BBObjectNotFoundException {
ServiceInstance serviceInstance = extractPojosForBB.extractByKey(execution, ResourceKey.SERVICE_INSTANCE_ID);
NamingRequestObject namingRequestObject = new NamingRequestObject();
namingRequestObject.setExternalKeyValue(serviceInstance.getServiceInstanceId());
try {
namingServiceResources.deleteServiceInstanceName(namingRequestObject);
} catch (Exception ex) {
exceptionUtil.buildAndThrowWorkflowException(execution, 7000, ex);
}
}
Aggregations