Search in sources :

Example 6 with Property

use of org.onap.sdc.toscaparser.api.Property in project so by onap.

the class ToscaResourceInstaller method getResourceInput.

String getResourceInput(ToscaResourceStructure toscaResourceStructure, String resourceCustomizationUuid) throws ArtifactInstallerException {
    Map<String, String> resouceRequest = new HashMap<>();
    ISdcCsarHelper iSdcCsarHelper = toscaResourceStructure.getSdcCsarHelper();
    List<IEntityDetails> nodeTemplateEntityList = getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder(EntityTemplateType.NODE_TEMPLATE), TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE), false);
    List<Input> serInput = iSdcCsarHelper.getServiceInputs();
    Optional<IEntityDetails> nodeTemplateOpt = nodeTemplateEntityList.stream().filter(e -> e.getMetadata().getValue(CUSTOMIZATION_UUID).equals(resourceCustomizationUuid)).findFirst();
    if (nodeTemplateOpt.isPresent()) {
        IEntityDetails entityDetails = nodeTemplateOpt.get();
        Map<String, Property> resourceProperties = entityDetails.getProperties();
        for (String key : resourceProperties.keySet()) {
            Property property = resourceProperties.get(key);
            String value = getValue(property.getValue(), serInput);
            resouceRequest.put(key, value);
        }
    }
    try {
        ObjectMapper objectMapper = new ObjectMapper();
        String jsonStr = objectMapper.writeValueAsString(resouceRequest);
        jsonStr = jsonStr.replace("\"", "\\\"");
        logger.debug("resource request for resource customization id {}: {}", resourceCustomizationUuid, jsonStr);
        return jsonStr;
    } catch (JsonProcessingException e) {
        logger.error("resource input could not be deserialized for resource customization id (" + resourceCustomizationUuid + ")");
        throw new ArtifactInstallerException("resource input could not be parsed", e);
    }
}
Also used : NetworkInstanceGroup(org.onap.so.db.catalog.beans.NetworkInstanceGroup) ObjectOptimisticLockingFailureException(org.springframework.orm.ObjectOptimisticLockingFailureException) Property(org.onap.sdc.toscaparser.api.Property) VfModule(org.onap.so.db.catalog.beans.VfModule) PnfResourceRepository(org.onap.so.db.catalog.data.repository.PnfResourceRepository) Autowired(org.springframework.beans.factory.annotation.Autowired) WatchdogComponentDistributionStatusRepository(org.onap.so.db.request.data.repository.WatchdogComponentDistributionStatusRepository) EntityQueryBuilder(org.onap.sdc.tosca.parser.elements.queries.EntityQuery.EntityQueryBuilder) Matcher(java.util.regex.Matcher) VnfcCustomizationRepository(org.onap.so.db.catalog.data.repository.VnfcCustomizationRepository) Service(org.onap.so.db.catalog.beans.Service) VFModuleRepository(org.onap.so.db.catalog.data.repository.VFModuleRepository) Map(java.util.Map) ResourceStructure(org.onap.so.asdc.installer.ResourceStructure) EntityQuery(org.onap.sdc.tosca.parser.elements.queries.EntityQuery) VFCInstanceGroup(org.onap.so.db.catalog.beans.VFCInstanceGroup) ExternalServiceToInternalServiceRepository(org.onap.so.db.catalog.data.repository.ExternalServiceToInternalServiceRepository) ConfigurationResourceCustomization(org.onap.so.db.catalog.beans.ConfigurationResourceCustomization) VnfcInstanceGroupCustomizationRepository(org.onap.so.db.catalog.data.repository.VnfcInstanceGroupCustomizationRepository) VnfcCustomization(org.onap.so.db.catalog.beans.VnfcCustomization) VfResourceStructure(org.onap.so.asdc.installer.VfResourceStructure) HeatEnvironment(org.onap.so.db.catalog.beans.HeatEnvironment) WatchdogDistributionStatus(org.onap.so.db.request.beans.WatchdogDistributionStatus) VfModuleArtifact(org.onap.so.asdc.installer.VfModuleArtifact) SdcTypes(org.onap.sdc.tosca.parser.enums.SdcTypes) HeatFiles(org.onap.so.db.catalog.beans.HeatFiles) HeatEnvironmentRepository(org.onap.so.db.catalog.data.repository.HeatEnvironmentRepository) Set(java.util.Set) CollectionResourceInstanceGroupCustomization(org.onap.so.db.catalog.beans.CollectionResourceInstanceGroupCustomization) PnfResourceCustomization(org.onap.so.db.catalog.beans.PnfResourceCustomization) ASDCConfiguration(org.onap.so.asdc.client.ASDCConfiguration) ConfigurationResource(org.onap.so.db.catalog.beans.ConfigurationResource) NodeTemplate(org.onap.sdc.toscaparser.api.NodeTemplate) AllottedResource(org.onap.so.db.catalog.beans.AllottedResource) IArtifactInfo(org.onap.sdc.api.notification.IArtifactInfo) NetworkResourceCustomizationRepository(org.onap.so.db.catalog.data.repository.NetworkResourceCustomizationRepository) CollectionUtils(org.springframework.util.CollectionUtils) ConfigurationResourceCustomizationRepository(org.onap.so.db.catalog.data.repository.ConfigurationResourceCustomizationRepository) NetworkResource(org.onap.so.db.catalog.beans.NetworkResource) LockAcquisitionException(org.hibernate.exception.LockAcquisitionException) CollectionResource(org.onap.so.db.catalog.beans.CollectionResource) InstanceGroupRepository(org.onap.so.db.catalog.data.repository.InstanceGroupRepository) CollectionResourceRepository(org.onap.so.db.catalog.data.repository.CollectionResourceRepository) IVfModuleData(org.onap.so.asdc.installer.IVfModuleData) ASDCElementInfo(org.onap.so.asdc.installer.ASDCElementInfo) ArrayList(java.util.ArrayList) LinkedHashMap(java.util.LinkedHashMap) IResourceInstance(org.onap.sdc.api.notification.IResourceInstance) VFModuleCustomizationRepository(org.onap.so.db.catalog.data.repository.VFModuleCustomizationRepository) TopologyTemplateQueryBuilder(org.onap.sdc.tosca.parser.elements.queries.TopologyTemplateQuery.TopologyTemplateQueryBuilder) InstanceGroupType(org.onap.so.db.catalog.beans.InstanceGroupType) AllottedResourceRepository(org.onap.so.db.catalog.data.repository.AllottedResourceRepository) VnfResource(org.onap.so.db.catalog.beans.VnfResource) HeatFilesRepository(org.onap.so.db.catalog.data.repository.HeatFilesRepository) VfModuleCustomization(org.onap.so.db.catalog.beans.VfModuleCustomization) ErrorCode(org.onap.logging.filter.base.ErrorCode) CollectionNetworkResourceCustomization(org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization) ISdcCsarHelper(org.onap.sdc.tosca.parser.api.ISdcCsarHelper) InstanceGroup(org.onap.so.db.catalog.beans.InstanceGroup) CvnfcCustomization(org.onap.so.db.catalog.beans.CvnfcCustomization) ArtifactInstallerException(org.onap.so.asdc.client.exceptions.ArtifactInstallerException) HeatTemplate(org.onap.so.db.catalog.beans.HeatTemplate) RequirementAssignment(org.onap.sdc.toscaparser.api.RequirementAssignment) PnfResource(org.onap.so.db.catalog.beans.PnfResource) ToscaCsarRepository(org.onap.so.db.catalog.data.repository.ToscaCsarRepository) TopologyTemplateQuery(org.onap.sdc.tosca.parser.elements.queries.TopologyTemplateQuery) Date(java.util.Date) LoggerFactory(org.slf4j.LoggerFactory) PnfResourceStructure(org.onap.so.asdc.installer.PnfResourceStructure) IEntityDetails(org.onap.sdc.tosca.parser.api.IEntityDetails) ServiceProxyResourceCustomization(org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization) CapabilityAssignment(org.onap.sdc.toscaparser.api.CapabilityAssignment) Input(org.onap.sdc.toscaparser.api.parameters.Input) MessageEnum(org.onap.so.logger.MessageEnum) SubType(org.onap.so.db.catalog.beans.SubType) NetworkResourceRepository(org.onap.so.db.catalog.data.repository.NetworkResourceRepository) ConstraintViolationException(org.hibernate.exception.ConstraintViolationException) WatchdogServiceModVerIdLookupRepository(org.onap.so.db.request.data.repository.WatchdogServiceModVerIdLookupRepository) Timestamp(java.sql.Timestamp) Collection(java.util.Collection) YamlEditor(org.onap.so.asdc.util.YamlEditor) TempNetworkHeatTemplateRepository(org.onap.so.db.catalog.data.repository.TempNetworkHeatTemplateRepository) Collectors(java.util.stream.Collectors) List(java.util.List) ServiceInfo(org.onap.so.db.catalog.beans.ServiceInfo) Optional(java.util.Optional) LoggingAnchor(org.onap.so.logger.LoggingAnchor) Pattern(java.util.regex.Pattern) BigDecimalVersion(org.onap.so.asdc.installer.BigDecimalVersion) WatchdogDistributionStatusRepository(org.onap.so.db.request.data.repository.WatchdogDistributionStatusRepository) TempNetworkHeatTemplateLookup(org.onap.so.db.catalog.beans.TempNetworkHeatTemplateLookup) ServiceArtifact(org.onap.so.db.catalog.beans.ServiceArtifact) WatchdogServiceModVerIdLookup(org.onap.so.db.request.beans.WatchdogServiceModVerIdLookup) HashMap(java.util.HashMap) CvnfcCustomizationRepository(org.onap.so.db.catalog.data.repository.CvnfcCustomizationRepository) ServiceProxyResourceCustomizationRepository(org.onap.so.db.catalog.data.repository.ServiceProxyResourceCustomizationRepository) HeatTemplateParam(org.onap.so.db.catalog.beans.HeatTemplateParam) VnfResourceCustomization(org.onap.so.db.catalog.beans.VnfResourceCustomization) ConfigurationResourceRepository(org.onap.so.db.catalog.data.repository.ConfigurationResourceRepository) HashSet(java.util.HashSet) AllottedResourceCustomizationRepository(org.onap.so.db.catalog.data.repository.AllottedResourceCustomizationRepository) PnfCustomizationRepository(org.onap.so.db.catalog.data.repository.PnfCustomizationRepository) CollectionResourceCustomizationRepository(org.onap.so.db.catalog.data.repository.CollectionResourceCustomizationRepository) DistributionStatusEnum(org.onap.sdc.utils.DistributionStatusEnum) WatchdogComponentDistributionStatus(org.onap.so.db.request.beans.WatchdogComponentDistributionStatus) Logger(org.slf4j.Logger) EntityTemplateType(org.onap.sdc.tosca.parser.enums.EntityTemplateType) IStatusData(org.onap.sdc.api.notification.IStatusData) NetworkCollectionResourceCustomization(org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization) VnfResourceRepository(org.onap.so.db.catalog.data.repository.VnfResourceRepository) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) HeatTemplateRepository(org.onap.so.db.catalog.data.repository.HeatTemplateRepository) VfModuleStructure(org.onap.so.asdc.installer.VfModuleStructure) VnfcInstanceGroupCustomization(org.onap.so.db.catalog.beans.VnfcInstanceGroupCustomization) ToscaCsar(org.onap.so.db.catalog.beans.ToscaCsar) NetworkResourceCustomization(org.onap.so.db.catalog.beans.NetworkResourceCustomization) Metadata(org.onap.sdc.toscaparser.api.elements.Metadata) ToscaResourceStructure(org.onap.so.asdc.installer.ToscaResourceStructure) Component(org.springframework.stereotype.Component) CvnfcConfigurationCustomization(org.onap.so.db.catalog.beans.CvnfcConfigurationCustomization) ServiceRepository(org.onap.so.db.catalog.data.repository.ServiceRepository) SdcPropertyNames(org.onap.sdc.tosca.parser.impl.SdcPropertyNames) AllottedResourceCustomization(org.onap.so.db.catalog.beans.AllottedResourceCustomization) GetInput(org.onap.sdc.toscaparser.api.functions.GetInput) Collections(java.util.Collections) WorkflowResource(org.onap.so.asdc.installer.bpmn.WorkflowResource) Transactional(org.springframework.transaction.annotation.Transactional) LinkedHashMap(java.util.LinkedHashMap) HashMap(java.util.HashMap) ISdcCsarHelper(org.onap.sdc.tosca.parser.api.ISdcCsarHelper) IEntityDetails(org.onap.sdc.tosca.parser.api.IEntityDetails) Input(org.onap.sdc.toscaparser.api.parameters.Input) GetInput(org.onap.sdc.toscaparser.api.functions.GetInput) ArtifactInstallerException(org.onap.so.asdc.client.exceptions.ArtifactInstallerException) Property(org.onap.sdc.toscaparser.api.Property) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper)

Example 7 with Property

use of org.onap.sdc.toscaparser.api.Property in project so by onap.

the class ToscaResourceInstaller method createVNFCInstanceGroup.

protected VnfcInstanceGroupCustomization createVNFCInstanceGroup(IEntityDetails vfcInstanceEntity, IEntityDetails vfEntityDetails, VnfResourceCustomization vnfResourceCustomization, ToscaResourceStructure toscaResourceStructure, Set<VnfcCustomization> existingVnfcGroupSet) {
    Metadata instanceMetadata = vfcInstanceEntity.getMetadata();
    InstanceGroup existingInstanceGroup = instanceGroupRepo.findByModelUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
    VFCInstanceGroup vfcInstanceGroup;
    if (existingInstanceGroup == null) {
        // Populate InstanceGroup
        vfcInstanceGroup = new VFCInstanceGroup();
        vfcInstanceGroup.setModelName(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
        vfcInstanceGroup.setModelInvariantUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID));
        vfcInstanceGroup.setModelUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
        vfcInstanceGroup.setModelVersion(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_VERSION));
        vfcInstanceGroup.setToscaNodeType(vfcInstanceEntity.getToscaType());
        // Set Role
        vfcInstanceGroup.setRole("SUB-INTERFACE");
        // Set type
        vfcInstanceGroup.setType(InstanceGroupType.VNFC);
    } else {
        vfcInstanceGroup = (VFCInstanceGroup) existingInstanceGroup;
    }
    // Populate VNFCInstanceGroupCustomization
    VnfcInstanceGroupCustomization vfcInstanceGroupCustom = new VnfcInstanceGroupCustomization();
    vfcInstanceGroupCustom.setVnfResourceCust(vnfResourceCustomization);
    vnfResourceCustomization.getVnfcInstanceGroupCustomizations().add(vfcInstanceGroupCustom);
    vfcInstanceGroupCustom.setInstanceGroup(vfcInstanceGroup);
    vfcInstanceGroup.getVnfcInstanceGroupCustomizations().add(vfcInstanceGroupCustom);
    vfcInstanceGroupCustom.setDescription(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION));
    String getInputName = null;
    Map<String, Property> groupProperties = vfcInstanceEntity.getProperties();
    for (String key : groupProperties.keySet()) {
        Property property = groupProperties.get(key);
        String vfcName = property.getName();
        if (vfcName != null) {
            if (vfcName.equals("vfc_instance_group_function")) {
                String vfcValue = property.getValue().toString();
                int getInputIndex = vfcValue.indexOf("{get_input=");
                if (getInputIndex > -1) {
                    getInputName = vfcValue.substring(getInputIndex + 11, vfcValue.length() - 1);
                }
            }
        }
    }
    List<IEntityDetails> serviceEntityList = getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder(SdcTypes.VF).customizationUUID(vnfResourceCustomization.getModelCustomizationUUID()), TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE), false);
    if (serviceEntityList != null && !serviceEntityList.isEmpty()) {
        vfcInstanceGroupCustom.setFunction(getLeafPropertyValue(serviceEntityList.get(0), getInputName));
    }
    vfcInstanceGroupCustom.setInstanceGroup(vfcInstanceGroup);
    List<Input> inputs = vfEntityDetails.getInputs();
    createVFCInstanceGroupMembers(vfcInstanceGroupCustom, vfcInstanceEntity, inputs, existingVnfcGroupSet);
    return vfcInstanceGroupCustom;
}
Also used : IEntityDetails(org.onap.sdc.tosca.parser.api.IEntityDetails) Input(org.onap.sdc.toscaparser.api.parameters.Input) GetInput(org.onap.sdc.toscaparser.api.functions.GetInput) VFCInstanceGroup(org.onap.so.db.catalog.beans.VFCInstanceGroup) Metadata(org.onap.sdc.toscaparser.api.elements.Metadata) Property(org.onap.sdc.toscaparser.api.Property) NetworkInstanceGroup(org.onap.so.db.catalog.beans.NetworkInstanceGroup) VFCInstanceGroup(org.onap.so.db.catalog.beans.VFCInstanceGroup) InstanceGroup(org.onap.so.db.catalog.beans.InstanceGroup) VnfcInstanceGroupCustomization(org.onap.so.db.catalog.beans.VnfcInstanceGroupCustomization)

Example 8 with Property

use of org.onap.sdc.toscaparser.api.Property in project so by onap.

the class ToscaResourceInstaller method createNetworkCollection.

protected CollectionNetworkResourceCustomization createNetworkCollection(IEntityDetails cnrEntity, ToscaResourceStructure toscaResourceStructure, Service service) {
    CollectionNetworkResourceCustomization collectionNetworkResourceCustomization = new CollectionNetworkResourceCustomization();
    // **** Build Object to populate Collection_Resource table
    CollectionResource collectionResource = new CollectionResource();
    collectionResource.setModelName(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
    collectionResource.setModelInvariantUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID));
    collectionResource.setModelUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
    collectionResource.setModelVersion(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_VERSION));
    collectionResource.setDescription(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION));
    collectionResource.setToscaNodeType(cnrEntity.getToscaType());
    toscaResourceStructure.setCatalogCollectionResource(collectionResource);
    // **** Build object to populate Collection_Resource_Customization table
    NetworkCollectionResourceCustomization ncfc = new NetworkCollectionResourceCustomization();
    ncfc.setFunction(getLeafPropertyValue(cnrEntity, "cr_function"));
    ncfc.setRole(getLeafPropertyValue(cnrEntity, "cr_role"));
    ncfc.setType(getLeafPropertyValue(cnrEntity, "cr_type"));
    ncfc.setModelInstanceName(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
    ncfc.setModelCustomizationUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID));
    Set<CollectionNetworkResourceCustomization> networkResourceCustomizationSet = new HashSet<>();
    networkResourceCustomizationSet.add(collectionNetworkResourceCustomization);
    ncfc.setNetworkResourceCustomization(networkResourceCustomizationSet);
    ncfc.setCollectionResource(collectionResource);
    toscaResourceStructure.setCatalogCollectionResourceCustomization(ncfc);
    // *** Build object to populate the Instance_Group table
    List<IEntityDetails> ncEntityList = getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder("org.openecomp.groups.NetworkCollection"), TopologyTemplateQuery.newBuilder(SdcTypes.CR).customizationUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID)), false);
    List<NetworkInstanceGroup> networkInstanceGroupList = new ArrayList<>();
    List<CollectionResourceInstanceGroupCustomization> collectionResourceInstanceGroupCustomizationList = new ArrayList<>();
    for (IEntityDetails ncGroupEntity : ncEntityList) {
        NetworkInstanceGroup networkInstanceGroup = new NetworkInstanceGroup();
        Metadata instanceMetadata = ncGroupEntity.getMetadata();
        networkInstanceGroup.setModelName(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
        networkInstanceGroup.setModelInvariantUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID));
        networkInstanceGroup.setModelUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
        networkInstanceGroup.setModelVersion(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_VERSION));
        networkInstanceGroup.setToscaNodeType(ncGroupEntity.getToscaType());
        // Set
        networkInstanceGroup.setRole(SubType.SUB_INTERFACE.toString());
        // Role
        // Set
        networkInstanceGroup.setType(InstanceGroupType.L3_NETWORK);
        // type
        networkInstanceGroup.setCollectionResource(collectionResource);
        // ****Build object to populate
        // Collection_Resource_Instance_Group_Customization table
        CollectionResourceInstanceGroupCustomization crInstanceGroupCustomization = new CollectionResourceInstanceGroupCustomization();
        crInstanceGroupCustomization.setInstanceGroup(networkInstanceGroup);
        crInstanceGroupCustomization.setModelUUID(instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
        crInstanceGroupCustomization.setModelCustomizationUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID));
        // Loop through the template policy to find the subinterface_network_quantity property name. Then extract
        // the value for it.
        List<IEntityDetails> policyEntityList = getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder("org.openecomp.policies.scaling.Fixed"), TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE), true);
        if (policyEntityList != null) {
            for (IEntityDetails policyEntity : policyEntityList) {
                for (String policyNetworkCollection : policyEntity.getTargets()) {
                    if (policyNetworkCollection.equalsIgnoreCase(ncGroupEntity.getName())) {
                        Map<String, Property> propMap = policyEntity.getProperties();
                        if (propMap.get("quantity") != null) {
                            String quantity = getLeafPropertyValue(cnrEntity, getPropertyInput(propMap.get("quantity").toString()));
                            if (quantity != null) {
                                crInstanceGroupCustomization.setSubInterfaceNetworkQuantity(Integer.parseInt(quantity));
                            }
                        }
                    }
                }
            }
        }
        crInstanceGroupCustomization.setDescription(getLeafPropertyValue(cnrEntity, instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_NAME) + "_network_collection_description"));
        crInstanceGroupCustomization.setFunction(getLeafPropertyValue(cnrEntity, instanceMetadata.getValue(SdcPropertyNames.PROPERTY_NAME_NAME) + "_network_collection_function"));
        crInstanceGroupCustomization.setCollectionResourceCust(ncfc);
        collectionResourceInstanceGroupCustomizationList.add(crInstanceGroupCustomization);
        networkInstanceGroup.setCollectionInstanceGroupCustomizations(collectionResourceInstanceGroupCustomizationList);
        networkInstanceGroupList.add(networkInstanceGroup);
        toscaResourceStructure.setCatalogNetworkInstanceGroup(networkInstanceGroupList);
        List<IEntityDetails> networkEntityList = getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder(SdcTypes.VL), TopologyTemplateQuery.newBuilder(SdcTypes.CR).customizationUUID(cnrEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID)), false);
        List<CollectionNetworkResourceCustomization> collectionNetworkResourceCustomizationList = new ArrayList<>();
        // *****Build object to populate the NetworkResource table
        NetworkResource networkResource = new NetworkResource();
        for (IEntityDetails networkEntity : networkEntityList) {
            String providerNetwork = getLeafPropertyValue(networkEntity, SdcPropertyNames.PROPERTY_NAME_PROVIDERNETWORK_ISPROVIDERNETWORK);
            if ("true".equalsIgnoreCase(providerNetwork)) {
                networkResource.setNeutronNetworkType(PROVIDER);
            } else {
                networkResource.setNeutronNetworkType(BASIC);
            }
            networkResource.setModelName(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
            networkResource.setModelInvariantUUID(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_INVARIANTUUID));
            networkResource.setModelUUID(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_UUID));
            networkResource.setModelVersion(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_VERSION));
            networkResource.setAicVersionMax(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_MAXINSTANCES));
            TempNetworkHeatTemplateLookup tempNetworkLookUp = tempNetworkLookupRepo.findFirstBynetworkResourceModelName(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_NAME));
            if (tempNetworkLookUp != null) {
                HeatTemplate heatTemplate = heatRepo.findByArtifactUuid(tempNetworkLookUp.getHeatTemplateArtifactUuid());
                networkResource.setHeatTemplate(heatTemplate);
                networkResource.setAicVersionMin(tempNetworkLookUp.getAicVersionMin());
            }
            networkResource.setToscaNodeType(networkEntity.getToscaType());
            networkResource.setDescription(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_DESCRIPTION));
            networkResource.setOrchestrationMode(HEAT);
            // Collection_Network_Resource_Customization table
            for (IEntityDetails networkMemberEntity : ncGroupEntity.getMemberNodes()) {
                collectionNetworkResourceCustomization.setModelInstanceName(networkMemberEntity.getName());
            }
            collectionNetworkResourceCustomization.setModelCustomizationUUID(networkEntity.getMetadata().getValue(SdcPropertyNames.PROPERTY_NAME_CUSTOMIZATIONUUID));
            collectionNetworkResourceCustomization.setNetworkTechnology(getLeafPropertyValue(networkEntity, SdcPropertyNames.PROPERTY_NAME_NETWORKTECHNOLOGY));
            collectionNetworkResourceCustomization.setNetworkType(getLeafPropertyValue(networkEntity, SdcPropertyNames.PROPERTY_NAME_NETWORKTYPE));
            collectionNetworkResourceCustomization.setNetworkRole(getLeafPropertyValue(networkEntity, SdcPropertyNames.PROPERTY_NAME_NETWORKROLE));
            collectionNetworkResourceCustomization.setNetworkScope(getLeafPropertyValue(networkEntity, SdcPropertyNames.PROPERTY_NAME_NETWORKSCOPE));
            collectionNetworkResourceCustomization.setInstanceGroup(networkInstanceGroup);
            collectionNetworkResourceCustomization.setNetworkResource(networkResource);
            collectionNetworkResourceCustomization.setNetworkResourceCustomization(ncfc);
            collectionNetworkResourceCustomizationList.add(collectionNetworkResourceCustomization);
        }
    }
    return collectionNetworkResourceCustomization;
}
Also used : CollectionResource(org.onap.so.db.catalog.beans.CollectionResource) CollectionResourceInstanceGroupCustomization(org.onap.so.db.catalog.beans.CollectionResourceInstanceGroupCustomization) ArrayList(java.util.ArrayList) Metadata(org.onap.sdc.toscaparser.api.elements.Metadata) NetworkCollectionResourceCustomization(org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization) IEntityDetails(org.onap.sdc.tosca.parser.api.IEntityDetails) NetworkResource(org.onap.so.db.catalog.beans.NetworkResource) TempNetworkHeatTemplateLookup(org.onap.so.db.catalog.beans.TempNetworkHeatTemplateLookup) HeatTemplate(org.onap.so.db.catalog.beans.HeatTemplate) CollectionNetworkResourceCustomization(org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization) NetworkInstanceGroup(org.onap.so.db.catalog.beans.NetworkInstanceGroup) Property(org.onap.sdc.toscaparser.api.Property) HashSet(java.util.HashSet)

