⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smsgwifglobal.java

📁 中国联通短信通信协议
💻 JAVA
字号:
package com.wireless.sms.gwif.smsagent.global;

/**
 * <p>Title: WVAS-PLATFORM-SMS</p>
 * <p>Description: 无线增值业务平台-----短信接口机</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: moon</p>
 * @author: tech team
 * @version 1.0
 */

//import java.util.ArrayList;
//import java.util.List;
import java.util.Vector;

import org.apache.commons.configuration.Configuration;

import com.wireless.sms.pub.db.ConnectionPool;
import com.wireless.sms.pub.entity.Monitor;
import com.wireless.sms.pub.net.MonitorClientSocket;
import com.wireless.sms.unsoap.SMSReceiver;
import com.wireless.sms.unsoap.global.Constant;
import com.wireless.sms.unsoap.global.DBPool;

public class SmsGWIFGlobal {
    private static SmsGWIFGlobal _instance = null;

	Configuration configuration = SMSReceiver.configuration;
    public String GATEWAY;
    public String GATEWAYNAME;

    public ConnectionPool POOL = null;
    public Vector MT_PORT = new Vector();
    public static Vector MT_CLIENT_IP = new Vector();
    public static String[] monitorHosta = null;
    public static String[] monitorPorta = null;

    public static String[] MOOUT_IP = null;
    public static String[] MOOUT_PORT = null;
    public static String[] OBJOUT_IP = null;
    public static String[] OBJOUT_PORT = null;

    //队列的文件存放信息
    public String MOPROBLEM;
    public String MOOVERFLOW;
    public String MTPROBLEM;
    public String[] MTOVERFLOW;
    public String STATPROBLEM;
    public String STATOVERFLOW;

    public int maxMTQueueCnt = 0;
    public int maxMOQueueCnt = 0;
    public int maxObjQueueCnt = 0;

    public static int waitTime = 0;
    public static Vector MTserverSocketVec = new Vector();
    public static Vector vManage = new Vector();   //运营商连接客户端 (服务端) 起停保存
    public static MonitorClientSocket monitorClientSocket = null; //监控包发送程序
    public static Monitor monitor = null; //监控包
    public static String switchip = null;
    public static String switchname = null;

    public static boolean SubmitLimit=false;//下发时是否第一条计费
    public static boolean InsertDBLimit=false;//入库时是否第一条计费
    public static synchronized SmsGWIFGlobal getInstance() {
        if (_instance == null) {
            _instance = new SmsGWIFGlobal();
        }
        return _instance;
    }

    public void initCommon() {
//		XMLConfig.setConfiguration(SMSReceiver.configuration);

		// 数据库参数
		initDB();

		// 监控
		monitorHosta = Constant.MONITORHOST;
		monitorPorta = Constant.MONITORPORT;

		/** 监听MT的端口* */
		MT_PORT = configuration.getVector(
				"socket.mtins.mtin[@port]");
		/** MT客户端认可主机* */
		MT_CLIENT_IP = configuration.getVector(
				"socket.mtins.mtin[@host]");

		/** 需要连接对方MO的IP和端口* */
		MOOUT_IP = Constant.ROUTERHOST;
		MOOUT_PORT = Constant.ROUTERPORTS;

		/** 需要连接对方Object的IP和端口* */
		OBJOUT_IP = configuration.getStringArray(
				"socket.objouts.objout");
		OBJOUT_PORT = configuration.getStringArray(
				"socket.objouts.objout[@port]");

		/** 监控包发送对象及监控包初始化 * */
		monitorClientSocket = new MonitorClientSocket(monitorHosta,
				monitorPorta);
		monitor = new Monitor();
		switchip = Constant.PROCESSHOST;
		switchip = switchip == null ? "" : switchip.trim();
		monitor.setIp(switchip);
		switchname = Constant.switch_name;
		switchname = switchname == null ? "" : switchname.trim();
		monitor.setProcessName(switchname);
		
		waitTime = Integer.parseInt(configuration
				.getString("WaitTime"));
		GATEWAY = Constant.GATEWAYID;
		
		//数据缓存地址
		MOPROBLEM = configuration.getString("data.mo.problem");
		MOOVERFLOW = configuration.getString("data.mo.overflow");
		MTPROBLEM = configuration.getString("data.mt.problem");
		MTOVERFLOW = configuration.getStringArray(
				"data.mt.overflow");
		STATPROBLEM = configuration.getString(
				"data.stat.problem");
		STATOVERFLOW = configuration.getString(
				"data.stat.overflow");
		maxMTQueueCnt = Integer.parseInt(configuration
				.getString("data.maxMTQueueCnt"));
		maxMOQueueCnt = Integer.parseInt(configuration
				.getString("data.maxMOQueueCnt"));
	}

    private void initDB(){
    	POOL = DBPool.POOL;
    }


    /**
	 * 读取配置文件
	 */
    public void initYD_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("cmpp.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("cmpp.GateWayID");
        GATEWAYNAME = configuration.getString("cmpp.GateName");
    }

    public void initUN_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("sgip.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("sgip.GateWayID");
        GATEWAYNAME = configuration.getString("sgip.GateWayName");
    }

    public void initCN_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("cngp.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("cngp.GateWayID");
        GATEWAYNAME = configuration.getString("cngp.GateName");
    }

    public void initCT_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("smgp.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("smgp.GateWayID");
        GATEWAYNAME = configuration.getString("smgp.GateName");
    }

    public void initSC_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("smpp.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("smpp.GateWayID");
        GATEWAYNAME = configuration.getString("smpp.GateName");
    }

    public void initTSP_System() {
        initCommon();
//        waitTime = XMLConfig.getConfiguration().getInt("tsp.WaitTime");
//        GATEWAY = XMLConfig.getConfiguration().getString("tsp.GateWayID");
        GATEWAYNAME = configuration.getString("tsp.GateName");
    }


    public static void sendMonitor(String errorCode) {
        monitor.setErrorCode(errorCode);
        monitorClientSocket.sendMonitor(monitor);
    }


    public static void sendMonitor(String errorCode, String processName) {
        monitor.setErrorCode(errorCode);
        monitor.setProcessName(processName);
        monitorClientSocket.sendMonitor(monitor);
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -