~~ See this file format http://maven.apache.org/doxia/references/apt-format.html
------------------
BlueCove JSR-82 Emulator module
------------------
BlueCove JSR-82 Emulator module
bluecove-emu is additional module for BlueCove to simulate Bluetooth stack.
bluecove-emu is a pure Java implementation of JSR-82 without Bluetooth hardware. Fully tested using TCK {{{../tck/}JSR-82 TCK test results}}
bluecove-emu requires Java 5 Standard Edition and uses RMI for interprocess communication.
N.B. This is experimental module and have no monitoring GUI. Another module bluecove-emu-gui is in developement. {{{http://groups.google.com/group/bluecove-developers}Help us make it}}.
The diagram below shows the architecture used by this module
Emulator has been designed to be used during unit test to help in automation of tests for JSR-82 applications.
For unit tests air simulator server can be started as in process server. {{{apidocs/com/intel/bluetooth/EmulatorTestsHelper.html#startInProcessServer()}EmulatorTestsHelper.startInProcessServer()}}
Documentation for BlueCove API that enables the use of Multiple Adapters and Bluetooth Stacks in parallel in the same JVM can be found {{{../bluecove/apidocs/com/intel/bluetooth/BlueCoveImpl.html#useThreadLocalBluetoothStack()}here}}.
Complete JUnit test example can be found here {{{xref-test/net/sf/bluecove/ExampleTest.html}ExampleTest}}
* Configuration options
System properties:
* `bluecove.stack=emulator` force BlueCove to use Emulator instead of real Bluetooth stack
* `bluecove.deviceID=1` bluecove supports multiple local devices, this will force it to select second one.
* `bluecove.deviceAddress=btaddr` select local devices by Bluetooth address
* `bluecove.emu.rmiRegistryHost=localhost` air simulator server can be on remote computer
* `bluecove.emu.rmiRegistryPort=8090` air simulator server listen on different port. Use 0 on the client to enable in process server (no rmi)
* `bluecove.emu.rmiRegistry=true` air simulator server and RMI registry can be started inside client JVM
Emulator Configuration properties:
This is the resource file 'bluecove.emulator.properties' loaded by air simulator server.
Defines devices address and names assignment.
It also can define LocalDevice properties returned to the client application.
See {{{apidocs/com/intel/bluetooth/emu/EmulatorConfiguration.html}EmulatorConfiguration}}