code: protected void waitForServiceToBeBound() throws InterruptedException {
          Ln.d("Waiting for service to be bound.");
  
          lockAcquireService.lock();
          try {
              while (spiceService == null && (!requestQueue.isEmpty() || !isStopped)) {
                  conditionServiceBound.await();
              }
              Ln.d("Bound ok.");
          } finally {
              lockAcquireService.unlock();
          }
      }
docs: Wait for acquiring binding to {@link SpiceService}.
  @throws InterruptedException
  in case the binding is interrupted.