List of usage examples for org.apache.commons.collections4 CollectionUtils isEmpty
public static boolean isEmpty(final Collection<?> coll)
From source file:org.openecomp.sdc.translator.services.heattotosca.HeatToToscaUtil.java
static FileDataCollection getFileCollectionsByFilter(List<FileData> fileDataList, Set<FileData.Type> typeFilter, TranslationContext translationContext) { FileDataCollection fileDataCollection = new FileDataCollection(); Map<String, FileData> filteredFiles = filterFileDataListByType(fileDataList, typeFilter); Set<String> referenced = new HashSet<>(); List<String> filenames = extractFilenamesFromFileDataList(filteredFiles.values()); for (FileData fileData : filteredFiles.values()) { String fileName = fileData.getFile(); if (FileData.isHeatFile(fileData.getType())) { if (fileData.getBase() != null && fileData.getBase().equals(true)) { fileDataCollection.addBaseFiles(fileData); }/*from w w w . ja va2s. c om*/ HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil() .yamlToObject(translationContext.getFileContent(fileName), HeatOrchestrationTemplate.class); for (Resource resource : heatOrchestrationTemplate.getResources().values()) { if (filenames.contains(resource.getType())) { handleNestedFile(translationContext, fileDataCollection, filteredFiles, referenced, resource.getType()); } else if (resource.getType() .equals(HeatResourcesTypes.RESOURCE_GROUP_RESOURCE_TYPE.getHeatResource())) { Object resourceDef = resource.getProperties().get(HeatConstants.RESOURCE_DEF_PROPERTY_NAME); Object innerTypeDef = ((Map) resourceDef).get("type"); if (innerTypeDef instanceof String) { String internalResourceType = (String) innerTypeDef; if (filenames.contains(internalResourceType)) { handleNestedFile(translationContext, fileDataCollection, filteredFiles, referenced, internalResourceType); } } } } } else { fileDataCollection.addArtifactFiles(fileData); filteredFiles.remove(fileData.getFile()); } } referenced.forEach(filteredFiles::remove); if (!CollectionUtils.isEmpty(fileDataCollection.getBaseFile())) { for (FileData fileData : fileDataCollection.getBaseFile()) { filteredFiles.remove(fileData.getFile()); } } fileDataCollection.setAddOnFiles(filteredFiles.values()); return fileDataCollection; }
From source file:org.openecomp.sdc.translator.services.heattotosca.helper.VolumeTranslationHelper.java
/** * Gets file data containing volume./*from ww w . j a v a2 s . c o m*/ * * @param filesToSearch the files to search * @param resourceId the resource id * @param translateTo the translate to * @param types the types * @return the file data containing volume */ public Optional<ResourceFileDataAndIDs> getFileDataContainingVolume(List<FileData> filesToSearch, String resourceId, TranslateTo translateTo, FileData.Type... types) { if (CollectionUtils.isEmpty(filesToSearch)) { return Optional.empty(); } List<FileData> fileDatas = Objects.isNull(types) ? filesToSearch : HeatToToscaUtil.getFilteredListOfFileDataByTypes(filesToSearch, types); Optional<ResourceFileDataAndIDs> fileDataAndIDs = getResourceFileDataAndIDsForVolumeConnection(resourceId, translateTo, fileDatas); if (fileDataAndIDs.isPresent()) { return fileDataAndIDs; } return Optional.empty(); }
From source file:org.openecomp.sdc.translator.services.heattotosca.helper.VolumeTranslationHelper.java
private Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(String fileName, HeatOrchestrationTemplate heatOrchestrationTemplate, String translatedResourceId, TranslateTo translateTo, String heatResourceType) { List<Map.Entry<String, Resource>> list = heatOrchestrationTemplate.getResources().entrySet().stream() .filter(entry -> getPredicatesForTranslatedIdToResourceId(fileName, heatOrchestrationTemplate, translatedResourceId, translateTo.getContext(), heatResourceType).stream() .allMatch(p -> p.test(entry))) .collect(Collectors.toList()); if (CollectionUtils.isEmpty(list)) { return Optional.empty(); } else {//from w ww . ja v a 2 s . c o m return Optional.of(list); } }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.NovaToVolResourceConnection.java
@Override protected Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId( String translatedResourceId, HeatOrchestrationTemplate nestedHeatOrchestrationTemplate) { List<Predicate<Map.Entry<String, Resource>>> predicates = buildPredicates(nestedFileData.getFile(), nestedHeatOrchestrationTemplate, translatedResourceId); List<Map.Entry<String, Resource>> list = nestedHeatOrchestrationTemplate.getResources().entrySet().stream() .filter(entry -> predicates.stream().allMatch(p -> p.test(entry))).collect(Collectors.toList()); if (CollectionUtils.isEmpty(list)) { return Optional.empty(); } else {//from ww w . j a v a 2s. c o m return Optional.of(list); } }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationBase.java
static Optional<ResourceFileDataAndIDs> getFileDataContainingResource(List<FileData> filesToSearch, String resourceId, TranslationContext context, FileData.Type... types) { if (CollectionUtils.isEmpty(filesToSearch)) { return Optional.empty(); }/*from w w w . j a v a 2s.c om*/ List<FileData> fileDatas = Objects.isNull(types) ? filesToSearch : HeatToToscaUtil.getFilteredListOfFileDataByTypes(filesToSearch, types); for (FileData data : fileDatas) { HeatOrchestrationTemplate heatOrchestrationTemplate = new YamlUtil().yamlToObject( context.getFiles().getFileContent(data.getFile()), HeatOrchestrationTemplate.class); Map<String, Output> outputs = heatOrchestrationTemplate.getOutputs(); if (Objects.isNull(outputs)) { continue; } Output output = outputs.get(resourceId); if (Objects.nonNull(output)) { Optional<AttachedResourceId> attachedOutputId = HeatToToscaUtil.extractAttachedResourceId( data.getFile(), heatOrchestrationTemplate, context, output.getValue()); if (attachedOutputId.isPresent()) { AttachedResourceId attachedResourceId = attachedOutputId.get(); if (!attachedResourceId.isGetResource()) { logger.warn("output: '" + resourceId + "' in file '" + data.getFile() + "' is not defined as get_resource and therefor not supported."); continue; } ResourceFileDataAndIDs fileDataAndIDs = new ResourceFileDataAndIDs( (String) attachedResourceId.getEntityId(), (String) attachedResourceId.getTranslatedId(), data); return Optional.of(fileDataAndIDs); } } } return Optional.empty(); }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationBase.java
Optional<List<Map.Entry<String, Resource>>> getResourceByTranslatedResourceId(String fileName, HeatOrchestrationTemplate heatOrchestrationTemplate, String translatedResourceId, TranslateTo translateTo, String heatResourceType) { List<Map.Entry<String, Resource>> list = heatOrchestrationTemplate.getResources().entrySet().stream() .filter(entry -> getPredicatesForTranslatedIdToResourceId(fileName, heatOrchestrationTemplate, translatedResourceId, translateTo.getContext(), heatResourceType).stream() .allMatch(p -> p.test(entry))) .collect(Collectors.toList()); if (CollectionUtils.isEmpty(list)) { return Optional.empty(); } else {//from w ww . ja v a 2 s .c om return Optional.of(list); } }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNestedImpl.java
private Map<String, RequirementAssignment> getNodeTemplateRequirements(NodeTemplate template) { List<Map<String, RequirementAssignment>> templateRequirements = template.getRequirements(); Map<String, RequirementAssignment> nodeTemplateRequirementsDefinition = new HashMap<>(); if (CollectionUtils.isEmpty(templateRequirements)) { return nodeTemplateRequirementsDefinition; }//w w w . j a v a 2 s .co m for (Map<String, RequirementAssignment> requirementAssignmentMap : templateRequirements) { for (Map.Entry<String, RequirementAssignment> requirementEntry : requirementAssignmentMap.entrySet()) { nodeTemplateRequirementsDefinition.put(requirementEntry.getKey(), requirementEntry.getValue()); } } return nodeTemplateRequirementsDefinition; }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerGroupsImpl.java
@Override protected void translate(TranslateTo translateTo) { String resourceId = translateTo.getResourceId(); List<String> toscaPolicyTypes = getToscaPolicies(translateTo.getResource(), resourceId); if (!CollectionUtils.isEmpty(toscaPolicyTypes)) { addGroupToTopology(translateTo, resourceId); addPoliciesToTopology(translateTo, resourceId, toscaPolicyTypes); }//from w w w.jav a2 s . c o m }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerImpl.java
private void manageNovaServerBlockDeviceMapping(String heatFileName, ServiceTemplate serviceTemplate, NodeTemplate novaNodeTemplate, HeatOrchestrationTemplate heatOrchestrationTemplate, Resource resource, String resourceId, String novaServerTranslatedId, TranslationContext context) { List<Map<String, Object>> blockDeviceMappingList = getBlockDeviceMappingList(resource); if (CollectionUtils.isEmpty(blockDeviceMappingList)) { return;//from ww w . j ava 2 s .c o m } Object volumeIdObject; Object snapshotIdObject; String volumeResourceId; int index = 0; for (Map<String, Object> blockDeviceMapping : blockDeviceMappingList) { volumeIdObject = blockDeviceMapping.get("volume_id"); snapshotIdObject = blockDeviceMapping.get("snapshot_id"); if (volumeIdObject == null && snapshotIdObject == null) { logger.warn("Resource '" + resourceId + "' has block_device_mapping property with empty/missing volume_id and snapshot_id " + "properties. Entry number " + (index + 1) + ", this entry will be ignored in TOSCA translation."); index++; continue; } if (volumeIdObject == null) { String deviceName = (String) blockDeviceMapping.get("device_name"); String relationshipId = novaServerTranslatedId + "_" + index; Optional<AttachedResourceId> attachedSnapshotId = HeatToToscaUtil.extractAttachedResourceId( heatFileName, heatOrchestrationTemplate, context, snapshotIdObject); volumeResourceId = novaServerTranslatedId + "_" + attachedSnapshotId.get().getEntityId(); createVolumeAttachesToRelationship(serviceTemplate, deviceName, novaServerTranslatedId, volumeResourceId, relationshipId); createCinderVolumeNodeTemplate(serviceTemplate, volumeResourceId, heatFileName, blockDeviceMapping, heatOrchestrationTemplate, context); connectNovaServerToVolume(novaNodeTemplate, volumeResourceId, relationshipId); } else { Optional<AttachedResourceId> attachedVolumeId = HeatToToscaUtil.extractAttachedResourceId( heatFileName, heatOrchestrationTemplate, context, volumeIdObject); if (attachedVolumeId.get().isGetResource()) { connectNovaServerToVolume(novaNodeTemplate, (String) attachedVolumeId.get().getTranslatedId(), null); } } index++; } }
From source file:org.openecomp.sdc.translator.services.heattotosca.impl.ResourceTranslationNovaServerImpl.java
private List<Map<String, Object>> getBlockDeviceMappingList(Resource resource) { if (Objects.isNull(resource.getProperties())) { return Collections.emptyList(); }/* ww w .java 2s.co m*/ List<Map<String, Object>> blockDeviceMappingList = (List<Map<String, Object>>) resource.getProperties() .get("block_device_mapping"); List<Map<String, Object>> blockDeviceMappingV2List = (List<Map<String, Object>>) resource.getProperties() .get("block_device_mapping_v2"); if (blockDeviceMappingList != null && blockDeviceMappingV2List != null) { blockDeviceMappingList.addAll(blockDeviceMappingV2List); } else if (CollectionUtils.isEmpty(blockDeviceMappingList) && CollectionUtils.isEmpty(blockDeviceMappingV2List)) { return null; } else { blockDeviceMappingList = blockDeviceMappingList != null ? blockDeviceMappingList : blockDeviceMappingV2List; } return blockDeviceMappingList; }