2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.onap.so.asdc.installer;
24 import java.nio.file.Paths;
25 import java.util.List;
27 import org.onap.sdc.api.notification.IArtifactInfo;
28 import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
29 import org.onap.sdc.tosca.parser.impl.SdcToscaParserFactory;
30 import org.onap.sdc.toscaparser.api.NodeTemplate;
31 import org.onap.sdc.toscaparser.api.elements.Metadata;
32 import org.onap.so.asdc.client.exceptions.ASDCDownloadException;
33 import org.onap.so.db.catalog.beans.AllottedResource;
34 import org.onap.so.db.catalog.beans.AllottedResourceCustomization;
35 import org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization;
36 import org.onap.so.db.catalog.beans.CollectionResource;
37 import org.onap.so.db.catalog.beans.CollectionResourceCustomization;
38 import org.onap.so.db.catalog.beans.ConfigurationResource;
39 import org.onap.so.db.catalog.beans.ConfigurationResourceCustomization;
40 import org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization;
41 import org.onap.so.db.catalog.beans.NetworkInstanceGroup;
42 import org.onap.so.db.catalog.beans.NetworkResource;
43 import org.onap.so.db.catalog.beans.NetworkResourceCustomization;
44 import org.onap.so.db.catalog.beans.Service;
45 import org.onap.so.db.catalog.beans.ServiceProxyResourceCustomization;
46 import org.onap.so.db.catalog.beans.TempNetworkHeatTemplateLookup;
47 import org.onap.so.db.catalog.beans.ToscaCsar;
48 import org.onap.so.db.catalog.beans.VfModule;
49 import org.onap.so.db.catalog.beans.VfModuleCustomization;
50 import org.onap.so.db.catalog.beans.VnfResourceCustomization;
51 import org.onap.so.logger.MessageEnum;
52 import org.onap.so.logger.MsoLogger;
54 public class ToscaResourceStructure {
56 Metadata serviceMetadata;
57 private Service catalogService;
58 ISdcCsarHelper sdcCsarHelper;
59 List<NodeTemplate> allottedList;
60 List<NodeTemplate> networkTypes;
61 List<NodeTemplate> vfTypes;
62 String heatTemplateUUID;
63 String volHeatTemplateUUID;
64 String volHeatEnvTemplateUUID;
65 String envHeatTemplateUUID;
67 String workloadPerformance;
68 String serviceVersion;
69 private boolean isDeployedSuccessfully=false;
72 private NetworkResourceCustomization catalogNetworkResourceCustomization;
74 private NetworkResource catalogNetworkResource;
76 private List<NetworkInstanceGroup> catalogNetworkInstanceGroup;
78 private CollectionNetworkResourceCustomization catalogCollectionNetworkResourceCustomization;
80 private CollectionResource catalogCollectionResource;
82 private CollectionResourceCustomization catalogCollectionResourceCustomization;
84 private NetworkCollectionResourceCustomization catalogNetworkCollectionResourceCustomization;
86 private ServiceProxyResourceCustomization catalogServiceProxyResourceCustomization;
88 private ConfigurationResource catalogConfigurationResource;
90 private ConfigurationResourceCustomization catalogConfigurationResourceCustomization;
92 private AllottedResourceCustomization catalogResourceCustomization;
94 private VfModule vfModule;
96 private VfModuleCustomization vfModuleCustomization;
98 //private VnfResource vnfResource;
100 private VnfResourceCustomization vnfResourceCustomization;
102 private AllottedResource allottedResource;
104 private AllottedResourceCustomization allottedResourceCustomization;
106 private TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup;
108 private IArtifactInfo toscaArtifact;
110 private ToscaCsar toscaCsar;
112 protected static final MsoLogger LOGGER = MsoLogger.getMsoLogger (MsoLogger.Catalog.ASDC, ToscaResourceStructure.class);
115 public ToscaResourceStructure(){
118 public void updateResourceStructure(IArtifactInfo artifact) throws ASDCDownloadException {
123 SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance();//Autoclosable
125 LOGGER.debug("MSO config path is: " + System.getProperty("mso.config.path"));
127 String filePath = Paths.get(System.getProperty("mso.config.path"), "ASDC", artifact.getArtifactVersion(), artifact.getArtifactName()).normalize().toString();
129 File spoolFile = new File(filePath);
131 LOGGER.debug("ASDC File path is: " + spoolFile.getAbsolutePath());
132 LOGGER.info(MessageEnum.ASDC_RECEIVE_SERVICE_NOTIF, "***PATH", "ASDC", spoolFile.getAbsolutePath());
135 sdcCsarHelper = factory.getSdcCsarHelper(spoolFile.getAbsolutePath(),false);
138 System.out.println("System out " + e.getMessage());
139 LOGGER.error(MessageEnum.ASDC_GENERAL_EXCEPTION_ARG,
140 "Exception caught during parser *****LOOK********* " + artifact.getArtifactName(), "ASDC", "processResourceNotification", MsoLogger.ErrorCode.BusinessProcesssError, "Exception in processResourceNotification", e);
142 throw new ASDCDownloadException ("Exception caught when passing the csar file to the parser ", e);
145 serviceMetadata = sdcCsarHelper.getServiceMetadata();
149 public String getHeatTemplateUUID() {
150 return heatTemplateUUID;
153 public void setHeatTemplateUUID(String heatTemplateUUID) {
154 this.heatTemplateUUID = heatTemplateUUID;
157 public List<NodeTemplate> getAllottedList() {
161 public void setAllottedList(List<NodeTemplate> allottedList) {
162 this.allottedList = allottedList;
165 public ISdcCsarHelper getSdcCsarHelper() {
166 return sdcCsarHelper;
169 public void setSdcCsarHelper(ISdcCsarHelper sdcCsarHelper) {
170 this.sdcCsarHelper = sdcCsarHelper;
173 public Metadata getServiceMetadata() {
174 return serviceMetadata;
177 public Service getCatalogService() {
178 return catalogService;
181 public void setServiceMetadata(Metadata serviceMetadata) {
182 this.serviceMetadata = serviceMetadata;
185 public void setCatalogService(Service catalogService) {
186 this.catalogService = catalogService;
189 public List<NodeTemplate> getNetworkTypes() {
193 public void setNetworkTypes(List<NodeTemplate> networkTypes) {
194 this.networkTypes = networkTypes;
197 public List<NodeTemplate> getVfTypes() {
201 public void setVfTypes(List<NodeTemplate> vfTypes) {
202 this.vfTypes = vfTypes;
205 public AllottedResourceCustomization getCatalogResourceCustomization() {
206 return catalogResourceCustomization;
209 public void setCatalogResourceCustomization(
210 AllottedResourceCustomization catalogResourceCustomization) {
211 this.catalogResourceCustomization = catalogResourceCustomization;
215 public NetworkResourceCustomization getCatalogNetworkResourceCustomization() {
216 return catalogNetworkResourceCustomization;
219 public void setCatalogNetworkResourceCustomization(NetworkResourceCustomization catalogNetworkResourceCustomization) {
220 this.catalogNetworkResourceCustomization = catalogNetworkResourceCustomization;
223 public NetworkResource getCatalogNetworkResource() {
224 return catalogNetworkResource;
227 public void setCatalogNetworkResource(NetworkResource catalogNetworkResource) {
228 this.catalogNetworkResource = catalogNetworkResource;
231 public VfModule getCatalogVfModule() {
235 public void setCatalogVfModule(VfModule vfModule) {
236 this.vfModule = vfModule;
239 public VnfResource getCatalogVnfResource() {
243 public void setCatalogVnfResource(VnfResource vnfResource) {
244 this.vnfResource = vnfResource;
249 public VnfResourceCustomization getCatalogVnfResourceCustomization() {
250 return vnfResourceCustomization;
253 public void setCatalogVnfResourceCustomization(
254 VnfResourceCustomization vnfResourceCustomization) {
255 this.vnfResourceCustomization = vnfResourceCustomization;
258 public VfModuleCustomization getCatalogVfModuleCustomization() {
259 return vfModuleCustomization;
262 public void setCatalogVfModuleCustomization(VfModuleCustomization vfModuleCustomization) {
263 this.vfModuleCustomization = vfModuleCustomization;
266 public AllottedResource getAllottedResource() {
267 return allottedResource;
270 public void setAllottedResource(AllottedResource allottedResource) {
271 this.allottedResource = allottedResource;
274 public AllottedResourceCustomization getCatalogAllottedResourceCustomization() {
275 return allottedResourceCustomization;
278 public void setCatalogAllottedResourceCustomization(
279 AllottedResourceCustomization allottedResourceCustomization) {
280 this.allottedResourceCustomization = allottedResourceCustomization;
283 public TempNetworkHeatTemplateLookup getCatalogTempNetworkHeatTemplateLookup() {
284 return tempNetworkHeatTemplateLookup;
287 public void setCatalogTempNetworkHeatTemplateLookup(
288 TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup) {
289 this.tempNetworkHeatTemplateLookup = tempNetworkHeatTemplateLookup;
292 public String getHeatFilesUUID() {
293 return heatFilesUUID;
296 public void setHeatFilesUUID(String heatFilesUUID) {
297 this.heatFilesUUID = heatFilesUUID;
300 public IArtifactInfo getToscaArtifact() {
301 return toscaArtifact;
304 public void setToscaArtifact(IArtifactInfo toscaArtifact) {
305 this.toscaArtifact = toscaArtifact;
308 public ToscaCsar getCatalogToscaCsar() {
312 public void setCatalogToscaCsar(ToscaCsar toscaCsar) {
313 this.toscaCsar = toscaCsar;
316 public String getVolHeatTemplateUUID() {
317 return volHeatTemplateUUID;
320 public void setVolHeatTemplateUUID(String volHeatTemplateUUID) {
321 this.volHeatTemplateUUID = volHeatTemplateUUID;
324 public String getEnvHeatTemplateUUID() {
325 return envHeatTemplateUUID;
328 public void setEnvHeatTemplateUUID(String envHeatTemplateUUID) {
329 this.envHeatTemplateUUID = envHeatTemplateUUID;
332 public String getVolHeatEnvTemplateUUID() {
333 return volHeatEnvTemplateUUID;
336 public void setVolHeatEnvTemplateUUID(String volHeatEnvTemplateUUID) {
337 this.volHeatEnvTemplateUUID = volHeatEnvTemplateUUID;
340 public String getServiceVersion() {
341 return serviceVersion;
344 public void setServiceVersion(String serviceVersion) {
345 this.serviceVersion = serviceVersion;
348 public String getWorkloadPerformance() {
349 return workloadPerformance;
352 public void setWorkloadPerformance(String workloadPerformance) {
353 this.workloadPerformance = workloadPerformance;
356 public VfModule getVfModule() {
360 public void setVfModule(VfModule vfModule) {
361 this.vfModule = vfModule;
364 public VfModuleCustomization getVfModuleCustomization() {
365 return vfModuleCustomization;
368 public void setVfModuleCustomization(VfModuleCustomization vfModuleCustomization) {
369 this.vfModuleCustomization = vfModuleCustomization;
373 public VnfResourceCustomization getVnfResourceCustomization() {
374 return vnfResourceCustomization;
377 public void setVnfResourceCustomization(
378 VnfResourceCustomization vnfResourceCustomization) {
379 this.vnfResourceCustomization = vnfResourceCustomization;
382 public AllottedResourceCustomization getAllottedResourceCustomization() {
383 return allottedResourceCustomization;
386 public void setAllottedResourceCustomization(
387 AllottedResourceCustomization allottedResourceCustomization) {
388 this.allottedResourceCustomization = allottedResourceCustomization;
391 public TempNetworkHeatTemplateLookup getTempNetworkHeatTemplateLookup() {
392 return tempNetworkHeatTemplateLookup;
395 public void setTempNetworkHeatTemplateLookup(
396 TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup) {
397 this.tempNetworkHeatTemplateLookup = tempNetworkHeatTemplateLookup;
400 public List<NetworkInstanceGroup> getCatalogNetworkInstanceGroup() {
401 return catalogNetworkInstanceGroup;
404 public void setCatalogNetworkInstanceGroup(List<NetworkInstanceGroup> catalogNetworkInstanceGroup) {
405 this.catalogNetworkInstanceGroup = catalogNetworkInstanceGroup;
408 public CollectionNetworkResourceCustomization getCatalogCollectionNetworkResourceCustomization() {
409 return catalogCollectionNetworkResourceCustomization;
412 public void setCatalogCollectionNetworkResourceCustomization(
413 CollectionNetworkResourceCustomization catalogCollectionNetworkResourceCustomization) {
414 this.catalogCollectionNetworkResourceCustomization = catalogCollectionNetworkResourceCustomization;
417 public CollectionResource getCatalogCollectionResource() {
418 return catalogCollectionResource;
421 public void setCatalogCollectionResource(CollectionResource catalogCollectionResource) {
422 this.catalogCollectionResource = catalogCollectionResource;
425 public CollectionResourceCustomization getCatalogCollectionResourceCustomization() {
426 return catalogCollectionResourceCustomization;
429 public void setCatalogCollectionResourceCustomization(
430 CollectionResourceCustomization catalogCollectionResourceCustomization) {
431 this.catalogCollectionResourceCustomization = catalogCollectionResourceCustomization;
434 public NetworkCollectionResourceCustomization getCatalogNetworkCollectionResourceCustomization() {
435 return catalogNetworkCollectionResourceCustomization;
438 public void setCatalogNetworkCollectionResourceCustomization(
439 NetworkCollectionResourceCustomization catalogNetworkCollectionResourceCustomization) {
440 this.catalogNetworkCollectionResourceCustomization = catalogNetworkCollectionResourceCustomization;
443 public ServiceProxyResourceCustomization getCatalogServiceProxyResourceCustomization() {
444 return catalogServiceProxyResourceCustomization;
447 public void setCatalogServiceProxyResourceCustomization(
448 ServiceProxyResourceCustomization catalogServiceProxyResourceCustomization) {
449 this.catalogServiceProxyResourceCustomization = catalogServiceProxyResourceCustomization;
452 public ConfigurationResource getCatalogConfigurationResource() {
453 return catalogConfigurationResource;
456 public void setCatalogConfigurationResource(ConfigurationResource catalogConfigurationResource) {
457 this.catalogConfigurationResource = catalogConfigurationResource;
460 public ConfigurationResourceCustomization getCatalogConfigurationResourceCustomization() {
461 return catalogConfigurationResourceCustomization;
464 public void setCatalogConfigurationResourceCustomization(
465 ConfigurationResourceCustomization catalogConfigurationResourceCustomization) {
466 this.catalogConfigurationResourceCustomization = catalogConfigurationResourceCustomization;
469 public ToscaCsar getToscaCsar() {
473 public void setToscaCsar(ToscaCsar toscaCsar) {
474 this.toscaCsar = toscaCsar;
477 public static MsoLogger getLogger() {
481 public boolean isDeployedSuccessfully() {
482 return isDeployedSuccessfully;
485 public void setSuccessfulDeployment() {
486 isDeployedSuccessfully = true;