public boolean cancelServiceSearch(int transID) {
   assertClosed();
   SearchServicesThread sst = SearchServicesThread.getServiceSearchThread(transID);
   if (sst != null) {
     synchronized (sst) {
       if (!sst.isTerminated()) {
         sst.setTerminated();
         return true;
       }
     }
   }
   return false;
 }
 public int searchServices(
     int[] attrSet, UUID[] uuidSet, RemoteDevice device, DiscoveryListener listener)
     throws BluetoothStateException {
   return SearchServicesThread.startSearchServices(
       this,
       new EmulatorSearchServices(activeLocalDevice(), this),
       attrSet,
       uuidSet,
       device,
       listener);
 }