CollMemcached.java 4.14 KB
package com.sitech.ismp.coll.middleware.memcached;

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

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

/**
 * Created with IntelliJ IDEA.
 * User: mooker
 * Date: 14-7-7
 * Time: 上午10:36
 * To change this template use File | Settings | File Templates.
 */
public class CollMemcached implements CollMemcachedMBean {
    
    @Override
    public Vector<TblATO_KPIDETAIL> getConfig(HashMap<String, String> params) {
        CollMemcachedWithCMD coll = new CollMemcachedWithCMD();
        return coll.getConfig(params);
    }

    @Override
    public Vector<TblATO_KPIDETAIL> getStatus(HashMap<String, String> params) {
        CollMemcachedWithCMD coll = new CollMemcachedWithCMD();
        return coll.getStatus(params);
    }

    @Override
    public Vector<TblATO_KPIDETAIL> getSlabs(HashMap<String, String> params) {
        CollMemcachedWithCMD coll = new CollMemcachedWithCMD();
        return coll.getSlabs(params);
    }

    @Override
    public Vector<TblATO_KPIDETAIL> getItems(HashMap<String, String> params) {
        CollMemcachedWithCMD coll = new CollMemcachedWithCMD();
        return coll.getItems(params);
    }

    public static void main(String[] args) {
//        System.out.println("***************memcached Collect Test Begin*********************");
        String ipAddr = "172.21.0.203";
        String httpPort = "11211";
        String deviceName = "csdppdmemcached";
        String methodStr = "0";
//        String ipAddr = read("IP_ADDR(remote host ip):\n");
//        String httpPort = read("HTTP_PORT(memcached service port 11211):\n");
//        String deviceName = read("DEVICENAME(memcached name):\n");
//        String methodStr = read("METHOD(0:getAll, 1:getConfig, 2:getStatus, 3:getSlabs, 4:getItems):\n");

        System.out.println("IP_ADDR=" + ipAddr + ", HTTP_PORT=" + httpPort
                + ", DEVICENAME=" + deviceName + ", METHOD=" + methodStr);

        HashMap<String, String> params = new HashMap<String, String>();
        params.put("IP_ADDR", ipAddr);
        params.put("HTTP_PORT", httpPort);
        params.put("DEVICENAME", deviceName);

        int method = Integer.parseInt(methodStr);
        Vector<TblATO_KPIDETAIL> result = new Vector<TblATO_KPIDETAIL>();

        CollMemcached collector = new CollMemcached();

        switch (method) {
            case 0:
                result.addAll(collector.getConfig(params));
                result.addAll(collector.getStatus(params));
                result.addAll(collector.getSlabs(params));
                result.addAll(collector.getItems(params));
                break;
            case 1:
                result.addAll(collector.getConfig(params));
                break;
            case 2:
                result.addAll(collector.getStatus(params));
                break;
            case 3:
                result.addAll(collector.getSlabs(params));
                break;
            case 4:
                result.addAll(collector.getItems(params));
                break;
            default:
                break;
        }

        System.out.println("***************memcached Collect Test End*********************");
        for (int i = 0; i < result.size(); i++) {
            TblATO_KPIDETAIL record = (TblATO_KPIDETAIL) result.get(i);
            System.out.println(record.UNIT_ID + "\t" + record.KPI_ID + "\t" + record.KPI_VALUE);
//            String insSql = "INSERT INTO TB_ATO_KPIDETAIL (KPI_ID, UNIT_ID, CLL_TIME, KPI_VALUE, EXT_INFO, DB_TIME, EXT_UNIT_ID, `INTERVAL`) " +
//                    "VALUES ('#KPI_ID#', '#UNIT_ID#', now(), '#KPI_VALUE#', 'null', now(), '10-12-16:csdppdmemcached', #INTERVAL#);";
//            insSql = insSql.replace("#KPI_ID#", record.KPI_ID);
//            insSql = insSql.replace("#UNIT_ID#", record.UNIT_ID);
//            insSql = insSql.replace("#KPI_VALUE#", record.KPI_VALUE);
//            insSql = insSql.replace("#INTERVAL#", record.INTERVAL);
//            System.out.println(insSql);
        }
    }

    private static String read(String prompt) {
        Scanner scanner = new Scanner(System.in);
        System.out.print(prompt);
        return scanner.nextLine();
    }
}