📄 deliverrequest.java
字号:
package com.gctech.cmpp.msg;
import com.gctech.util.Tools;
import com.gctech.cmpp.util.Util;
/**
* <p>Title: 短信 API</p>
* <p>Description: 短信SP API</p>
* <p>Copyright: Copyright (c) 2004</p>
* <p>Company: GCTECH</p>
* @author 王红宝
* @version $Id: DeliverRequest.java,v 1.6 2004/07/16 08:32:51 wanghb Exp $
*/
public class DeliverRequest extends CmppMsg{
private byte[] msgId;
private String destId;
private String serviceId;
private byte tpPid = 0x00;
private byte tpUdhi = 0x00;
private byte format= 0x0f;
private String srcId;
private byte registeredDelivery = 0x00;
private int msgLength=0;
private String msgContent;
public DeliverRequest() {
super();
this.head.setCommandId(CommandID.CMPP_DELIVER);
}
public DeliverRequest(MsgHead msghead) {
super(msghead);
}
//构造deliver结构
public byte[] toByteArray(){
byte[] data=new byte[85+this.msgLength];
for (int i=0;i<data.length;i++){
data[i]=0x00;
}
CmppMsg.BytesCopy(head.toByteArray(),data,0,11,0);
CmppMsg.BytesCopy(this.msgId, data,0,7,12);
CmppMsg.BytesCopy(this.destId.getBytes(),data,0, this.destId.length()-1,20);
data[53] = format;
CmppMsg.BytesCopy(this.srcId.getBytes(),data,0,
this.srcId.length()-1,54);
data[76] = (byte)this.msgLength;
try {
CmppMsg.BytesCopy(this.msgContent.getBytes(),data,0,this.msgLength-1,77);
} catch(Exception e){}
return data;
}
public String toString() {
/**@todo Override this com.gctech.cmpp.msg.CmppMsg method*/
return super.toString();
}
//add by liya
public DeliverRequest(CmppMsg cmppmsg) {
super(cmppmsg);
}
protected void toByteArray(byte[] data) {
}
public void fromByteArray(byte[] data, int offset) {
super.fromByteArray(data, offset);
this.msgId = new byte[8];
//System.arraycopy(data, offset+8, msgId, 0, 8);
//this.destId = new String(data, offset+16, 21).trim();
//this.serviceId = new String(data, offset+37, 10).trim();
//this.tpPid = data[47+offset];
//this.tpUdhi = data[48+offset];
//this.format = data[49+offset];
//this.srcId = new String(data, offset+50, 21).trim();
//this.registeredDelivery = data[offset+71];
//this.msgLength = Tools.unsignedByte2int(data[offset+72]);
//this.msgContent = new String(data, offset+73, msgLength);
System.arraycopy(data, 8, msgId, 0, 8);
this.destId = new String(data, 16, 21).trim();
System.out.println("this.destId:"+this.destId);
this.serviceId = new String(data, 37, 10).trim();
System.out.println("this.serviceId:"+this.serviceId);
this.tpPid = data[47];
this.tpUdhi = data[48];
this.format = data[49];
System.out.println("this.format:"+this.format);
this.srcId = new String(data, 50, 21).trim();
this.registeredDelivery = data[71];
this.msgLength = Tools.unsignedByte2int(data[72]);
System.out.println("this.msgLength:"+this.msgLength);
try{
//根据不同的编码格式转换为相应编码的字符串
if(this.format == 8)
this.msgContent = new String(data, 73, msgLength,"UTF-16");
else if(this.format == 15)
this.msgContent = new String(data, 73, msgLength,"GBK");
else
this.msgContent = new String(data, 73, msgLength,"iso8859-1");
System.out.println("this.msgContent:"+this.msgContent);
}catch(Exception e){
e.printStackTrace();
}
}
public String getDestId() {
return destId;
}
public byte getFormat() {
return format;
}
public String getMsgContent() {
return msgContent;
}
public void setMsgContent(String msgContent) {
this.msgContent = msgContent;
}
public void setFormat(byte format) {
this.format = format;
}
public void setDestId(String destId) {
this.destId = destId;
}
public void setMsgId(byte[] msgId) {
this.msgId = msgId;
}
public byte[] getMsgId() {
return msgId;
}
public int getMsgLength() {
return msgLength;
}
public void setMsgLength(int msgLength) {
this.msgLength = msgLength;
}
public void setRegisteredDelivery(byte registeredDelivery) {
this.registeredDelivery = registeredDelivery;
}
public byte getRegisteredDelivery() {
return registeredDelivery;
}
public String getServiceId() {
return serviceId;
}
public void setServiceId(String serviceId) {
this.serviceId = serviceId;
}
public void setSrcId(String srcId) {
this.srcId = srcId;
}
public void setTpPid(byte tpPid) {
this.tpPid = tpPid;
}
public void setTpUdhi(byte tpUdhi) {
this.tpUdhi = tpUdhi;
}
public byte getTpUdhi() {
return tpUdhi;
}
public byte getTpPid() {
return tpPid;
}
public String getSrcId() {
return srcId;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -