Search in sources :

Example 56 with InfraActiveRequests

use of org.onap.so.db.request.beans.InfraActiveRequests in project so by onap.

the class RequestsDbClient method updateInfraActiveRequests.

/**
 * Required for groovy usage. Cannot use Spring Autowired variables
 *
 * @param request
 * @param basicAuth
 * @param host
 */
public void updateInfraActiveRequests(InfraActiveRequests request, String basicAuth, String host) {
    RestTemplate template = new RestTemplate();
    template.getInterceptors().add(new SOSpringClientFilter());
    template.getInterceptors().add(new SpringClientPayloadFilter());
    HttpHeaders headers = new HttpHeaders();
    headers.set(HttpHeaders.AUTHORIZATION, basicAuth);
    headers.set(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON);
    headers.set(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON);
    URI uri = getUri(host + "/infraActiveRequests/" + request.getRequestId());
    HttpEntity<InfraActiveRequests> entity = new HttpEntity<>(request, headers);
    template.put(uri, entity);
}
Also used : SOSpringClientFilter(org.onap.so.logging.jaxrs.filter.SOSpringClientFilter) HttpHeaders(org.springframework.http.HttpHeaders) HttpEntity(org.springframework.http.HttpEntity) RestTemplate(org.springframework.web.client.RestTemplate) URI(java.net.URI) InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) SpringClientPayloadFilter(org.onap.logging.filter.spring.SpringClientPayloadFilter)

Example 57 with InfraActiveRequests

use of org.onap.so.db.request.beans.InfraActiveRequests in project so by onap.

the class RequestsDBHelper method updateInfraSuccessCompletion.

/**
 * This util method is to update the InfraRequest table to Complete
 *
 * @param msg - string, unique message for each caller
 * @param requestId - string
 * @param operationalEnvironmentId - string
 * @return void - nothing
 * @throws Exception
 */
public void updateInfraSuccessCompletion(String msg, String requestId, String operationalEnvironmentId) {
    methodName = "updateInfraSuccessCompletion() method.";
    classMethodMessage = className + " " + methodName;
    logger.debug("Begin of {}", classMethodMessage);
    InfraActiveRequests request = requestsDbClient.getInfraActiveRequestbyRequestId(requestId);
    request.setRequestStatus("COMPLETE");
    request.setStatusMessage("SUCCESSFUL, operationalEnvironmentId - " + operationalEnvironmentId + "; Success Message: " + msg);
    request.setProgress(100L);
    request.setLastModifiedBy("APIH");
    request.setOperationalEnvId(operationalEnvironmentId);
    if (request.getRequestScope() == null) {
        request.setRequestScope(UNKNOWN);
    }
    Timestamp endTimeStamp = new Timestamp(System.currentTimeMillis());
    request.setEndTime(endTimeStamp);
    requestsDbClient.save(request);
    logger.debug("End of {}", classMethodMessage);
}
Also used : InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) Timestamp(java.sql.Timestamp)

Example 58 with InfraActiveRequests

use of org.onap.so.db.request.beans.InfraActiveRequests in project so by onap.

the class RequestDbClientTest method updateInfraActiveRequestsTest.

@Test
public void updateInfraActiveRequestsTest() {
    InfraActiveRequests request = new InfraActiveRequests();
    request.setRequestId("1");
    URI uri = URI.create("/infraActiveRequests/1");
    requestsDbClient.patchInfraActiveRequests(request);
    Mockito.verify(restTemplate, times(1)).exchange(eq(uri), eq(HttpMethod.PATCH), isA(HttpEntity.class), eq(String.class));
}
Also used : HttpEntity(org.springframework.http.HttpEntity) InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) URI(java.net.URI) Test(org.junit.Test)

Example 59 with InfraActiveRequests

use of org.onap.so.db.request.beans.InfraActiveRequests in project so by onap.

the class RequestsDBHelperTest method updateInfraFailureCompletion.

