summaryrefslogtreecommitdiffstats
path: root/catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java')
-rw-r--r--catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java88
1 files changed, 40 insertions, 48 deletions
diff --git a/catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java b/catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java
index 1d49394b17..05c36b3ae0 100644
--- a/catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java
+++ b/catalog-be/src/main/java/org/openecomp/sdc/be/components/csar/CsarInfo.java
@@ -21,9 +21,17 @@
*/
package org.openecomp.sdc.be.components.csar;
+import com.google.common.annotations.VisibleForTesting;
import fj.data.Either;
+import lombok.Getter;
+import lombok.Setter;
import org.apache.commons.collections.CollectionUtils;
+import org.apache.commons.collections.MapUtils;
import org.openecomp.sdc.be.components.impl.exceptions.ByActionStatusComponentException;
+import org.openecomp.sdc.be.config.NonManoArtifactType;
+import org.openecomp.sdc.be.config.NonManoConfiguration;
+import org.openecomp.sdc.be.config.NonManoConfigurationManager;
+import org.openecomp.sdc.be.config.NonManoFolderType;
import org.openecomp.sdc.be.dao.api.ActionStatus;
import org.openecomp.sdc.be.model.NodeTypeInfo;
import org.openecomp.sdc.be.model.Resource;
@@ -42,17 +50,31 @@ import static org.openecomp.sdc.be.components.impl.ImportUtils.*;
public class CsarInfo {
private static final Logger log = Logger.getLogger(CsarInfo.class);
+ @Getter
+ @Setter
private String vfResourceName;
+ @Getter
+ @Setter
private User modifier;
+ @Getter
+ @Setter
private String csarUUID;
+ @Getter
+ @Setter
private Map<String, byte[]> csar;
+ @Getter
private String mainTemplateName;
+ @Getter
private String mainTemplateContent;
+ @Getter
private Map<String, Object> mappedToscaMainTemplate;
+ @Getter
private Map<String, String> createdNodesToscaResourceNames;
private Queue<String> cvfcToCreateQueue;
private boolean isUpdate;
+ @Getter
private Map<String, Resource> createdNodes;
+ private final NonManoConfiguration nonManoConfiguration;
@SuppressWarnings("unchecked")
public CsarInfo(User modifier, String csarUUID, Map<String, byte[]> csar, String vfResourceName, String mainTemplateName, String mainTemplateContent, boolean isUpdate){
@@ -67,46 +89,12 @@ public class CsarInfo {
this.cvfcToCreateQueue = new PriorityQueue<>();
this.isUpdate = isUpdate;
this.createdNodes = new HashMap<>();
+ this.nonManoConfiguration = NonManoConfigurationManager.getInstance().getNonManoConfiguration();
}
- public String getVfResourceName() {
- return vfResourceName;
- }
-
- public void setVfResourceName(String vfResourceName) {
- this.vfResourceName = vfResourceName;
- }
-
- public User getModifier() {
- return modifier;
- }
-
- public void setModifier(User modifier) {
- this.modifier = modifier;
- }
-
- public String getCsarUUID() {
- return csarUUID;
- }
-
- public void setCsarUUID(String csarUUID) {
- this.csarUUID = csarUUID;
- }
-
- public Map<String, byte[]> getCsar() {
- return csar;
- }
-
- public void setCsar(Map<String, byte[]> csar) {
- this.csar = csar;
- }
-
- public Map<String, Object> getMappedToscaMainTemplate() {
- return mappedToscaMainTemplate;
- }
-
- public Map<String, String> getCreatedNodesToscaResourceNames() {
- return createdNodesToscaResourceNames;
+ @VisibleForTesting
+ CsarInfo(final NonManoConfiguration nonManoConfiguration) {
+ this.nonManoConfiguration = nonManoConfiguration;
}
public void addNodeToQueue(String nodeName) {
@@ -132,10 +120,6 @@ public class CsarInfo {
this.isUpdate = isUpdate;
}
- public Map<String, Resource> getCreatedNodes() {
- return createdNodes;
- }
-
public Map<String,NodeTypeInfo> extractNodeTypesInfo() {
Map<String, NodeTypeInfo> nodeTypesInfo = new HashMap<>();
List<Map.Entry<String, byte[]>> globalSubstitutes = new ArrayList<>();
@@ -236,11 +220,19 @@ public class CsarInfo {
}
}
- public String getMainTemplateName() {
- return mainTemplateName;
- }
-
- public String getMainTemplateContent() {
- return mainTemplateContent;
+ /**
+ * Gets the software information yaml path from the csar file map.
+ *
+ * @return the software information yaml path if it is present in the csar file map
+ */
+ public Optional<String> getSoftwareInformationPath() {
+ if (MapUtils.isEmpty(csar)) {
+ return Optional.empty();
+ }
+ final NonManoFolderType softwareInformationType =
+ nonManoConfiguration.getNonManoType(NonManoArtifactType.ONAP_SW_INFORMATION);
+ return csar.keySet().stream()
+ .filter(filePath -> filePath.startsWith(softwareInformationType.getPath()))
+ .findFirst();
}
}