diff options
Diffstat (limited to 'tests/bttestui/btlocaldevice.cpp')
-rw-r--r-- | tests/bttestui/btlocaldevice.cpp | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/bttestui/btlocaldevice.cpp b/tests/bttestui/btlocaldevice.cpp index df23c859..6b7027d0 100644 --- a/tests/bttestui/btlocaldevice.cpp +++ b/tests/bttestui/btlocaldevice.cpp @@ -268,6 +268,8 @@ void BtLocalDevice::stopDiscovery() void BtLocalDevice::startServiceDiscovery(bool isMinimalDiscovery) { if (serviceAgent) { + serviceAgent->setRemoteAddress(QBluetoothAddress()); + qDebug() << "###### Starting service discovery process"; serviceAgent->start(isMinimalDiscovery ? QBluetoothServiceDiscoveryAgent::MinimalDiscovery @@ -275,6 +277,24 @@ void BtLocalDevice::startServiceDiscovery(bool isMinimalDiscovery) } } +void BtLocalDevice::startTargettedServiceDiscovery() +{ + if (serviceAgent) { + const QBluetoothAddress baddr(BTCHAT_DEVICE_ADDR); + qDebug() << "###### Starting service discovery on" + << baddr.toString(); + if (baddr.isNull()) + return; + + if (!serviceAgent->setRemoteAddress(baddr)) { + qWarning() << "###### Cannot set remote address. Aborting"; + return; + } + + serviceAgent->start(); + } +} + void BtLocalDevice::stopServiceDiscovery() { if (serviceAgent) { @@ -409,6 +429,12 @@ void BtLocalDevice::abortSocket() qDebug() << "###### Disconnecting socket"; socket->abort(); } + + if (!serverSockets.isEmpty()) { + qDebug() << "###### Closing server sockets"; + foreach (QBluetoothSocket *s, serverSockets) + s->abort(); + } } void BtLocalDevice::socketConnected() |