📄 abstractspmohandler2.java
字号:
package com.gctech.sms.sp;
import org.apache.log4j.Logger;
import com.gctech.sms.platform.MOHandler;
import com.gctech.sms.msg.MOInfo;
import com.gctech.util.ProtocolBuffer;
import com.gctech.util.Tools;
/**
* sp2.0 继承该handler2
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public abstract class AbstractSpMoHandler2 implements MOHandler {
public AbstractSpMoHandler2() {
}
public void handle(MOInfo objmi) {
//根据MOInfo中的数据,转换为上行消息
//消息总长度
int msglen = 117 + objmi.content.getBytes().length;
//数据
ProtocolBuffer pb = ProtocolBuffer.create(msglen);
pb.appendInt(msglen);
pb.appendInt(Constants.DELIVER);
pb.appendInt(0); //status
pb.appendInt(0); //seq note:原来为什么没有处理这俩个字段
//test
// byte[] bs = objmi.getMsgID().getBytes();
// String str = Tools.byteArrayToHexString(bs);
// System.out.println("msgId is" +str);
//---
// pb.appendString(objmi.getMsgID(),10);
pb.appendAsciiO(10);
pb.appendByte((byte)objmi.getIsReply());
pb.appendByte((byte)objmi.getMsgFormat());
pb.appendAsciiO(14);//消息接收时间忽略
pb.appendString(objmi.srcPhoneNo,32);
pb.appendByte((byte)objmi.srcTerminalType);
pb.appendString(objmi.destTermId,21);
pb.appendByte((byte)objmi.content.getBytes().length);
pb.appendString(objmi.content);
pb.appendString(objmi.linkID,20);
System.out.println("objmi.MsgLen "+ objmi.MsgLen + " objmi.getMsgID() " + objmi.getMsgID() +
" objmi.getIsReply() " + objmi.getIsReply() + " objmi.getMsgFormat() " +
objmi.getMsgFormat() + " objmi.getPhoneNo() " + objmi.getPhoneNo() +
" objmi.destTermId " + objmi.destTermId + " objmi.getContent() " +
objmi.getContent()
);
SpServer.getInstance().send(this.getSpId(), pb.toBytes());
}
protected abstract String getSpId();
static final Logger logger = Logger.getLogger(AbstractSpMoHandler2.class);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -