code: public VehicleMessage request(KeyedMessage message) {
          BlockingMessageListener callback = new BlockingMessageListener();
          request(message, callback);
          return callback.waitForResponse();
      }
docs: Send a message to the VehicleInterface and wait up to 2 seconds to
  receive a response.
  
  This is a blocking version of the other request(...) method.
  
  @return The response if one is received before the timeout, otherwise
  null.