CollHuaWeiSwitch.java 2.85 KB
package com.sitech.ismp.coll;

import java.util.HashMap;
import java.util.Vector;

import com.sitech.ismp.coll.basic.TblATO_KPIDETAIL;
import com.sitech.util.DES3;

public class CollHuaWeiSwitch implements CollHuaWeiSwitchMBean {

	private String IP;

	private int PORT;

	private String COMMUNITY;

	private String HOST_NAME;

	public Vector<TblATO_KPIDETAIL> getSys(HashMap<String, String> params) {
		initParams(params);
		CollHuaWeiSwitchWithSNMP huawei = new CollHuaWeiSwitchWithSNMP(IP, PORT, COMMUNITY, HOST_NAME);
		Vector<TblATO_KPIDETAIL> kpiVector = huawei.getPortCMKpi();
		kpiVector.add(huawei.getDeviceState());
		kpiVector.add(huawei.getPortNum());
		kpiVector.add(huawei.getSoftVersion());
		kpiVector.add(huawei.getHostName());
		kpiVector.add(huawei.getIpAddr());
		return kpiVector;
	}

	public Vector<TblATO_KPIDETAIL> getPort(HashMap<String, String> params) {
		initParams(params);
		CollHuaWeiSwitchWithSNMP huawei = new CollHuaWeiSwitchWithSNMP(IP, PORT, COMMUNITY, HOST_NAME);
		return huawei.getPortFMKpi();
	}
	
	public Vector<TblATO_KPIDETAIL> getCpu(HashMap<String, String> params) {
		initParams(params);
		CollHuaWeiSwitchWithSNMP huawei = new CollHuaWeiSwitchWithSNMP(IP, PORT, COMMUNITY, HOST_NAME);
		return huawei.getCPUKpi();
	}
	
	public Vector<TblATO_KPIDETAIL> getMem(HashMap<String, String> params) {
		initParams(params);
		CollHuaWeiSwitchWithSNMP huawei = new CollHuaWeiSwitchWithSNMP(IP, PORT, COMMUNITY, HOST_NAME);
		Vector<TblATO_KPIDETAIL> kpiVector = huawei.getMEMKpi();
		kpiVector.add(huawei.getMemUsed());
		return kpiVector;
	}

	/**
	 * 初始化params
	 * 
	 * @param params
	 */
	private void initParams(HashMap<String, String> params) {
		this.IP = (String) params.get("IP");
		this.PORT = Integer.parseInt((String) params.get("PORT"));
		this.COMMUNITY = DES3.decrypt((String) params.get("COMMUNITY"));
		this.HOST_NAME = (String) params.get("HOST_NAME");
	}

	public static void main(String[] args) {
		HashMap<String, String> params = new HashMap<String, String>();
		params.put("IP", "172.16.9.219");
		params.put("PORT", "161");
		params.put("COMMUNITY", DES3.encrypt("public"));
		params.put("HOST_NAME", "test");
		
		
		CollHuaWeiSwitch huawei = new CollHuaWeiSwitch();
		Vector<TblATO_KPIDETAIL> vector_ds = huawei.getSys(params);
		Vector<TblATO_KPIDETAIL> vector_port = huawei.getPort(params);
		for (int i = 0; i < vector_ds.size(); i++) {
			TblATO_KPIDETAIL ato = (TblATO_KPIDETAIL) vector_ds.get(i);
			System.out.println(ato.UNIT_ID + " | " + ato.KPI_ID + " | "
					+ ato.KPI_VALUE + " | " + ato.CLL_TIME);
		}
		System.out
				.println("===================================================================");
		for (int i = 0; i < vector_port.size(); i++) {
			TblATO_KPIDETAIL ato = (TblATO_KPIDETAIL) vector_port.get(i);
			System.out.println(ato.UNIT_ID + " | " + ato.KPI_ID + " | "
					+ ato.KPI_VALUE + " | " + ato.CLL_TIME);
		}
	}
}