亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? smpppacket.java

?? Java寫的smpp實現
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/* * Java SMPP API * Copyright (C) 1998 - 2001 by Oran Kelly *  * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. *  * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Lesser General Public License for more details. *  * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA *  * A copy of the LGPL can be viewed at http://www.gnu.org/copyleft/lesser.html * Java SMPP API author: orank@users.sf.net * Java SMPP API Homepage: http://smppapi.sourceforge.net/ */package ie.omk.smpp.message;import java.io.*;import java.net.SocketException;import ie.omk.smpp.SMPPException;import ie.omk.smpp.InvalidMessageIDException;import ie.omk.smpp.StringTooLongException;import ie.omk.smpp.util.AlphabetEncoding;import ie.omk.smpp.util.AlphabetFactory;import ie.omk.smpp.util.BinaryEncoding;import ie.omk.smpp.util.GSMConstants;import ie.omk.smpp.util.MessageEncoding;import ie.omk.smpp.util.SMPPDate;import ie.omk.smpp.util.SMPPIO;import ie.omk.debug.Debug;/** This is the abstract class that all SMPP messages are inherited from. *  @author Oran Kelly *  @version 1.0 */public abstract class SMPPPacket{    /** Command Id: Negative Acknowledgement */    public static final int ESME_NACK 		= 0x80000000;    /** Command Id: Bind Receiver */    public static final int ESME_BNDRCV 	= 0x00000001;    /** Command Id: Bind Receiver Response */    public static final int ESME_BNDRCV_RESP 	= 0x80000001;    /** Command Id: Bind transmitter */    public static final int ESME_BNDTRN 	= 0x00000002;    /** Command Id: Bind transmitter response */    public static final int ESME_BNDTRN_RESP 	= 0x80000002;    /** Command Id: Unbind */    public static final int ESME_UBD		= 0x00000006;    /** Command Id: Unbind response */    public static final int ESME_UBD_RESP	= 0x80000006;    /** Command Id: Submit message */    public static final int ESME_SUB_SM		= 0x00000004;    /** Command Id: Submit message response */    public static final int ESME_SUB_SM_RESP	= 0x80000004;    /** Command Id: Submit multiple messages */    public static final int ESME_SUB_MULTI	= 0x00000021;    /** Command Id: Submit multi response */    public static final int ESME_SUB_MULTI_RESP	= 0x80000021;    /** Command Id: Deliver Short message */    public static final int SMSC_DELIVER_SM	= 0x00000005;    /** Command Id: Deliver message response */    public static final int SMSC_DELIVER_SM_RESP= 0x80000005;    /** Command Id: Query message */    public static final int ESME_QUERY_SM	= 0x00000003;    /** Command Id: Query message response */    public static final int ESME_QUERY_SM_RESP	= 0x80000003;    /** Command Id: Query last messages */    public static final int ESME_QUERY_LAST_MSGS= 0x00000023;    /** Command Id: Query last messages response */    public static final int ESME_QUERY_LAST_MSGS_RESP = 0x80000023;    /** Command Id: Query message details */    public static final int ESME_QUERY_MSG_DETAILS = 0x00000024;    /** Command Id: Query message details response */    public static final int ESME_QUERY_MSG_DETAILS_RESP	= 0x80000024;    /** Command Id: Cancel message */    public static final int ESME_CANCEL_SM	= 0x00000008;    /** Command Id: Cancel message response */    public static final int ESME_CANCEL_SM_RESP	= 0x80000008;    /** Command Id: Replace message */    public static final int ESME_REPLACE_SM	= 0x00000007;    /** Command Id: replace message response */    public static final int ESME_REPLACE_SM_RESP= 0x80000007;    /** Command Id: Enquire Link */    public static final int ESME_QRYLINK	= 0x00000015;    /** Command Id: Enquire link respinse */    public static final int ESME_QRYLINK_RESP	= 0x80000015;    /** Command Id: Parameter retrieve */    public static final int ESME_PARAM_RETRIEVE	= 0x00000022;    /** Command Id: Paramater retrieve response */    public static final int ESME_PARAM_RETRIEVE_RESP = 0x80000022;    /** Message state at Smsc: En route */    public static final int SM_STATE_EN_ROUTE		= 1;    /** Message state at Smsc: Delivered (final) */    public static final int SM_STATE_DELIVERED		= 2;    /** Message state at Smsc: Expired (final) */    public static final int SM_STATE_EXPIRED		= 3;    /** Message state at Smsc: Deleted (final) */    public static final int SM_STATE_DELETED		= 4;    /** Message state at Smsc: Undeliverable (final) */    public static final int SM_STATE_UNDELIVERABLE	= 5;    /** Message state at Smsc: Accepted */    public static final int SM_STATE_ACCEPTED		= 6;    /** Message state at Smsc: Invalid message (final) */    public static final int SM_STATE_INVALID		= 7;    /** Esm class: Mobile Terminated; Normal delivery, no address swapping */    public static final int SMC_MT			= 1;    /** Esm class: Mobile originated */    public static final int SMC_MO			= 2;    /** Esm class: Mobile Originated / Terminated */    public static final int SMC_MOMT			= 3;    /** Esm class: Delivery receipt, no address swapping */    public static final int SMC_RECEIPT						= 4;    /** Esm class: Predefined message */    public static final int SMC_DEFMSG			= 8;    /** Esm class: Normal delivery , address swapping on */    public static final int SMC_LOOPBACK_RECEIPT	= 16;    /** Esm class: Delivery receipt, address swapping on */    public static final int SMC_RECEIPT_SWAP		= 20;    /** Esm class: Store message, do not send to Kernel */    public static final int SMC_STORE			= 32;    /** Esm class: Store message and send to kernel */    public static final int SMC_STORE_FORWARD		= 36;    /** Esm class: Distribution submission */    public static final int SMC_DLIST			= 64;    /** Esm class: Multiple recipient submission */    public static final int SMC_MULTI			= 128;    /** Esm class: Distribution list and multiple recipient submission */    public static final int SMC_CAS_DL			= 256;    /** Esm class: Escalated message FFU */    public static final int SMC_ESCALATED		= 512;    /** Esm class: Submit with replace message */    public static final int SMC_SUBMIT_REPLACE		= 1024;    /** Esm class: Memory capacity error */    public static final int SMC_MCE			= 2048;    /** Esme error code: No error */    public static final int ESME_ROK			= 0;    /** Command ID. */    protected int commandId = 0;    /** Command status. */    protected int commandStatus = 0;    /** Packet sequence number. */    protected int sequenceNum = 0;    /* Almost all packets use one or more of these.     * These attributes were all stuck in here for easier maintenance...     * instead of altering 5 different packets, just alter it here!!     * Special cases like SubmitMulti and QueryMsgDetailsResp maintain     * their own destination tables.  Any packets that wish to use     * these attribs should override the appropriate methods defined     * below to be public and just call super.method()     */    /** Source address */    protected SmeAddress	source = null;        /** Destination address */    protected SmeAddress	destination = null;        /** The short message data */    protected byte[]		message = null;        /** Service type for this msg */    protected String		serviceType = null;        /** Scheduled delivery time */    protected SMPPDate		deliveryTime = null;        /** Scheduled expiry time */    protected SMPPDate		expiryTime = null;        /** Date of reaching final state */    protected SMPPDate		finalDate = null;        /** Smsc allocated message Id */    protected String		messageId = null;        /** Status of message */    protected int		messageStatus = 0;        /** Error associated with message */    protected int		errorCode = 0;        /** Message priority. In v3.3, this is boolean, either '1' or '0' */    protected int		priority = 0;    /** Registered delivery. */    protected boolean		registered = false;    /** Replace if present. */    protected boolean		replaceIfPresent = false;    /** ESM class. */    protected int		esmClass = 0;    /** GSM protocol ID. */    protected int		protocolID = 0;    /** GSM data coding (see GSM 03.38). */    public int			dataCoding = 0;    /** Default message number. */    public int			defaultMsg = 0;    /** Alphabet to use to encode this message's text. */    private AlphabetEncoding	alphabet = AlphabetFactory.getDefaultAlphabet();    /** Create a new SMPPPacket with specified Id.      * @param id Command Id value      */    protected SMPPPacket(int id)    {	this(id, 0);    }    /** Create a new SMPPPacket with specified Id and sequence number.      * @param id Command Id value      * @param seqNum Command Sequence number      */    protected SMPPPacket(int id, int seqNum)    {	this.commandId = id;	this.sequenceNum = seqNum;    }    /** Read an SMPPPacket header from an InputStream      * @param in InputStream to read from      * @exception IOException if there's an error reading from the input      * stream.      */    protected SMPPPacket(InputStream in)	throws java.io.IOException, ie.omk.smpp.SMPPException    {	int cmdLen = SMPPIO.readInt(in, 4);	this.commandId = SMPPIO.readInt(in, 4);	this.commandStatus = SMPPIO.readInt(in, 4);	this.sequenceNum = SMPPIO.readInt(in, 4);    }    /** Return the number of bytes this packet would be encoded as to an      * OutputStream.      * @return The size in bytes of the packet      */    public abstract int getCommandLen();    /** Get the length of the SMPP header.      */    protected int getHeaderLen()    {	// 1 4-byte integer each for command length, id, status and sequence	// number.	return (16);    }    /** Get the Command Id of this SMPP packet.      * @return The Command Id of this packet      */    public int getCommandId()    {	return (commandId);    }    /** Get the status of this packet.      * @return The error status of this packet (only relevent to Response      * packets)      */    public int getCommandStatus()    {	return (this.commandStatus);    }    /** Get the sequence number of this packet.      * @return The sequence number of this SMPP packet      */    public int getSequenceNum()    {	return (this.sequenceNum);    }    /** Set the sequence number of this packet.      */    public void setSequenceNum(int sequenceNum)    {	this.sequenceNum = sequenceNum;    }    /** Set the source address.      * Not used by all SMPP Packet types.      * @see ie.omk.smpp.message.SubmitSM      * @see ie.omk.smpp.message.DeliverSM      * XXX Add other packets.      */    public void setSource(SmeAddress s)    {	if(s != null) {	    this.source = s;	    Debug.d(this, "setSource", s, 4);	}    }    /** Get the source address.      * Not used by all SMPP Packet types.      * @return The source address or null if it is not set.      */    public SmeAddress getSource()    {	if(source != null)	    return (source);	else	    return (null);    }    /** Set the destination address.      * Not used by all SMPP Packet types.      */    public void setDestination(SmeAddress s)    {	if(s != null) {	    this.destination = s;	    Debug.d(this, "setDestination", s, 4);	}    }    /** Get the destination address.      * Not used by all SMPP Packet types.      * @return The destination address or null if it is not set.      */    public SmeAddress getDestination()    {	if(destination != null) {	    return (destination);	} else {	    return (null);	}    }    /** Set the message flags.      * Not used by all SMPP Packet types.      * @see ie.omk.smpp.message.MsgFlags      * @deprecated      */    public void setMessageFlags(MsgFlags f)    {	if(f != null) {	    this.priority = (f.priority) ? 1 : 0;	    this.registered = f.registered;	    this.replaceIfPresent = f.replace_if_present;	    this.esmClass = f.esm_class;	    this.protocolID = f.protocol;	    this.dataCoding = f.data_coding;	    this.defaultMsg = f.default_msg;	    Debug.d(this, "setMessageFlags", f, 4);	}    }    /** Set the 'priority' flag.      * @see ie.omk.smpp.message.MsgFlags      */    public void setPriority(boolean b)    {	this.priority = (b) ? 1 : 0;	Debug.d(this, "setPriority", b, 4);    }    /** Set 'registered delivery' flag.      * @see ie.omk.smpp.message.MsgFlags      */    public void setRegistered(boolean b)    {	this.registered = b;	Debug.d(this, "setRegistered", b, 4);    }    /** Set 'replace if present'.      * @see ie.omk.smpp.message.MsgFlags      */    public void setReplaceIfPresent(boolean b)    {	this.replaceIfPresent = b;	Debug.d(this, "setReplaceIfPresent", b, 4);    }        /** Set the esm class of the message.      * @see ie.omk.smpp.message.MsgFlags      * @see ie.omk.smpp.util.GSMConstants      */    public void setEsmClass(int c)    {	this.esmClass = c;	Debug.d(this, "setEsmClass", c, 4);    }    /** Set the protocol Id in the message flags.      * @see ie.omk.smpp.message.MsgFlags      * @see ie.omk.smpp.util.GSMConstants      * @deprecated ie.omk.smpp.message.SMPPPacket#setProtocolID      */    public void setProtocolId(int id)    {	this.protocolID = id;	Debug.d(this, "setProtocolId", id, 4);    }    /** Set the GSM protocol ID.      * @see ie.omk.smpp.message.MsgFlags      * @see ie.omk.smpp.util.GSMConstants      */    public void setProtocolID(int id)    {	this.protocolID = id;	Debug.d(this, "setProtocolID", id, 4);    }    /** Set the GSM data coding of the message.      * @see ie.omk.smpp.message.MsgFlags      * @see ie.omk.smpp.util.GSMConstants      */    public void setDataCoding(int dc)    {	this.dataCoding = dc;	Debug.d(this, "setDataCoding", dc, 4);    }    /** Set the default message id in the message flags.      * @see ie.omk.smpp.message.MsgFlags      */    public void setDefaultMsg(int id)    {	this.defaultMsg = id;	Debug.d(this, "setDefaultMsg", id, 4);    }    /** Get the message flags.      * @return The ie.omk.smpp.message.MsgFlags object. Never null.      * @deprecated      */    public MsgFlags getMessageFlags()    {	MsgFlags flags = new MsgFlags();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品日本一线二线三线不卡| 免费欧美在线视频| 亚洲尤物视频在线| 青青草成人在线观看| 国产精品一二三| a4yy欧美一区二区三区| 欧美性猛交一区二区三区精品| 欧美精品久久天天躁| 久久综合九色综合久久久精品综合| 国产欧美一区二区精品性色 | 久久国产精品第一页| 成人性视频免费网站| 欧美午夜一区二区| 久久先锋影音av鲁色资源| 亚洲精品日产精品乱码不卡| 日韩不卡免费视频| 成人午夜激情片| 欧美日本一区二区| 国产亚洲一本大道中文在线| 亚洲精品va在线观看| 精品一区二区三区欧美| 色婷婷亚洲一区二区三区| 精品少妇一区二区三区在线播放 | 成人激情开心网| 欧美日韩一区二区三区免费看| 亚洲精品一区在线观看| 亚洲一区二区在线观看视频 | 欧美高清在线一区二区| 天堂蜜桃91精品| 成人av中文字幕| 日韩一区二区中文字幕| 亚洲人成小说网站色在线| 精品一区精品二区高清| 欧美丝袜丝交足nylons图片| 国产亚洲va综合人人澡精品| 五月激情六月综合| 成人国产精品免费| 久久中文娱乐网| 日韩高清电影一区| 一本到三区不卡视频| 久久久久久久免费视频了| 石原莉奈在线亚洲三区| 在线日韩一区二区| 欧美激情资源网| 精品在线免费视频| 欧美一级在线免费| 亚洲乱码国产乱码精品精98午夜 | 欧美精品一区二区蜜臀亚洲| 香港成人在线视频| 91久久精品一区二区三| 亚洲欧洲成人精品av97| 国产高清视频一区| 日韩欧美久久一区| 午夜视黄欧洲亚洲| 色吧成人激情小说| 亚洲视频在线观看一区| 国产成人av网站| 欧美大片国产精品| 免费看欧美美女黄的网站| 欧美色欧美亚洲另类二区| 亚洲精品国产第一综合99久久 | 亚洲国产精品精华液ab| 韩国女主播成人在线| 日韩一区二区精品葵司在线| 丝袜亚洲另类丝袜在线| 欧美日韩一区在线观看| 一区二区三区欧美日韩| 一本久道久久综合中文字幕| 亚洲三级免费电影| 99精品久久只有精品| 欧美激情一区二区三区四区 | 日本一区二区三区在线观看| 精品一区二区日韩| 欧美成人猛片aaaaaaa| 麻豆91精品91久久久的内涵| 日韩写真欧美这视频| 日本不卡视频一二三区| 日韩三级电影网址| 久久精品国产77777蜜臀| 精品日韩欧美一区二区| 久久国产欧美日韩精品| 久久午夜电影网| 国产91富婆露脸刺激对白| 国产欧美日韩在线| 丁香网亚洲国际| 亚洲日本免费电影| 欧美最猛黑人xxxxx猛交| 亚洲成a人片在线观看中文| 欧美丝袜第三区| 日韩av不卡在线观看| 日韩一区二区免费视频| 国产一区二区不卡在线 | 91欧美一区二区| 亚洲男同1069视频| 欧美午夜精品久久久久久超碰| 婷婷综合另类小说色区| 欧美成人bangbros| 国产一区在线观看麻豆| 中文字幕亚洲综合久久菠萝蜜| 一本久道久久综合中文字幕| 调教+趴+乳夹+国产+精品| 日韩一区二区在线看| 国产成人在线色| 亚洲精品视频在线观看网站| 欧美一区二区日韩一区二区| 久久国产福利国产秒拍| 日韩一区日韩二区| 欧美电影一区二区| 国产91对白在线观看九色| 亚洲黄色小视频| 欧美成人一区二区三区在线观看| 欧美图区在线视频| 看片的网站亚洲| 国产精品美日韩| 欧美日韩免费电影| 国产麻豆欧美日韩一区| 亚洲精品亚洲人成人网| 日韩一区二区在线观看| 成人精品一区二区三区四区 | 7777精品伊人久久久大香线蕉| 久久电影网站中文字幕| 日韩理论片中文av| 欧美一区二区日韩| 99久免费精品视频在线观看| 日韩一区精品视频| 欧美国产精品专区| 欧美久久久影院| 成人天堂资源www在线| 午夜日韩在线电影| 国产精品素人视频| 日韩午夜电影在线观看| 色老头久久综合| 国产麻豆精品在线| 婷婷激情综合网| 欧美韩国日本不卡| 日韩一级精品视频在线观看| 91在线观看视频| 国产一区二区精品久久99| 亚洲午夜私人影院| 国产精品免费网站在线观看| 91精品国产综合久久婷婷香蕉| 99久久精品情趣| 国产一区激情在线| 亚洲第一精品在线| 亚洲人一二三区| 国产亚洲精品超碰| 欧美电影免费提供在线观看| 欧美在线不卡视频| 成人黄色在线视频| 久久精品久久精品| 亚洲第一综合色| 综合久久久久久| 日本一二三四高清不卡| 欧美精品一区二区三区在线| 欧美精品丝袜中出| 欧洲中文字幕精品| 91网上在线视频| 国产成人99久久亚洲综合精品| 毛片一区二区三区| 午夜激情综合网| 亚洲综合一区二区| 亚洲精品视频免费观看| 亚洲欧洲美洲综合色网| 国产精品天天看| 国产亚洲欧美一区在线观看| 日韩欧美成人激情| 欧美一区二区三区四区五区 | 日本vs亚洲vs韩国一区三区| 亚洲午夜精品在线| 亚洲男人的天堂在线aⅴ视频| 国产精品久久99| 国产女主播一区| 国产婷婷一区二区| 久久精品一区二区| 久久男人中文字幕资源站| 精品国产凹凸成av人导航| 欧美不卡一二三| 精品国产乱子伦一区| 日韩欧美二区三区| 日韩欧美一区在线| 欧美一区二区三区人| 欧美日韩aaaaaa| 欧美日韩成人综合在线一区二区| 欧美日韩在线电影| 欧美日韩在线观看一区二区| 欧美日韩不卡一区| 欧美一区二区视频观看视频| 555www色欧美视频| 日韩视频不卡中文| www精品美女久久久tv| 国产清纯美女被跳蛋高潮一区二区久久w | 亚洲久草在线视频| 一区二区三区四区在线免费观看 | 欧美日韩一区在线观看| 欧美日韩亚洲不卡| 欧美一区二区三区视频在线观看| 精品久久国产字幕高潮| 久久这里只有精品首页| 中文字幕国产精品一区二区| 亚洲欧美中日韩|