Example 9 with Property

use of org.onap.sdc.toscaparser.api.Property in project so by onap.

the class ToscaResourceInputTest method resouceInputGetInputDefaultIntegerTest.

@Test
public void resouceInputGetInputDefaultIntegerTest() throws ArtifactInstallerException {
    ToscaResourceInstaller toscaResourceInstaller = new ToscaResourceInstaller();
    ToscaResourceStructure toscaResourceStructure = new ToscaResourceStructure();
    toscaResourceStructure.setSdcCsarHelper(sdcCsarHelper);
    HashMap hashMap = new HashMap();
    hashMap.put("customizationUUID", "id1");
    Metadata metadata = new Metadata(hashMap);
    Map<String, Property> propertyMap = new HashMap<String, Property>();
    propertyMap.put("prop1", property);
    when(toscaResourceInstaller.getEntityDetails(toscaResourceStructure, EntityQuery.newBuilder(EntityTemplateType.NODE_TEMPLATE), TopologyTemplateQuery.newBuilder(SdcTypes.SERVICE), false)).thenReturn(Arrays.asList(entityDetails));
    when(sdcCsarHelper.getServiceInputs()).thenReturn(Arrays.asList(input));
    when(entityDetails.getMetadata()).thenReturn(metadata);
    when(entityDetails.getProperties()).thenReturn(propertyMap);
    when(property.getValue()).thenReturn(getInput);
    when(getInput.getInputName()).thenReturn("res_key");
    when(input.getName()).thenReturn("res_key");
    when(input.getDefault()).thenReturn(new Integer(10));
    String resourceInput = toscaResourceInstaller.getResourceInput(toscaResourceStructure, "id1");
    assertEquals("{}", resourceInput);
}
Also used : ToscaResourceStructure(org.onap.so.asdc.installer.ToscaResourceStructure) Metadata(org.onap.sdc.toscaparser.api.elements.Metadata) Property(org.onap.sdc.toscaparser.api.Property) Test(org.junit.Test)

