示例#1
0
  @Override
  public void then(final Action<? super T> then) {
    ThreadBinding.requireComputeThread(
        "Promise.then() can only be called on a compute thread (use Blocking.on() to use a promise on a blocking thread)");
    doConnect(
        new Downstream<T>() {
          @Override
          public void success(T value) {
            try {
              then.execute(value);
            } catch (Throwable e) {
              throwError(e);
            }
          }

          @Override
          public void error(Throwable throwable) {
            throwError(throwable);
          }

          @Override
          public void complete() {}
        });
  }
示例#2
0
 @Override
 public void connect(Downstream<T> downstream) {
   ThreadBinding.requireComputeThread(
       "Promise.connect() can only be called on a compute thread (use Blocking.on() to use a promise on a blocking thread)");
   doConnect(downstream);
 }