当前位置: 首页>>代码示例>>Java>>正文


Java DataPacketExtension.getSeq方法代码示例

本文整理汇总了Java中org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension.getSeq方法的典型用法代码示例。如果您正苦于以下问题:Java DataPacketExtension.getSeq方法的具体用法?Java DataPacketExtension.getSeq怎么用?Java DataPacketExtension.getSeq使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension的用法示例。


在下文中一共展示了DataPacketExtension.getSeq方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getDataPacketListener

import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; //导入方法依赖的package包/类
protected StanzaListener getDataPacketListener() {
    return new StanzaListener() {

        private long lastSequence = -1;

        public void processPacket(Stanza packet) throws NotConnectedException {
            // get data packet extension
            DataPacketExtension data = ((Data) packet).getDataPacketExtension();

            /*
             * check if sequence was not used already (see XEP-0047 Section 2.2)
             */
            if (data.getSeq() <= this.lastSequence) {
                IQ unexpectedRequest = IQ.createErrorResponse((IQ) packet, new XMPPError(
                                XMPPError.Condition.unexpected_request));
                connection.sendStanza(unexpectedRequest);
                return;

            }

            // check if encoded data is valid (see XEP-0047 Section 2.2)
            if (data.getDecodedData() == null) {
                // data is invalid; respond with bad-request error
                IQ badRequest = IQ.createErrorResponse((IQ) packet, new XMPPError(
                                XMPPError.Condition.bad_request));
                connection.sendStanza(badRequest);
                return;
            }

            // data is valid; add to data queue
            dataQueue.offer(data);

            // confirm IQ
            IQ confirmData = IQ.createResultIQ((IQ) packet);
            connection.sendStanza(confirmData);

            // set last seen sequence
            this.lastSequence = data.getSeq();
            if (this.lastSequence == 65535) {
                this.lastSequence = -1;
            }

        }

    };
}
 
开发者ID:TTalkIM,项目名称:Smack,代码行数:47,代码来源:InBandBytestreamSession.java

示例2: getDataPacketListener

import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; //导入方法依赖的package包/类
protected PacketListener getDataPacketListener() {
    return new PacketListener() {

        private long lastSequence = -1;

        public void processPacket(Packet packet) {
            // get data packet extension
            DataPacketExtension data = (DataPacketExtension) packet.getExtension(
                            DataPacketExtension.ELEMENT_NAME,
                            InBandBytestreamManager.NAMESPACE);

            /*
             * check if sequence was not used already (see XEP-0047 Section 2.2)
             */
            if (data.getSeq() <= this.lastSequence) {
                IQ unexpectedRequest = IQ.createErrorResponse((IQ) packet, new XMPPError(
                                XMPPError.Condition.unexpected_request));
                connection.sendPacket(unexpectedRequest);
                return;

            }

            // check if encoded data is valid (see XEP-0047 Section 2.2)
            if (data.getDecodedData() == null) {
                // data is invalid; respond with bad-request error
                IQ badRequest = IQ.createErrorResponse((IQ) packet, new XMPPError(
                                XMPPError.Condition.bad_request));
                connection.sendPacket(badRequest);
                return;
            }

            // data is valid; add to data queue
            dataQueue.offer(data);

            // confirm IQ
            IQ confirmData = IQ.createResultIQ((IQ) packet);
            connection.sendPacket(confirmData);

            // set last seen sequence
            this.lastSequence = data.getSeq();
            if (this.lastSequence == 65535) {
                this.lastSequence = -1;
            }

        }

    };
}
 
开发者ID:ice-coffee,项目名称:EIM,代码行数:49,代码来源:InBandBytestreamSession.java

示例3: getDataPacketListener

import org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension; //导入方法依赖的package包/类
protected PacketListener getDataPacketListener() {
	return new PacketListener() {

		private long lastSequence = -1;

		public void processPacket(Packet packet) {
			// get data packet extension
			DataPacketExtension data = (DataPacketExtension) packet
					.getExtension(DataPacketExtension.ELEMENT_NAME,
							InBandBytestreamManager.NAMESPACE);

			/*
			 * check if sequence was not used already (see XEP-0047
			 * Section 2.2)
			 */
			if (data.getSeq() <= this.lastSequence) {
				IQ unexpectedRequest = IQ
						.createErrorResponse(
								(IQ) packet,
								new XMPPError(
										XMPPError.Condition.unexpected_request));
				connection.sendPacket(unexpectedRequest);
				return;

			}

			// check if encoded data is valid (see XEP-0047 Section 2.2)
			if (data.getDecodedData() == null) {
				// data is invalid; respond with bad-request error
				IQ badRequest = IQ.createErrorResponse((IQ) packet,
						new XMPPError(XMPPError.Condition.bad_request));
				connection.sendPacket(badRequest);
				return;
			}

			// data is valid; add to data queue
			dataQueue.offer(data);

			// confirm IQ
			IQ confirmData = IQ.createResultIQ((IQ) packet);
			connection.sendPacket(confirmData);

			// set last seen sequence
			this.lastSequence = data.getSeq();
			if (this.lastSequence == 65535) {
				this.lastSequence = -1;
			}

		}

	};
}
 
开发者ID:ikantech,项目名称:xmppsupport_v2,代码行数:53,代码来源:InBandBytestreamSession.java


注:本文中的org.jivesoftware.smackx.bytestreams.ibb.packet.DataPacketExtension.getSeq方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。