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.util.List;
26 import org.onap.sdc.api.notification.IArtifactInfo;
27 import org.onap.sdc.tosca.parser.api.ISdcCsarHelper;
28 import org.onap.sdc.tosca.parser.impl.SdcToscaParserFactory;
29 import org.onap.sdc.toscaparser.api.NodeTemplate;
30 import org.onap.sdc.toscaparser.api.elements.Metadata;
31 import org.onap.so.asdc.client.exceptions.ASDCDownloadException;
32 import org.onap.so.db.catalog.beans.AllottedResource;
33 import org.onap.so.db.catalog.beans.AllottedResourceCustomization;
34 import org.onap.so.db.catalog.beans.CollectionNetworkResourceCustomization;
35 import org.onap.so.db.catalog.beans.CollectionResource;
36 import org.onap.so.db.catalog.beans.CollectionResourceCustomization;
37 import org.onap.so.db.catalog.beans.ConfigurationResource;
38 import org.onap.so.db.catalog.beans.ConfigurationResourceCustomization;
39 import org.onap.so.db.catalog.beans.NetworkCollectionResourceCustomization;
40 import org.onap.so.db.catalog.beans.NetworkInstanceGroup;
41 import org.onap.so.db.catalog.beans.NetworkResource;
42 import org.onap.so.db.catalog.beans.NetworkResourceCustomization;
43 import org.onap.so.db.catalog.beans.Service;
44 import org.onap.so.db.catalog.beans.ServiceProxyResource;
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 boolean isVnfAlreadyInstalled = false;
69 String serviceVersion;
70 private boolean isDeployedSuccessfully=false;
73 private NetworkResourceCustomization catalogNetworkResourceCustomization;
75 private NetworkResource catalogNetworkResource;
77 private List<NetworkInstanceGroup> catalogNetworkInstanceGroup;
79 private CollectionNetworkResourceCustomization catalogCollectionNetworkResourceCustomization;
81 private CollectionResource catalogCollectionResource;
83 private CollectionResourceCustomization catalogCollectionResourceCustomization;
85 private NetworkCollectionResourceCustomization catalogNetworkCollectionResourceCustomization;
87 private ServiceProxyResource catalogServiceProxyResource;
89 private ServiceProxyResourceCustomization catalogServiceProxyResourceCustomization;
91 private ConfigurationResource catalogConfigurationResource;
93 private ConfigurationResourceCustomization catalogConfigurationResourceCustomization;
95 private AllottedResourceCustomization catalogResourceCustomization;
97 private VfModule vfModule;
99 private VfModuleCustomization vfModuleCustomization;
101 //private VnfResource vnfResource;
103 private VnfResourceCustomization vnfResourceCustomization;
105 private AllottedResource allottedResource;
107 private AllottedResourceCustomization allottedResourceCustomization;
109 private TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup;
111 private IArtifactInfo toscaArtifact;
113 private ToscaCsar toscaCsar;
115 protected static final MsoLogger LOGGER = MsoLogger.getMsoLogger (MsoLogger.Catalog.ASDC, ToscaResourceStructure.class);
118 public ToscaResourceStructure(){
121 public void updateResourceStructure(IArtifactInfo artifact) throws ASDCDownloadException {
126 SdcToscaParserFactory factory = SdcToscaParserFactory.getInstance();//Autoclosable
128 LOGGER.debug("MSO config path is: " + System.getProperty("mso.config.path"));
130 File spoolFile = new File(System.getProperty("mso.config.path") + "/ASDC/" + artifact.getArtifactName());
132 LOGGER.debug("ASDC File path is: " + spoolFile.getAbsolutePath());
133 LOGGER.info(MessageEnum.ASDC_RECEIVE_SERVICE_NOTIF, "***PATH", "ASDC", spoolFile.getAbsolutePath());
136 sdcCsarHelper = factory.getSdcCsarHelper(spoolFile.getAbsolutePath());
139 System.out.println("System out " + e.getMessage());
140 LOGGER.error(MessageEnum.ASDC_GENERAL_EXCEPTION_ARG,
141 "Exception caught during parser *****LOOK********* " + artifact.getArtifactName(), "ASDC", "processResourceNotification", MsoLogger.ErrorCode.BusinessProcesssError, "Exception in processResourceNotification", e);
143 throw new ASDCDownloadException ("Exception caught when passing the csar file to the parser ", e);
146 serviceMetadata = sdcCsarHelper.getServiceMetadata();
150 public String getHeatTemplateUUID() {
151 return heatTemplateUUID;
154 public void setHeatTemplateUUID(String heatTemplateUUID) {
155 this.heatTemplateUUID = heatTemplateUUID;
158 public List<NodeTemplate> getAllottedList() {
162 public void setAllottedList(List<NodeTemplate> allottedList) {
163 this.allottedList = allottedList;
166 public ISdcCsarHelper getSdcCsarHelper() {
167 return sdcCsarHelper;
170 public void setSdcCsarHelper(ISdcCsarHelper sdcCsarHelper) {
171 this.sdcCsarHelper = sdcCsarHelper;
174 public Metadata getServiceMetadata() {
175 return serviceMetadata;
178 public Service getCatalogService() {
179 return catalogService;
182 public void setServiceMetadata(Metadata serviceMetadata) {
183 this.serviceMetadata = serviceMetadata;
186 public void setCatalogService(Service catalogService) {
187 this.catalogService = catalogService;
190 public List<NodeTemplate> getNetworkTypes() {
194 public void setNetworkTypes(List<NodeTemplate> networkTypes) {
195 this.networkTypes = networkTypes;
198 public List<NodeTemplate> getVfTypes() {
202 public void setVfTypes(List<NodeTemplate> vfTypes) {
203 this.vfTypes = vfTypes;
206 public AllottedResourceCustomization getCatalogResourceCustomization() {
207 return catalogResourceCustomization;
210 public void setCatalogResourceCustomization(
211 AllottedResourceCustomization catalogResourceCustomization) {
212 this.catalogResourceCustomization = catalogResourceCustomization;
216 public NetworkResourceCustomization getCatalogNetworkResourceCustomization() {
217 return catalogNetworkResourceCustomization;
220 public void setCatalogNetworkResourceCustomization(NetworkResourceCustomization catalogNetworkResourceCustomization) {
221 this.catalogNetworkResourceCustomization = catalogNetworkResourceCustomization;
224 public NetworkResource getCatalogNetworkResource() {
225 return catalogNetworkResource;
228 public void setCatalogNetworkResource(NetworkResource catalogNetworkResource) {
229 this.catalogNetworkResource = catalogNetworkResource;
232 public VfModule getCatalogVfModule() {
236 public void setCatalogVfModule(VfModule vfModule) {
237 this.vfModule = vfModule;
240 public VnfResource getCatalogVnfResource() {
244 public void setCatalogVnfResource(VnfResource vnfResource) {
245 this.vnfResource = vnfResource;
250 public VnfResourceCustomization getCatalogVnfResourceCustomization() {
251 return vnfResourceCustomization;
254 public void setCatalogVnfResourceCustomization(
255 VnfResourceCustomization vnfResourceCustomization) {
256 this.vnfResourceCustomization = vnfResourceCustomization;
259 public VfModuleCustomization getCatalogVfModuleCustomization() {
260 return vfModuleCustomization;
263 public void setCatalogVfModuleCustomization(VfModuleCustomization vfModuleCustomization) {
264 this.vfModuleCustomization = vfModuleCustomization;
267 public AllottedResource getAllottedResource() {
268 return allottedResource;
271 public void setAllottedResource(AllottedResource allottedResource) {
272 this.allottedResource = allottedResource;
275 public AllottedResourceCustomization getCatalogAllottedResourceCustomization() {
276 return allottedResourceCustomization;
279 public void setCatalogAllottedResourceCustomization(
280 AllottedResourceCustomization allottedResourceCustomization) {
281 this.allottedResourceCustomization = allottedResourceCustomization;
284 public TempNetworkHeatTemplateLookup getCatalogTempNetworkHeatTemplateLookup() {
285 return tempNetworkHeatTemplateLookup;
288 public void setCatalogTempNetworkHeatTemplateLookup(
289 TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup) {
290 this.tempNetworkHeatTemplateLookup = tempNetworkHeatTemplateLookup;
293 public String getHeatFilesUUID() {
294 return heatFilesUUID;
297 public void setHeatFilesUUID(String heatFilesUUID) {
298 this.heatFilesUUID = heatFilesUUID;
301 public IArtifactInfo getToscaArtifact() {
302 return toscaArtifact;
305 public void setToscaArtifact(IArtifactInfo toscaArtifact) {
306 this.toscaArtifact = toscaArtifact;
309 public ToscaCsar getCatalogToscaCsar() {
313 public void setCatalogToscaCsar(ToscaCsar toscaCsar) {
314 this.toscaCsar = toscaCsar;
317 public boolean isVnfAlreadyInstalled() {
318 return isVnfAlreadyInstalled;
321 public void setVnfAlreadyInstalled(boolean isVnfAlreadyInstalled) {
322 this.isVnfAlreadyInstalled = isVnfAlreadyInstalled;
325 public String getVolHeatTemplateUUID() {
326 return volHeatTemplateUUID;
329 public void setVolHeatTemplateUUID(String volHeatTemplateUUID) {
330 this.volHeatTemplateUUID = volHeatTemplateUUID;
333 public String getEnvHeatTemplateUUID() {
334 return envHeatTemplateUUID;
337 public void setEnvHeatTemplateUUID(String envHeatTemplateUUID) {
338 this.envHeatTemplateUUID = envHeatTemplateUUID;
341 public String getVolHeatEnvTemplateUUID() {
342 return volHeatEnvTemplateUUID;
345 public void setVolHeatEnvTemplateUUID(String volHeatEnvTemplateUUID) {
346 this.volHeatEnvTemplateUUID = volHeatEnvTemplateUUID;
349 public String getServiceVersion() {
350 return serviceVersion;
353 public void setServiceVersion(String serviceVersion) {
354 this.serviceVersion = serviceVersion;
357 public String getWorkloadPerformance() {
358 return workloadPerformance;
361 public void setWorkloadPerformance(String workloadPerformance) {
362 this.workloadPerformance = workloadPerformance;
365 public VfModule getVfModule() {
369 public void setVfModule(VfModule vfModule) {
370 this.vfModule = vfModule;
373 public VfModuleCustomization getVfModuleCustomization() {
374 return vfModuleCustomization;
377 public void setVfModuleCustomization(VfModuleCustomization vfModuleCustomization) {
378 this.vfModuleCustomization = vfModuleCustomization;
382 public VnfResourceCustomization getVnfResourceCustomization() {
383 return vnfResourceCustomization;
386 public void setVnfResourceCustomization(
387 VnfResourceCustomization vnfResourceCustomization) {
388 this.vnfResourceCustomization = vnfResourceCustomization;
391 public AllottedResourceCustomization getAllottedResourceCustomization() {
392 return allottedResourceCustomization;
395 public void setAllottedResourceCustomization(
396 AllottedResourceCustomization allottedResourceCustomization) {
397 this.allottedResourceCustomization = allottedResourceCustomization;
400 public TempNetworkHeatTemplateLookup getTempNetworkHeatTemplateLookup() {
401 return tempNetworkHeatTemplateLookup;
404 public void setTempNetworkHeatTemplateLookup(
405 TempNetworkHeatTemplateLookup tempNetworkHeatTemplateLookup) {
406 this.tempNetworkHeatTemplateLookup = tempNetworkHeatTemplateLookup;
409 public List<NetworkInstanceGroup> getCatalogNetworkInstanceGroup() {
410 return catalogNetworkInstanceGroup;
413 public void setCatalogNetworkInstanceGroup(List<NetworkInstanceGroup> catalogNetworkInstanceGroup) {
414 this.catalogNetworkInstanceGroup = catalogNetworkInstanceGroup;
417 public CollectionNetworkResourceCustomization getCatalogCollectionNetworkResourceCustomization() {
418 return catalogCollectionNetworkResourceCustomization;
421 public void setCatalogCollectionNetworkResourceCustomization(
422 CollectionNetworkResourceCustomization catalogCollectionNetworkResourceCustomization) {
423 this.catalogCollectionNetworkResourceCustomization = catalogCollectionNetworkResourceCustomization;
426 public CollectionResource getCatalogCollectionResource() {
427 return catalogCollectionResource;
430 public void setCatalogCollectionResource(CollectionResource catalogCollectionResource) {
431 this.catalogCollectionResource = catalogCollectionResource;
434 public CollectionResourceCustomization getCatalogCollectionResourceCustomization() {
435 return catalogCollectionResourceCustomization;
438 public void setCatalogCollectionResourceCustomization(
439 CollectionResourceCustomization catalogCollectionResourceCustomization) {
440 this.catalogCollectionResourceCustomization = catalogCollectionResourceCustomization;
443 public NetworkCollectionResourceCustomization getCatalogNetworkCollectionResourceCustomization() {
444 return catalogNetworkCollectionResourceCustomization;
447 public void setCatalogNetworkCollectionResourceCustomization(
448 NetworkCollectionResourceCustomization catalogNetworkCollectionResourceCustomization) {
449 this.catalogNetworkCollectionResourceCustomization = catalogNetworkCollectionResourceCustomization;
452 public ServiceProxyResource getCatalogServiceProxyResource() {
453 return catalogServiceProxyResource;
456 public void setCatalogServiceProxyResource(ServiceProxyResource catalogServiceProxyResource) {
457 this.catalogServiceProxyResource = catalogServiceProxyResource;
460 public ServiceProxyResourceCustomization getCatalogServiceProxyResourceCustomization() {
461 return catalogServiceProxyResourceCustomization;
464 public void setCatalogServiceProxyResourceCustomization(
465 ServiceProxyResourceCustomization catalogServiceProxyResourceCustomization) {
466 this.catalogServiceProxyResourceCustomization = catalogServiceProxyResourceCustomization;
469 public ConfigurationResource getCatalogConfigurationResource() {
470 return catalogConfigurationResource;
473 public void setCatalogConfigurationResource(ConfigurationResource catalogConfigurationResource) {
474 this.catalogConfigurationResource = catalogConfigurationResource;
477 public ConfigurationResourceCustomization getCatalogConfigurationResourceCustomization() {
478 return catalogConfigurationResourceCustomization;
481 public void setCatalogConfigurationResourceCustomization(
482 ConfigurationResourceCustomization catalogConfigurationResourceCustomization) {
483 this.catalogConfigurationResourceCustomization = catalogConfigurationResourceCustomization;
486 public ToscaCsar getToscaCsar() {
490 public void setToscaCsar(ToscaCsar toscaCsar) {
491 this.toscaCsar = toscaCsar;
494 public static MsoLogger getLogger() {
498 public boolean isDeployedSuccessfully() {
499 return isDeployedSuccessfully;
502 public void setSuccessfulDeployment() {
503 isDeployedSuccessfully = true;