code: public ResultValue awaitResult(long maxWait, TimeUnit timeUnit) throws Exception
      {
          if (!await(maxWait, timeUnit))
          {
              throw new TimeoutException();
          }
          return getResultValue();
      }
docs: Await up to a maximum time for the result
  
  @param maxWait max wait time
  @param timeUnit time unit
  @return the result
  @throws Exception errors