Specify a model while creating a VSP
[sdc.git] / openecomp-be / api / openecomp-sdc-rest-webapp / vendor-software-products-rest / vendor-software-products-rest-services / src / main / java / org / openecomp / sdcrests / vsp / rest / mapping / MapVspDetailsToDto.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * Modifications Copyright (C) 2021 Nordix Foundation.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21 package org.openecomp.sdcrests.vsp.rest.mapping;
22
23 import org.apache.commons.lang3.StringUtils;
24 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.LicenseType;
25 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
26 import org.openecomp.sdc.vendorsoftwareproduct.types.LicensingData;
27 import org.openecomp.sdcrests.mapping.MappingBase;
28 import org.openecomp.sdcrests.vendorsoftwareproducts.types.VspDetailsDto;
29
30 public class MapVspDetailsToDto extends MappingBase<VspDetails, VspDetailsDto> {
31
32     @Override
33     public void doMapping(VspDetails source, VspDetailsDto target) {
34         target.setId(source.getId());
35         target.setVersion(source.getVersion() == null ? null : source.getVersion().getId());
36         target.setName(source.getName());
37         target.setDescription(source.getDescription());
38         target.setIcon(source.getIcon());
39         target.setCategory(source.getCategory());
40         target.setSubCategory(source.getSubCategory());
41         target.setVendorId(source.getVendorId());
42         target.setVendorName(source.getVendorName());
43         target.setLicensingVersion(source.getVlmVersion() == null ? null : source.getVlmVersion().getId());
44         if (StringUtils.isNotBlank(source.getLicenseType())) {
45             target.setLicenseType(LicenseType.valueOf(source.getLicenseType()));
46         } else if (StringUtils.isNotBlank(target.getLicensingVersion())) {
47             target.setLicenseType(LicenseType.INTERNAL);
48         }
49         if (source.getLicenseAgreement() != null || source.getFeatureGroups() != null) {
50             LicensingData licensingData = new LicensingData();
51             licensingData.setLicenseAgreement(source.getLicenseAgreement());
52             licensingData.setFeatureGroups(source.getFeatureGroups());
53             target.setLicensingData(licensingData);
54         }
55         target.setOnboardingMethod(source.getOnboardingMethod());
56         target.setSelectedModelList(source.getModelIdList());
57     }
58 }