⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 irlapstatereply.java

📁 JRed is a 100% Java implementation of the IrDA infrared communications protocols. JRed lets you beam
💻 JAVA
字号:
/*
**************************************************************************
** $Header: /cvsroot/jred/jred/src/com/synchrona/jred/irlap/IrLAPStateReply.java,v 1.2 2000/07/30 20:18:12 mpatters Exp $
**
** Copyright (C) 2000 Synchrona, Inc. All rights reserved.
**
** This file is part of JRed, a 100% Java implementation of the IrDA
** infrared communications protocols.
**
** This file may be distributed under the terms of the Synchrona Public
** License as defined by Synchrona, Inc. and appearing in the file
** LICENSE included in the packaging of this file. The Synchrona Public
** License is based on the Q Public License as defined by Troll Tech AS
** of Norway; it differs only in its use of the courts of Florida, USA
** rather than those of Oslo, Norway.
**************************************************************************
*/
package com.synchrona.jred.irlap;

import com.synchrona.util.Assert;

class IrLAPStateReply extends IrLAPState {

	//--------------------------------------------------------------------
	// Static stuff
	//--------------------------------------------------------------------

	private static IrLAPState s_instance = new IrLAPStateReply();

	public static IrLAPState getInstance() {
		return s_instance;
	}

	//--------------------------------------------------------------------
	// Start event handlers.
	//--------------------------------------------------------------------

	public void handleXID(IrLAPContext context, int nSource, int nDestination, byte ySlot, boolean bCommand, byte [] ayHints) throws Exception {
		if ( bCommand ) {
			if ( (ySlot >= context.getResponseSlot()) && !context.isFrameSent() ) {
				context.sendDiscoveryResponse(nSource);
				context.setFrameSent(true);
			} else if ( (byte) 0xFF == ySlot ) {
				context.setMediaBusy(false);
				context.nextState(IrLAPStateNDM.getInstance());
				context.setFrameSent(false);
				context.stopQueryTimer();

				if ( null == ayHints ) {
					Assert.warn(false, "Odd...got last XID command without service hints.");
				} else {
					context.discoveryIndication(
						new DiscoveryInformation(nSource,
						                         new ServiceHints(ayHints, 0, ayHints.length)));
				}
			}
		}
	}

	//--------------------------------------------------------------------
	// End of protected methods, start private methods
	//--------------------------------------------------------------------

	protected IrLAPStateReply() {
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -