Reputation: 171
RXJava timer returns subscription, where Action1 use Long type. I need another to pass inside Action1 object of another type.
Observable<Long> observable = Observable.timer(7, TimeUnit.SECONDS, Schedulers.computation());
cancelOrderSubscription = observable
.subscribeOn(Schedulers.computation())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Action1<Long>() {
@Override
public void call(Long aLong) {
// NOT LONG REQUIRED
}
});
Upvotes: 1
Views: 119
Reputation: 171
Based on akarnokd comment.
Observable.timer(5, TimeUnit.SECONDS)
.observeOn(AndroidSchedulers.mainThread())
.map(new Func1<Long, MyOrderStorageItem>() {
@Override
public MyOrderStorageItem call(Long aLong) {
return myOrderStorageItem;
}
})
.subscribe(new Action1<MyOrderStorageItem>() {
@Override
public void call(MyOrderStorageItem myOrderStorageItem) {
// use object myOrderStorageItem
}
});
Upvotes: 1