All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.bluetooth.L2CAPConnectionNotifier Maven / Gradle / Ivy

/**
 *  BlueCove - Java library for Bluetooth
 *  Copyright (C) 2004 Intel Corporation
 * 
 *  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
 *  
 *  
 *  Java docs licensed under the Apache License, Version 2.0
 *  http://www.apache.org/licenses/LICENSE-2.0 
 *   (c) Copyright 2001, 2002 Motorola, Inc.  ALL RIGHTS RESERVED.
 *   
 *   
 *  @version $Id: L2CAPConnectionNotifier.java 568 2007-06-27 16:15:26Z skarzhevskyy $
 */ 
package javax.bluetooth;

import java.io.IOException;

import javax.microedition.io.Connection;

/**
 * The L2CAPConnectionNotifier interface provides
 * an L2CAP connection notifier.
 * 

* To create a server connection, the protocol must be * btl2cap. The target contains "localhost:" and the UUID of the * service. The parameters are ReceiveMTU and TransmitMTU, the same parameters * used to define a client connection. Here is an example of a valid server connection * string:
* btl2cap://localhost:3B9FA89520078C303355AAA694238F07;ReceiveMTU=512;TransmitMTU=512
*

* A call to Connector.open() with this string will return a * javax.bluetooth.L2CAPConnectionNotifier object. An * L2CAPConnection object is obtained from the * L2CAPConnectionNotifier by calling the method * acceptAndOpen(). * * @version 1.0 February 11, 2002 * */ public interface L2CAPConnectionNotifier extends Connection { /** * Waits for a client to connect to this L2CAP service. * Upon connection returns an L2CAPConnection * that can be used to communicate with this client. * *

A service record associated with this connection will be * added to the SDDB associated with this * L2CAPConnectionNotifier object if one does not * exist in the SDDB. This method will put the * local device in connectable mode so that it may respond to * connection attempts by clients. * *

The following checks are done to verify that any * modifications made by the application to the service record * after it was created by Connector.open() have not * created an invalid service record. If any of these checks * fail, then a ServiceRegistrationException is thrown. *

    *
  • ServiceClassIDList and ProtocolDescriptorList, the mandatory * service attributes for a btl2cap service record, * must be present in the service record. *
  • L2CAP must be in the ProtocolDescriptorList. *
  • The PSM value must not have changed in the service record. *
*

* This method will not ensure that the service record created * is a completely valid service record. It is the responsibility * of the application to ensure that the service record follows * all of the applicable syntactic and semantic rules for service * record correctness. * * @return a connection to communicate with the client * * @exception IOException if the notifier is closed before * acceptAndOpen() is called * * @exception ServiceRegistrationException if the structure of the * associated service record is invalid or if the service record * could not be added successfully to the local SDDB. The * structure of service record is invalid if the service * record is missing any mandatory service attributes, or has * changed any of the values described above which are fixed and * cannot be changed. Failures to add the record to the SDDB could * be due to insufficient disk space, database locks, etc. * * @exception BluetoothStateException if the server device could * not be placed in connectable mode because the device user has * configured the device to be non-connectable. * */ public L2CAPConnection acceptAndOpen() throws IOException; }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy