2 * Copyright 2017 ZTE Corporation.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org.onap.aai.esr.util;
18 import java.util.ArrayList;
19 import java.util.List;
21 import org.onap.aai.esr.common.SystemType;
22 import org.onap.aai.esr.entity.aai.EsrSystemInfo;
23 import org.onap.aai.esr.entity.aai.EsrEmsDetail;
24 import org.onap.aai.esr.entity.rest.AlarmAddr;
25 import org.onap.aai.esr.entity.rest.EmsRegisterInfo;
26 import org.onap.aai.esr.entity.rest.FtpAddr;
28 public class EmsManagerUtil {
29 private static ExtsysUtil extsysUtil = new ExtsysUtil();
31 public EsrEmsDetail emsRegisterInfo2EsrEms(EmsRegisterInfo emsRegisterInfo) {
32 EsrEmsDetail esrEms = new EsrEmsDetail();
33 esrEms.setEmsId(extsysUtil.generateId());
34 List<EsrSystemInfo> authInfos = getAuthInfosFromRegisterData(emsRegisterInfo);
35 esrEms.setEsrSystemInfoList(extsysUtil.getEsrSystemInfoListFromAuthInfoList(authInfos));
39 private List<EsrSystemInfo> getAuthInfosFromRegisterData(EmsRegisterInfo emsRegisterInfo) {
40 List<EsrSystemInfo> authInfos = new ArrayList<>();
41 EsrSystemInfo resouceAuthInfo = getAuthInfoFromFtpAddr(emsRegisterInfo, SystemType.EMS_RESOUCE.toString());
42 EsrSystemInfo performanceAuthInfo = getAuthInfoFromFtpAddr(emsRegisterInfo, SystemType.EMS_PERFORMANCE.toString());
43 EsrSystemInfo alarmAuthInfo = getAuthInfoFromAlarmAddr(emsRegisterInfo);
44 authInfos.add(resouceAuthInfo);
45 authInfos.add(performanceAuthInfo);
46 authInfos.add(alarmAuthInfo);
50 private EsrSystemInfo getAuthInfoFromFtpAddr(EmsRegisterInfo emsRegisterInfo, String systemType) {
51 EsrSystemInfo authInfo = new EsrSystemInfo();
52 FtpAddr ftpAddr = new FtpAddr();
53 if(systemType.equals(SystemType.EMS_RESOUCE.toString())) {
54 ftpAddr = emsRegisterInfo.getResourceAddr();
55 } else if(systemType.equals(SystemType.EMS_PERFORMANCE.toString())) {
56 ftpAddr = emsRegisterInfo.getPerformanceAddr();
58 authInfo.setType(ftpAddr.getFtptype());
59 authInfo.setIpAddress(ftpAddr.getIp());
60 authInfo.setPort(ftpAddr.getPort());
61 authInfo.setUserName(ftpAddr.getUser());
62 authInfo.setPassword(ftpAddr.getPassword());
63 authInfo.setRemotePath(ftpAddr.getRemotepath());
64 authInfo.setPassive(ftpAddr.getPassive());
65 authInfo.setEsrSystemInfoId(extsysUtil.generateId());
66 authInfo.setSystemType(systemType);
67 authInfo.setSystemName(emsRegisterInfo.getName());
68 authInfo.setVendor(emsRegisterInfo.getVendor());
69 authInfo.setVersion(emsRegisterInfo.getVersion());
73 private EsrSystemInfo getAuthInfoFromAlarmAddr(EmsRegisterInfo emsRegisterInfo) {
74 EsrSystemInfo authInfo = new EsrSystemInfo();
75 AlarmAddr alarmAddr = emsRegisterInfo.getAlarmAddr();
76 authInfo.setEsrSystemInfoId(extsysUtil.generateId());
77 authInfo.setIpAddress(alarmAddr.getIp());
78 authInfo.setPort(alarmAddr.getPort());
79 authInfo.setUserName(alarmAddr.getUser());
80 authInfo.setPassword(alarmAddr.getPassword());
81 authInfo.setSystemType(SystemType.EMS_ALARM.toString());
82 authInfo.setSystemName(emsRegisterInfo.getName());
83 authInfo.setVendor(emsRegisterInfo.getVendor());
84 authInfo.setVersion(emsRegisterInfo.getVersion());
88 public EmsRegisterInfo EsrEms2EmsRegisterInfo(EsrEmsDetail esrEms) {
89 EmsRegisterInfo emsRegisterInfo = new EmsRegisterInfo();
90 EsrSystemInfo authInfo = new EsrSystemInfo();
91 List<EsrSystemInfo> esrSystemInfo = esrEms.getEsrSystemInfoList().getEsrSystemInfo();
92 emsRegisterInfo.setEmsId(esrEms.getEmsId());
94 for(int i=0; i<esrSystemInfo.size(); i++) {
95 authInfo = esrSystemInfo.get(i);
96 if(authInfo.getSystemType().equals(SystemType.EMS_RESOUCE.toString())){
97 FtpAddr resourceAddr = new FtpAddr();
98 resourceAddr = getFtpAddrFromAuthInfo(authInfo);
99 emsRegisterInfo.setResourceAddr(resourceAddr);
100 } else if(authInfo.getSystemType().equals(SystemType.EMS_PERFORMANCE.toString())) {
101 FtpAddr performanceAddr = new FtpAddr();
102 performanceAddr = getFtpAddrFromAuthInfo(authInfo);
103 emsRegisterInfo.setPerformanceAddr(performanceAddr);
104 } else if(authInfo.getSystemType().equals(SystemType.EMS_ALARM.toString())) {
105 AlarmAddr alarmAddr = new AlarmAddr();
106 alarmAddr = getAlarmAddrFromAuthInfo(authInfo);
107 emsRegisterInfo.setAlarmAddr(alarmAddr);
110 emsRegisterInfo.setName(authInfo.getSystemName());
111 emsRegisterInfo.setVendor(authInfo.getVendor());
112 emsRegisterInfo.setVersion(authInfo.getVersion());
113 return emsRegisterInfo;
116 private FtpAddr getFtpAddrFromAuthInfo(EsrSystemInfo authInfo) {
117 FtpAddr ftpAddr = new FtpAddr();
118 ftpAddr.setFtptype(authInfo.getType());
119 ftpAddr.setIp(authInfo.getIpAddress());
120 ftpAddr.setPassive(authInfo.getPassive());
121 ftpAddr.setPassword(authInfo.getPassword());
122 ftpAddr.setPort(authInfo.getPort());
123 ftpAddr.setRemotepath(authInfo.getRemotePath());
124 ftpAddr.setUser(authInfo.getUserName());
128 private AlarmAddr getAlarmAddrFromAuthInfo(EsrSystemInfo authInfo) {
129 AlarmAddr alarmAddr = new AlarmAddr();
130 alarmAddr.setIp(authInfo.getIpAddress());
131 alarmAddr.setPassword(authInfo.getPassword());
132 alarmAddr.setPort(authInfo.getPort());
133 alarmAddr.setUser(authInfo.getUserName());