public synchronized String getContent() {
    while (!ready) {
      try {
        wait();
      } catch (InterruptedException e) {

      }
    }
    return realData.getContent();
  }
  public synchronized String getContent() throws InvocationTargetException {
    while (!ready) {
      try {
        wait();
      } catch (InterruptedException e) {

      }
    }

    if (exception != null) {
      throw exception;
    }

    return realdata.getContent();
  }