}
};
+BluetoothLEAdapter.prototype.addConnectStateChangeListener = function() {
+ privUtils_.log('Entered BluetoothLEAdapter.addClientConnectStateChaneListener()');
+ var args = AV.validateArgs(arguments, [
+ {
+ name: 'listener',
+ type: AV.Types.LISTENER,
+ values: ['onconnected', 'ondisconnected']
+ }
+ ]);
+
+ var func = function(event) {
+ if (args.listener[event.action]) {
+ args.listener[event.action](new BluetoothLEDevice(event.address));
+ }
+ };
+
+ return _bleConnectChangeListener.addListener(func);
+};
+
+BluetoothLEAdapter.prototype.removeConnectStateChangeListener = function() {
+ privUtils_.log('Entered BluetoothLEAdapter.removeConnectStateChangeListener()');
+
+ var args = AV.validateArgs(arguments, [
+ {
+ name: 'watchID',
+ type: AV.Types.LONG
+ }
+ ]);
+
+ _bleConnectChangeListener.removeListener(args.watchID);
+};
+
//class BluetoothGATTService ///////////////////////////
var BluetoothGATTService = function(data, address) {
var handle_ = data.handle;
true
);
+
+/*
+ * This object is used by:
+ * - BluetoothLEDevice.addConnectStateChangeListener()
+ * - BluetoothLEAdapter.addConnectStateChangeListener()
+ */
var _bleConnectChangeListener = _multipleListenerBuilder(
'BluetoothLEConnectChangeCallback',
function(listener, event) {