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;
20 import org.onap.aai.esr.common.SystemType;
21 import org.onap.aai.esr.entity.aai.EsrSystemInfo;
22 import org.onap.aai.esr.entity.aai.EsrEmsDetail;
23 import org.onap.aai.esr.entity.rest.AlarmAddr;
24 import org.onap.aai.esr.entity.rest.EmsRegisterInfo;
25 import org.onap.aai.esr.entity.rest.FtpAddr;
27 public class EmsManagerUtil {
28 private static ExtsysUtil extsysUtil = new ExtsysUtil();
30 public EsrEmsDetail emsRegisterInfo2EsrEms(EmsRegisterInfo emsRegisterInfo) {
31 EsrEmsDetail esrEms = new EsrEmsDetail();
32 esrEms.setEmsId(extsysUtil.generateId());
33 ArrayList<EsrSystemInfo> authInfos = new ArrayList<EsrSystemInfo>();
34 authInfos = getAuthInfosFromRegisterData(emsRegisterInfo);
35 esrEms.setEsrSystemInfoList(extsysUtil.getEsrSystemInfoListFromAuthInfoList(authInfos));
39 private ArrayList<EsrSystemInfo> getAuthInfosFromRegisterData(EmsRegisterInfo emsRegisterInfo) {
40 ArrayList<EsrSystemInfo> authInfos = new ArrayList<EsrSystemInfo>();
41 EsrSystemInfo resouceAuthInfo = new EsrSystemInfo();
42 EsrSystemInfo performanceAuthInfo = new EsrSystemInfo();
43 EsrSystemInfo alarmAuthInfo = new EsrSystemInfo();
44 resouceAuthInfo = getAuthInfoFromFtpAddr(emsRegisterInfo, SystemType.EMS_RESOUCE.toString());
45 performanceAuthInfo = getAuthInfoFromFtpAddr(emsRegisterInfo, SystemType.EMS_PERFORMANCE.toString());
46 alarmAuthInfo = getAuthInfoFromAlarmAddr(emsRegisterInfo);
47 authInfos.add(resouceAuthInfo);
48 authInfos.add(performanceAuthInfo);
49 authInfos.add(alarmAuthInfo);
53 private EsrSystemInfo getAuthInfoFromFtpAddr(EmsRegisterInfo emsRegisterInfo, String systemType) {
54 EsrSystemInfo authInfo = new EsrSystemInfo();
55 FtpAddr ftpAddr = new FtpAddr();
56 if(systemType.equals(SystemType.EMS_RESOUCE.toString())) {
57 ftpAddr = emsRegisterInfo.getResourceAddr();
58 } else if(systemType.equals(SystemType.EMS_PERFORMANCE.toString())) {
59 ftpAddr = emsRegisterInfo.getPerformanceAddr();
61 authInfo.setType(ftpAddr.getFtptype());
62 authInfo.setIpAddress(ftpAddr.getIp());
63 authInfo.setPort(ftpAddr.getPort());
64 authInfo.setUserName(ftpAddr.getUser());
65 authInfo.setPassword(ftpAddr.getPassword());
66 authInfo.setRemotePath(ftpAddr.getRemotepath());
67 authInfo.setPassive(ftpAddr.getPassive());
68 authInfo.setEsrSystemInfoId(extsysUtil.generateId());
69 authInfo.setSystemType(systemType);
70 authInfo.setSystemName(emsRegisterInfo.getName());
71 authInfo.setVendor(emsRegisterInfo.getVendor());
72 authInfo.setVersion(emsRegisterInfo.getVersion());
76 private EsrSystemInfo getAuthInfoFromAlarmAddr(EmsRegisterInfo emsRegisterInfo) {
77 EsrSystemInfo authInfo = new EsrSystemInfo();
78 AlarmAddr alarmAddr = new AlarmAddr();
79 alarmAddr = emsRegisterInfo.getAlarmAddr();
80 authInfo.setEsrSystemInfoId(extsysUtil.generateId());
81 authInfo.setIpAddress(alarmAddr.getIp());
82 authInfo.setPort(alarmAddr.getPort());
83 authInfo.setUserName(alarmAddr.getUser());
84 authInfo.setPassword(alarmAddr.getPassword());
85 authInfo.setSystemType(SystemType.EMS_ALARM.toString());
86 authInfo.setSystemName(emsRegisterInfo.getName());
87 authInfo.setVendor(emsRegisterInfo.getVendor());
88 authInfo.setVersion(emsRegisterInfo.getVersion());
92 public EmsRegisterInfo EsrEms2EmsRegisterInfo(EsrEmsDetail esrEms) {
93 EmsRegisterInfo emsRegisterInfo = new EmsRegisterInfo();
94 ArrayList<EsrSystemInfo> esrSystemInfo = new ArrayList<EsrSystemInfo>();
95 EsrSystemInfo authInfo = new EsrSystemInfo();
96 esrSystemInfo = esrEms.getEsrSystemInfoList().getEsrSystemInfo();
97 emsRegisterInfo.setEmsId(esrEms.getEmsId());
99 for(int i=0; i<esrSystemInfo.size(); i++) {
100 authInfo = esrSystemInfo.get(i);
101 if(authInfo.getSystemType().equals(SystemType.EMS_RESOUCE.toString())){
102 FtpAddr resourceAddr = new FtpAddr();
103 resourceAddr = getFtpAddrFromAuthInfo(authInfo);
104 emsRegisterInfo.setResourceAddr(resourceAddr);
105 } else if(authInfo.getSystemType().equals(SystemType.EMS_PERFORMANCE.toString())) {
106 FtpAddr performanceAddr = new FtpAddr();
107 performanceAddr = getFtpAddrFromAuthInfo(authInfo);
108 emsRegisterInfo.setPerformanceAddr(performanceAddr);
109 } else if(authInfo.getSystemType().equals(SystemType.EMS_ALARM.toString())) {
110 AlarmAddr alarmAddr = new AlarmAddr();
111 alarmAddr = getAlarmAddrFromAuthInfo(authInfo);
112 emsRegisterInfo.setAlarmAddr(alarmAddr);
115 emsRegisterInfo.setName(authInfo.getSystemName());
116 emsRegisterInfo.setVendor(authInfo.getVendor());
117 emsRegisterInfo.setVersion(authInfo.getVersion());
118 return emsRegisterInfo;
121 private FtpAddr getFtpAddrFromAuthInfo(EsrSystemInfo authInfo) {
122 FtpAddr ftpAddr = new FtpAddr();
123 ftpAddr.setFtptype(authInfo.getType());
124 ftpAddr.setIp(authInfo.getIpAddress());
125 ftpAddr.setPassive(authInfo.getPassive());
126 ftpAddr.setPassword(authInfo.getPassword());
127 ftpAddr.setPort(authInfo.getPort());
128 ftpAddr.setRemotepath(authInfo.getRemotePath());
129 ftpAddr.setUser(authInfo.getUserName());
133 private AlarmAddr getAlarmAddrFromAuthInfo(EsrSystemInfo authInfo) {
134 AlarmAddr alarmAddr = new AlarmAddr();
135 alarmAddr.setIp(authInfo.getIpAddress());
136 alarmAddr.setPassword(authInfo.getPassword());
137 alarmAddr.setPort(authInfo.getPort());
138 alarmAddr.setUser(authInfo.getUserName());