Sergei,

Why should this method be a part of the future API? The only implementation
will do "return func(this);"

I can achieve the same result the following way:
rx(compute.runAsync(runnable)).timeout(5_000).subscribe();



2017-03-27 15:54 GMT+03:00 Sergei Egorov <bsid...@gmail.com>:

> Take a look at my initial code.
>
> public <T> IgniteFuture<T> chain(IgniteClosure<? super
> IgniteFuture<V>, T> doneCb);
>
> vs
>
> public <R> R to(IgniteClosure<? super IgniteFuture<V>, R> transformer);
>
>
> The result of "chain" is IgniteFuture.
>
> The result of "to" is the object returned from transformer. It would
> be CompletableFuture, Rx's Observable, Reactor's Mono, etc...
>
>
> On Mon, Mar 27, 2017 at 3:18 PM Дмитрий Рябов <somefire...@gmail.com>
> wrote:
>
> > Em... When you get result of your future, closure will produce new future
> > with completely different type.
> >
> > 2017-03-27 13:43 GMT+03:00 Sergei Egorov <bsid...@gmail.com>:
> >
> > > It doesn't :)
> > >
> > > It returns another IgniteFuture where I want to transform it to
> > completely
> > > different type.
> > >
> > > On Mon, Mar 27, 2017 at 1:41 PM Дмитрий Рябов <somefire...@gmail.com>
> > > wrote:
> > >
> > > > IgniteFuture have method
> > > >
> > > > public <T> IgniteFuture<T> chain(IgniteClosure<? super
> IgniteFuture<V>,
> > > T>
> > > > doneCb);
> > > >
> > > > which do this.
> > > >
> > > > 2017-03-27 13:30 GMT+03:00 Sergei Egorov <bsid...@gmail.com>:
> > > >
> > > > > Hi!
> > > > >
> > > > > Would be nice if igniteFuture would provide a small but very usable
> > > > method:
> > > > >
> > > > >     public <R> R to(Function<IgniteFuture<T>, R> transformer)
> > > > >
> > > > > it will allow to chain it like:
> > > > >
> > > > >     compute.runAsync(runnable).to(rx()).timeout(5_000).subscribe()
> > > > >
> > > > > Where rx() is just a static function with something like:
> > > > >
> > > > >    public static <T> Function<IgniteFuture<T>, Observable<T>> rx()
> > > > >
> > > > >
> > > > > WDYT?
> > > > >
> > > >
> > > >
> > > > 2017-03-27 13:30 GMT+03:00 Sergei Egorov <bsid...@gmail.com>:
> > > >
> > > > > Hi!
> > > > >
> > > > > Would be nice if igniteFuture would provide a small but very usable
> > > > method:
> > > > >
> > > > >     public <R> R to(Function<IgniteFuture<T>, R> transformer)
> > > > >
> > > > > it will allow to chain it like:
> > > > >
> > > > >     compute.runAsync(runnable).to(rx()).timeout(5_000).subscribe()
> > > > >
> > > > > Where rx() is just a static function with something like:
> > > > >
> > > > >    public static <T> Function<IgniteFuture<T>, Observable<T>> rx()
> > > > >
> > > > >
> > > > > WDYT?
> > > > >
> > > >
> > >
> >
>

Reply via email to