@Test
public void updateInfraFailureCompletion() {
    when(requestsDbClient.getInfraActiveRequestbyRequestId(any())).thenReturn(new InfraActiveRequests());
    requestsDBHelper.updateInfraFailureCompletion("messageText", "requestId", "operationalEnvId");
    ArgumentCaptor<InfraActiveRequests> infraActiveRequests = ArgumentCaptor.forClass(InfraActiveRequests.class);
    verify(requestsDbClient, times(1)).save(infraActiveRequests.capture());
    assertEquals("FAILED", infraActiveRequests.getValue().getRequestStatus());
    assertEquals("APIH", infraActiveRequests.getValue().getLastModifiedBy());
    assertEquals(Long.valueOf(100), infraActiveRequests.getValue().getProgress());
    assertEquals("FAILURE, operationalEnvironmentId - operationalEnvId; Error message: messageText", infraActiveRequests.getValue().getStatusMessage());
    assertEquals("operationalEnvId", infraActiveRequests.getValue().getOperationalEnvId());
}
Also used : InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) Test(org.junit.Test)

Example 60 with InfraActiveRequests

use of org.onap.so.db.request.beans.InfraActiveRequests in project so by onap.

the class BBInputSetup method getGBBMacroUserParams.

protected GeneralBuildingBlock getGBBMacroUserParams(ExecuteBuildingBlock executeBB, RequestDetails requestDetails, Map<ResourceKey, String> lookupKeyMap, String vnfType, String bbName, String key, GeneralBuildingBlock gBB, RequestParameters requestParams, Service service, String input) throws Exception {
    ServiceInstance serviceInstance = gBB.getServiceInstance();
    org.onap.so.serviceinstancebeans.Service serviceMacro = mapper.readValue(input, org.onap.so.serviceinstancebeans.Service.class);
    Resources resources = serviceMacro.getResources();
    Vnfs vnfs = null;
    VfModules vfModules = null;
    Networks networks = null;
    CloudConfiguration cloudConfiguration = requestDetails.getCloudConfiguration();
    CloudRegion cloudRegion = setCloudConfiguration(gBB, cloudConfiguration);
    BBInputSetupParameter parameter = new BBInputSetupParameter.Builder().setRequestId(executeBB.getRequestId()).setService(service).setBbName(bbName).setServiceInstance(serviceInstance).setLookupKeyMap(lookupKeyMap).build();
    if (bbName.contains(VNF) || (bbName.contains(CONTROLLER) && (VNF).equalsIgnoreCase(executeBB.getBuildingBlock().getBpmnScope()))) {
        String vnfInstanceName = lookupKeyMap.get(ResourceKey.VNF_INSTANCE_NAME);
        if (StringUtils.isNotBlank(vnfInstanceName)) {
            vnfs = findVnfsByInstanceName(vnfInstanceName, resources);
        } else {
            vnfs = findVnfsByKey(key, resources);
        }
        // Vnf level cloud configuration takes precedence over service level cloud configuration.
        if (vnfs.getCloudConfiguration() != null) {
            setCloudConfiguration(gBB, vnfs.getCloudConfiguration());
        }
        String vnfId = lookupKeyMap.get(ResourceKey.GENERIC_VNF_ID);
        // This stores the vnf id in request db to be retrieved later when
        // working on a vf module or volume group
        InfraActiveRequests request = this.bbInputSetupUtils.getInfraActiveRequest(executeBB.getRequestId());
        if (request != null) {
            this.bbInputSetupUtils.updateInfraActiveRequestVnfId(request, vnfId);
        }
        parameter.setModelInfo(vnfs.getModelInfo());
        parameter.setInstanceName(vnfs.getInstanceName());
        parameter.setPlatform(vnfs.getPlatform());
        parameter.setLineOfBusiness(vnfs.getLineOfBusiness());
        parameter.setResourceId(vnfId);
        parameter.setVnfType(vnfType);
        parameter.setInstanceParams(vnfs.getInstanceParams());
        parameter.setProductFamilyId(requestDetails.getRequestInfo().getProductFamilyId());
        String applicationId = "";
        if (vnfs.getApplicationId() != null) {
            applicationId = vnfs.getApplicationId();
        }
        parameter.setApplicationId(applicationId);
        this.populateGenericVnf(parameter);
    } 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));
    } 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);
        if (StringUtils.isNotBlank(vfModuleInstanceName)) {
            vfModules = getVfModulesByInstanceName(vfModuleInstanceName, resources);
        } else {
            vfModules = getVfModulesByKey(key, resources);
        }
        String vfModulesName = vfModules.getInstanceName();
        String vfModulesModelCustId = vfModules.getModelInfo().getModelCustomizationId();
        // Get the Vnf associated with vfModule
        Optional<org.onap.so.serviceinstancebeans.Vnfs> parentVnf = resources.getVnfs().stream().filter(aVnf -> aVnf.getCloudConfiguration() != null).filter(aVnf -> aVnf.getVfModules().stream().anyMatch(aVfModules -> aVfModules.getInstanceName().equals(vfModulesName) && aVfModules.getModelInfo().getModelCustomizationId().equals(vfModulesModelCustId))).findAny();
        // Get the cloud configuration from this Vnf
        if (parentVnf.isPresent()) {
            cloudRegion = setCloudConfiguration(gBB, parentVnf.get().getCloudConfiguration());
        }
        lookupKeyMap.put(ResourceKey.GENERIC_VNF_ID, getVnfId(executeBB, lookupKeyMap));
        parameter.setModelInfo(vfModules.getModelInfo());
        if (bbName.contains(VOLUME_GROUP)) {
            parameter.setResourceId(lookupKeyMap.get(ResourceKey.VOLUME_GROUP_ID));
            parameter.setInstanceName(vfModules.getVolumeGroupInstanceName());
            parameter.setVnfType(vnfType);
            parameter.setInstanceParams(vfModules.getInstanceParams());
            ServiceModel serviceModel = new ServiceModel();
            serviceModel.setCurrentService(service);
            parameter.setServiceModel(serviceModel);
            this.populateVolumeGroup(parameter);
        } else {
            parameter.setResourceId(lookupKeyMap.get(ResourceKey.VF_MODULE_ID));
            CloudConfiguration cloudConfig = new CloudConfiguration();
            cloudConfig.setLcpCloudRegionId(cloudRegion.getLcpCloudRegionId());
            cloudConfig.setCloudOwner(cloudRegion.getCloudOwner());
            ServiceModel serviceModel = new ServiceModel();
            serviceModel.setCurrentService(service);
            parameter.setServiceModel(serviceModel);
            parameter.setCloudConfiguration(cloudConfig);
            parameter.setInstanceName(vfModules.getInstanceName());
            parameter.setInstanceParams(vfModules.getInstanceParams());
            this.populateVfModule(parameter);
            gBB.getRequestContext().setIsHelm(parameter.getIsHelm());
        }
    } else if (bbName.contains(NETWORK)) {
        networks = findNetworksByKey(key, resources);
        String networkId = lookupKeyMap.get(ResourceKey.NETWORK_ID);
        if (networks != null) {
            // If service level cloud configuration is not provided then get it from networks.
            if (cloudConfiguration == null) {
                Optional<org.onap.so.serviceinstancebeans.Networks> netWithCloudConfig = resources.getNetworks().stream().filter(aNetwork -> aNetwork.getCloudConfiguration() != null).findAny();
                if (netWithCloudConfig.isPresent()) {
                    setCloudConfiguration(gBB, netWithCloudConfig.get().getCloudConfiguration());
                } else {
                    logger.debug("Could not find any cloud configuration for this request.");
                }
            }
            parameter.setInstanceName(networks.getInstanceName());
            parameter.setModelInfo(networks.getModelInfo());
            parameter.setInstanceParams(networks.getInstanceParams());
            parameter.setResourceId(networkId);
            this.populateL3Network(parameter);
        }
    } else if (bbName.contains("Configuration")) {
        String configurationId = lookupKeyMap.get(ResourceKey.CONFIGURATION_ID);
        ModelInfo configurationModelInfo = new ModelInfo();
        configurationModelInfo.setModelCustomizationUuid(key);
        ConfigurationResourceCustomization configurationCust = findConfigurationResourceCustomization(configurationModelInfo, service);
        if (configurationCust != null) {
            parameter.setModelInfo(configurationModelInfo);
            parameter.setResourceId(configurationId);
            parameter.setConfigurationResourceKeys(executeBB.getConfigurationResourceKeys());
            parameter.setRequestDetails(executeBB.getRequestDetails());
            this.populateConfiguration(parameter);
        } else {
            logger.debug("Could not find a configuration customization with key: {}", key);
        }
    }
    return gBB;
}
Also used : WorkflowResourceIds(org.onap.so.bpmn.servicedecomposition.entities.WorkflowResourceIds) AAIUriFactory(org.onap.aaiclient.client.aai.entities.uri.AAIUriFactory) VpnBinding(org.onap.so.bpmn.servicedecomposition.bbobjects.VpnBinding) Vnfs(org.onap.so.serviceinstancebeans.Vnfs) LoggerFactory(org.slf4j.LoggerFactory) Autowired(org.springframework.beans.factory.annotation.Autowired) ServiceInstance(org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance) StringUtils(org.apache.commons.lang3.StringUtils) ServiceProxyResourceCustomization(org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization) ModelInfo(org.onap.so.serviceinstancebeans.ModelInfo) JavaDelegate(org.camunda.bpm.engine.delegate.JavaDelegate) Pnf(org.onap.so.bpmn.servicedecomposition.bbobjects.Pnf) Service(org.onap.so.db.catalog.beans.Service) Map(java.util.Map) Tenant(org.onap.so.bpmn.servicedecomposition.bbobjects.Tenant) OrchestrationStatus(org.onap.so.db.catalog.beans.OrchestrationStatus) DelegateExecutionImpl(org.onap.so.bpmn.common.DelegateExecutionImpl) ExecuteBuildingBlock(org.onap.so.bpmn.servicedecomposition.entities.ExecuteBuildingBlock) NetworkPolicy(org.onap.so.bpmn.servicedecomposition.bbobjects.NetworkPolicy) ResourceKey(org.onap.so.bpmn.servicedecomposition.entities.ResourceKey) ServiceProxy(org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceProxy) ConfigurationResourceCustomization(org.onap.so.db.catalog.beans.ConfigurationResourceCustomization) GeneralBuildingBlock(org.onap.so.bpmn.servicedecomposition.entities.GeneralBuildingBlock) LineOfBusiness(org.onap.so.bpmn.servicedecomposition.bbobjects.LineOfBusiness) ConfigurationResourceKeys(org.onap.so.bpmn.servicedecomposition.entities.ConfigurationResourceKeys) VfModule(org.onap.so.bpmn.servicedecomposition.bbobjects.VfModule) DelegateExecution(org.camunda.bpm.engine.delegate.DelegateExecution) UUID(java.util.UUID) Pair(org.javatuples.Pair) ServiceModelNotFoundException(org.onap.so.bpmn.servicedecomposition.tasks.exceptions.ServiceModelNotFoundException) Objects(java.util.Objects) RelatedInstance(org.onap.so.serviceinstancebeans.RelatedInstance) List(java.util.List) RelatedInstanceList(org.onap.so.serviceinstancebeans.RelatedInstanceList) CollectionResourceCustomization(org.onap.so.db.catalog.beans.CollectionResourceCustomization) ServiceSubscription(org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceSubscription) ModelType(org.onap.so.serviceinstancebeans.ModelType) Optional(java.util.Optional) Relationships(org.onap.aaiclient.client.aai.entities.Relationships) Vnfc(org.onap.so.bpmn.servicedecomposition.bbobjects.Vnfc) Customer(org.onap.so.bpmn.servicedecomposition.bbobjects.Customer) OrchestrationContext(org.onap.so.bpmn.servicedecomposition.generalobjects.OrchestrationContext) CloudRegion(org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion) CollectionResource(org.onap.so.db.catalog.beans.CollectionResource) Types(org.onap.aaiclient.client.generated.fluentbuilders.AAIFluentTypeBuilder.Types) Collection(org.onap.so.bpmn.servicedecomposition.bbobjects.Collection) CloudConfiguration(org.onap.so.serviceinstancebeans.CloudConfiguration) NoServiceInstanceFoundException(org.onap.so.bpmn.servicedecomposition.tasks.exceptions.NoServiceInstanceFoundException) HashMap(java.util.HashMap) InstanceGroup(org.onap.so.bpmn.servicedecomposition.bbobjects.InstanceGroup) RequestContext(org.onap.so.bpmn.servicedecomposition.generalobjects.RequestContext) ResourceNotFoundException(org.onap.so.bpmn.servicedecomposition.tasks.exceptions.ResourceNotFoundException) ArrayList(java.util.ArrayList) VnfResourceCustomization(org.onap.so.db.catalog.beans.VnfResourceCustomization) InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) VfModules(org.onap.so.serviceinstancebeans.VfModules) RouteTableReference(org.onap.so.bpmn.servicedecomposition.bbobjects.RouteTableReference) VolumeGroup(org.onap.so.bpmn.servicedecomposition.bbobjects.VolumeGroup) ExceptionBuilder(org.onap.so.client.exception.ExceptionBuilder) AAIResultWrapper(org.onap.aaiclient.client.aai.entities.AAIResultWrapper) VfModuleCustomization(org.onap.so.db.catalog.beans.VfModuleCustomization) OwningEntity(org.onap.so.bpmn.servicedecomposition.bbobjects.OwningEntity) CollectionNetworkResourceCustomization(org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization) Logger(org.slf4j.Logger) ServiceModel(org.onap.so.bpmn.servicedecomposition.entities.ServiceModel) AAIFluentTypeBuilder(org.onap.aaiclient.client.generated.fluentbuilders.AAIFluentTypeBuilder) Configuration(org.onap.so.bpmn.servicedecomposition.bbobjects.Configuration) Project(org.onap.so.bpmn.servicedecomposition.bbobjects.Project) AAIResourceUri(org.onap.aaiclient.client.aai.entities.uri.AAIResourceUri) NetworkCollectionResourceCustomization(org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) VnfcInstanceGroupCustomization(org.onap.so.db.catalog.beans.VnfcInstanceGroupCustomization) NetworkResourceCustomization(org.onap.so.db.catalog.beans.NetworkResourceCustomization) AAICommonObjectMapperProvider(org.onap.aaiclient.client.aai.AAICommonObjectMapperProvider) Networks(org.onap.so.serviceinstancebeans.Networks) Component(org.springframework.stereotype.Component) Platform(org.onap.so.bpmn.servicedecomposition.bbobjects.Platform) CvnfcConfigurationCustomization(org.onap.so.db.catalog.beans.CvnfcConfigurationCustomization) L3Network(org.onap.so.bpmn.servicedecomposition.bbobjects.L3Network) BuildingBlockExecution(org.onap.so.bpmn.common.BuildingBlockExecution) RequestDetails(org.onap.so.serviceinstancebeans.RequestDetails) RequestParameters(org.onap.so.serviceinstancebeans.RequestParameters) Resources(org.onap.so.serviceinstancebeans.Resources) SerializationFeature(com.fasterxml.jackson.databind.SerializationFeature) GenericVnf(org.onap.so.bpmn.servicedecomposition.bbobjects.GenericVnf) VfModules(org.onap.so.serviceinstancebeans.VfModules) Networks(org.onap.so.serviceinstancebeans.Networks) CloudRegion(org.onap.so.bpmn.servicedecomposition.bbobjects.CloudRegion) ModelInfo(org.onap.so.serviceinstancebeans.ModelInfo) Optional(java.util.Optional) ExceptionBuilder(org.onap.so.client.exception.ExceptionBuilder) AAIFluentTypeBuilder(org.onap.aaiclient.client.generated.fluentbuilders.AAIFluentTypeBuilder) ServiceInstance(org.onap.so.bpmn.servicedecomposition.bbobjects.ServiceInstance) Vnfs(org.onap.so.serviceinstancebeans.Vnfs) InfraActiveRequests(org.onap.so.db.request.beans.InfraActiveRequests) CloudConfiguration(org.onap.so.serviceinstancebeans.CloudConfiguration) ServiceModel(org.onap.so.bpmn.servicedecomposition.entities.ServiceModel) Resources(org.onap.so.serviceinstancebeans.Resources) ConfigurationResourceCustomization(org.onap.so.db.catalog.beans.ConfigurationResourceCustomization)