Aggregations

Property (org.onap.sdc.toscaparser.api.Property)9 Metadata (org.onap.sdc.toscaparser.api.elements.Metadata)8 Test (org.junit.Test)4 ToscaResourceStructure (org.onap.so.asdc.installer.ToscaResourceStructure)4 IEntityDetails (org.onap.sdc.tosca.parser.api.IEntityDetails)3 GetInput (org.onap.sdc.toscaparser.api.functions.GetInput)3 Input (org.onap.sdc.toscaparser.api.parameters.Input)3 NetworkInstanceGroup (org.onap.so.db.catalog.beans.NetworkInstanceGroup)3 JsonProcessingException (com.fasterxml.jackson.core.JsonProcessingException)2 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)2 ArrayList (java.util.ArrayList)2 HashMap (java.util.HashMap)2 HashSet (java.util.HashSet)2 LinkedHashMap (java.util.LinkedHashMap)2 CollectionNetworkResourceCustomization (org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization)2 CollectionResource (org.onap.so.db.catalog.beans.CollectionResource)2 CollectionResourceInstanceGroupCustomization (org.onap.so.db.catalog.beans.CollectionResourceInstanceGroupCustomization)2 HeatTemplate (org.onap.so.db.catalog.beans.HeatTemplate)2 InstanceGroup (org.onap.so.db.catalog.beans.InstanceGroup)2 NetworkCollectionResourceCustomization (org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization)2