📄 mygatewayreceiver.java
字号:
package com.gctech.sms.gateway.cnc;
import com.gctech.cngp.*;
import com.gctech.cngp.msg.*;
import com.gctech.sms.msg.MOInfo;
import java.util.Map;
import java.util.HashMap;
import com.gctech.sms.msg.MTInfo;
import org.apache.log4j.Logger;
import com.gctech.sms.msg.MTAck;
import java.io.*;
import com.gctech.sms.gateway.basic.DataList;
import com.gctech.sms.core.Gateway;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: gctech</p>
* @author 王红宝
* @version $Id: MyGatewayReceiver.java,v 1.2 2004/05/09 05:08:53 wanghb Exp $
*/
public class MyGatewayReceiver extends ReceiveDataHandler {
public MyGatewayReceiver() {
}
/**
* 处理下行回复。
* */
protected void processSubmitRes(CNGPSubmitMessageResp resp) {
//找不到消息,打印警告
int nTry = 0;
Object obj = DataList.getInstance().removeMtBySeq(resp.nSequenceID);
while ( obj == null ){
nTry++;
logger.warn("mt receive "+resp.nSequenceID+" not found for "+nTry+"!");
try {
Thread.sleep(10);
}
catch (InterruptedException ex1) {
}
if ( nTry > 10 ){
logger.warn("mt receive "+resp.nSequenceID+" not found for "+nTry+"!");
logger.warn("give up the find!");
return;
}else{
obj = DataList.getInstance().removeMtBySeq(resp.nSequenceID);
}
}
//找到消息,回复到短信平台
//MTInfo info = (MTInfo)obj;
MTAck objMTAck = new MTAck();
objMTAck.msgId = obj.toString();
objMTAck.msgId2 = resp.sMsgId;
objMTAck.status = resp.stat;
try {
CncMTReceiver.getInstance().sendAck(objMTAck);
}
catch (IOException ex) {
logger.error("下行消息回复短信平台失败!", ex);
}
}
/**
* 处理上行。
* */
protected void processDeliver(CNGPDeliverMessage deliver) {
//添加到上行列表
MOInfo moInfo = StructConverter.getInstance().CNGPDeliver2MOInfo(deliver);
//增加网关信息,服务代码
moInfo.gateway = Gateway.TELECOM.getValue();
moInfo.serviceNo = CngpApi.getInstance().getServiceNo();
DataList.getInstance().addMo(moInfo);
}
static final Logger logger = Logger.getLogger(MyGatewayReceiver.class);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -