code: public static <T> Observable<T> deferFuture(
              Func0<? extends Future<? extends Observable<? extends T>>> observableFactoryAsync,
              Scheduler scheduler) {
          return Observable.defer(new DeferFutureFunc0Scheduled<T>(observableFactoryAsync, scheduler));
      }
docs: Returns an observable sequence that starts the specified asynchronous
  factory function whenever a new observer subscribes.
  @param <T> the result type
  @param observableFactoryAsync the asynchronous function to start for each observer
  @param scheduler the scheduler where the completion of the Future is awaited
  @return the observable sequence containing values produced by the asynchronous observer
  produced by the factory