Aggregations

InfraActiveRequests (org.onap.so.db.request.beans.InfraActiveRequests)214 Test (org.junit.Test)119 BaseTaskTest (org.onap.so.bpmn.BaseTaskTest)29 ArgumentMatchers.anyString (org.mockito.ArgumentMatchers.anyString)26 Timestamp (java.sql.Timestamp)23 HttpEntity (org.springframework.http.HttpEntity)21 IOException (java.io.IOException)20 HashMap (java.util.HashMap)20 ApiException (org.onap.so.apihandlerinfra.exceptions.ApiException)20 ValidateException (org.onap.so.apihandlerinfra.exceptions.ValidateException)19 ServiceInstancesRequest (org.onap.so.serviceinstancebeans.ServiceInstancesRequest)19 BaseTest (org.onap.so.apihandlerinfra.BaseTest)18 ErrorLoggerInfo (org.onap.so.apihandlerinfra.logging.ErrorLoggerInfo)18 ArrayList (java.util.ArrayList)16 ValidationException (org.onap.so.exceptions.ValidationException)15 JsonProcessingException (com.fasterxml.jackson.core.JsonProcessingException)13 Transactional (javax.transaction.Transactional)13 UriComponentsBuilder (org.springframework.web.util.UriComponentsBuilder)12 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)11 ResponseBuilder (org.onap.so.apihandler.common.ResponseBuilder)11