push addional code
[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 / MapVspDescriptionDtoToVspDetails.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * SDC
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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20
21 package org.openecomp.sdcrests.vsp.rest.mapping;
22
23 import org.openecomp.sdc.vendorsoftwareproduct.dao.type.VspDetails;
24 import org.openecomp.sdc.vendorsoftwareproduct.types.LicensingData;
25 import org.openecomp.sdc.versioning.dao.types.Version;
26 import org.openecomp.sdcrests.mapping.MappingBase;
27 import org.openecomp.sdcrests.vendorsoftwareproducts.types.VspDescriptionDto;
28
29 import java.util.regex.Pattern;
30
31 public class MapVspDescriptionDtoToVspDetails extends MappingBase<VspDescriptionDto, VspDetails> {
32
33   @Override
34   public void doMapping(VspDescriptionDto source, VspDetails target) {
35     target.setName(source.getName());
36     target.setDescription(source.getDescription());
37     target.setCategory(source.getCategory());
38     target.setSubCategory(source.getSubCategory());
39     target.setIcon(source.getIcon());
40     target.setVendorName(source.getVendorName());
41     target.setVendorId(source.getVendorId());
42
43     String vlmVersion = source.getLicensingVersion();
44     if (vlmVersion != null) {
45       target.setVlmVersion(
46           Pattern.compile(Version.VERSION_REGEX).matcher(vlmVersion).find() ? Version
47               .valueOf(vlmVersion) : null);
48     }
49
50     LicensingData licensingData = source.getLicensingData();
51     if (licensingData != null) {
52       target.setLicenseAgreement(licensingData.getLicenseAgreement());
53       target.setFeatureGroups(licensingData.getFeatureGroups());
54     }
55   }
56 }