2016-11-11 3 views
1

мои шаги:rxJava: слагающие сингл с completable и возвращающие одиночные

  1. создать одно значение х - может быть немного ресурсоемкие
  2. использовать значение х для выполнения операции ввода-вывода. это уже возвращает Completable
  3. возвращение х

так я хотел сделать что-н, как это:

Single<Integer> result = 
      Single.fromCallable(() -> generate_x) 
       .COMPOSE_WITH_COMPLETABLE(x -> method_that_returns_completable(x)) 
       .map(x -> x + 1) // i still need x here 

как достичь его?

ответ

3
single.flatMap(new Func1<Integer, Single<? extends Integer>>() { 
     @Override 
     public Single<? extends Integer> call(final Integer integer) { 
      return completable.toSingle(new Func0<Integer>() { 
       @Override 
       public Integer call() { 
        return integer; 
       } 
      }); 
     } 
    }) 
Смежные вопросы