[SDC] Onboarding 1710 rebase.
[sdc.git] / openecomp-be / api / openecomp-sdc-rest-webapp / healthcheck-rest / healthcheck-rest-services / src / main / java / org / openecomp / sdcrests / health / rest / mapping / MapHealthCheckInfoToDto.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.health.rest.mapping;
22
23 import org.openecomp.sdc.health.data.HealthInfo;
24 import org.openecomp.sdcrests.health.types.HealthCheckStatus;
25 import org.openecomp.sdcrests.health.types.HealthInfoDto;
26 import org.openecomp.sdcrests.health.types.HealthInfoDtos;
27 import org.openecomp.sdcrests.health.types.MonitoredModules;
28 import org.openecomp.sdcrests.mapping.MappingBase;
29
30 import java.util.Collection;
31 import java.util.List;
32 import java.util.stream.Collectors;
33
34 /**
35  * Created by Talio on 8/10/2016.
36  */
37 public class MapHealthCheckInfoToDto
38         extends MappingBase<Collection<HealthInfo>, HealthInfoDtos> {
39     @Override
40     public void doMapping(Collection<HealthInfo> source, HealthInfoDtos target) {
41
42         List<HealthInfoDto> healthInfos = source.stream()
43                 .map(healthInfo -> new HealthInfoDto(
44                         MonitoredModules.toValue(healthInfo.getHealthCheckComponent().toString()),
45                         HealthCheckStatus.valueOf(healthInfo.getHealthCheckStatus().toString()),
46                         healthInfo.getVersion(), healthInfo.getDescription())).collect(Collectors.toList());
47         target.setHealthInfos(healthInfos);
48     }
49 }