diff options
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java')
1 files changed, 71 insertions, 39 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java index 5c1d38b6e4..ac07daad8f 100644 --- a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/main/java/org/openecomp/sdc/translator/datatypes/heattotosca/unifiedmodel/consolidation/PortConsolidationData.java @@ -1,48 +1,80 @@ +/* + * Copyright © 2016-2018 European Support Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.openecomp.sdc.translator.datatypes.heattotosca.unifiedmodel.consolidation; import java.util.HashMap; import java.util.Map; import java.util.Set; -/** - * The type Port consolidation data. - */ +import org.openecomp.sdc.heat.datatypes.model.Resource; + public class PortConsolidationData { - //Key - Service template file name - private Map<String, FilePortConsolidationData> filePortConsolidationData; - - public PortConsolidationData() { - this.filePortConsolidationData = new HashMap<>(); - } - - /** - * Gets all files. - * - * @return the all files - */ - public Set<String> getAllServiceTemplateFileNames() { - return filePortConsolidationData.keySet(); - } - - /** - * Gets file port consolidation data. - * - * @param serviceTemplateFileName the service template file name - * @return the file port consolidation data - */ - public FilePortConsolidationData getFilePortConsolidationData(String serviceTemplateFileName) { - return filePortConsolidationData.get(serviceTemplateFileName); - } - - /** - * Sets file port consolidation data. - * - * @param serviceTemplateFileName the service template file name - * @param filePortConsolidationData the file port consolidation data - */ - public void setFilePortConsolidationData(String serviceTemplateFileName, FilePortConsolidationData - filePortConsolidationData) { - this.filePortConsolidationData.put(serviceTemplateFileName, filePortConsolidationData); - } + //Key - Service template file name + private final Map<String, FilePortConsolidationData> filePortConsolidationData; + + public PortConsolidationData() { + this.filePortConsolidationData = new HashMap<>(); + } + + public Set<String> getAllServiceTemplateFileNames() { + return filePortConsolidationData.keySet(); + } + + public FilePortConsolidationData getFilePortConsolidationData(String serviceTemplateFileName) { + return filePortConsolidationData.get(serviceTemplateFileName); + } + + public void setFilePortConsolidationData(String serviceTemplateFileName, FilePortConsolidationData + filePortConsolidationData) { + this.filePortConsolidationData.put(serviceTemplateFileName, filePortConsolidationData); + } + + /** + * Create port template consolidation data base on given parameters - if it doesn't exist yet. + * + * @return port template consolidation data + */ + PortTemplateConsolidationData addPortTemplateConsolidationData(String serviceTemplateFileName, + String portNodeTemplateId, String portResourceId, String portResourceType) { + FilePortConsolidationData consolidationData = addFilePortConsolidationData(serviceTemplateFileName); + return consolidationData + .addPortTemplateConsolidationData(portNodeTemplateId, portResourceId, portResourceType); + } + + /** + * Create subInterface template consolidation data base on given parameters - if it doesn't exist yet. + * + * @return port template consolidation data by given keys + */ + SubInterfaceTemplateConsolidationData addSubInterfaceTemplateConsolidationData( + String serviceTemplateFileName, Resource resource, String subInterfaceNodeTemplateId, + String parentPortNodeTemplateId) { + FilePortConsolidationData consolidationData = addFilePortConsolidationData(serviceTemplateFileName); + return consolidationData.addSubInterfaceTemplateConsolidationData( + resource, subInterfaceNodeTemplateId, parentPortNodeTemplateId); + } + + private FilePortConsolidationData addFilePortConsolidationData(String serviceTemplateFileName) { + FilePortConsolidationData consolidationData = getFilePortConsolidationData(serviceTemplateFileName); + if (consolidationData == null) { + consolidationData = new FilePortConsolidationData(); + setFilePortConsolidationData(serviceTemplateFileName, consolidationData); + } + return consolidationData; + } } |