use of rx.functions.Func1 in project GeekNews by codeestX.
the class MainPresenter method registerEvent.
void registerEvent() {
Subscription rxSubscription = RxBus.getDefault().toObservable(NightModeEvent.class).compose(RxUtil.<NightModeEvent>rxSchedulerHelper()).map(new Func1<NightModeEvent, Boolean>() {
@Override
public Boolean call(NightModeEvent nightModeEvent) {
return nightModeEvent.getNightMode();
}
}).subscribe(new CommonSubscriber<Boolean>(mView, "切换模式失败ヽ(≧Д≦)ノ") {
@Override
public void onNext(Boolean aBoolean) {
mView.useNightMode(aBoolean);
}
});
addSubscrebe(rxSubscription);
}
use of rx.functions.Func1 in project GeekNews by codeestX.
the class MainPresenter method checkVersion.
@Override
public void checkVersion(final String currentVersion) {
Subscription rxSubscription = mRetrofitHelper.fetchVersionInfo().compose(RxUtil.<MyHttpResponse<VersionBean>>rxSchedulerHelper()).compose(RxUtil.<VersionBean>handleMyResult()).filter(new Func1<VersionBean, Boolean>() {
@Override
public Boolean call(VersionBean versionBean) {
return Integer.valueOf(currentVersion.replace(".", "")) < Integer.valueOf(versionBean.getCode().replace(".", ""));
}
}).map(new Func1<VersionBean, String>() {
@Override
public String call(VersionBean bean) {
StringBuilder content = new StringBuilder("版本号: v");
content.append(bean.getCode());
content.append("\r\n");
content.append("版本大小: ");
content.append(bean.getSize());
content.append("\r\n");
content.append("更新内容:\r\n");
content.append(bean.getDes().replace("\\r\\n", "\r\n"));
return content.toString();
}
}).subscribe(new CommonSubscriber<String>(mView) {
@Override
public void onNext(String s) {
mView.showUpdateDialog(s);
}
});
addSubscrebe(rxSubscription);
}
use of rx.functions.Func1 in project GeekNews by codeestX.
the class RepliesPresenter method getTopInfo.
@Override
public void getTopInfo(String topic_id) {
Subscription rxSubscription = mRetrofitHelper.fetchTopicInfo(topic_id).compose(RxUtil.<List<NodeListBean>>rxSchedulerHelper()).filter(new Func1<List<NodeListBean>, Boolean>() {
@Override
public Boolean call(List<NodeListBean> nodeListBeen) {
return nodeListBeen.size() > 0;
}
}).map(new Func1<List<NodeListBean>, NodeListBean>() {
@Override
public NodeListBean call(List<NodeListBean> nodeListBeen) {
return nodeListBeen.get(0);
}
}).subscribe(new CommonSubscriber<NodeListBean>(mView) {
@Override
public void onNext(NodeListBean nodeListBean) {
mView.showTopInfo(nodeListBean);
}
});
addSubscrebe(rxSubscription);
}
use of rx.functions.Func1 in project GeekNews by codeestX.
the class TechPresenter method registerEvent.
private void registerEvent() {
Subscription rxSubscription = RxBus.getDefault().toObservable(SearchEvent.class).compose(RxUtil.<SearchEvent>rxSchedulerHelper()).filter(new Func1<SearchEvent, Boolean>() {
@Override
public Boolean call(SearchEvent searchEvent) {
return searchEvent.getType() == currentType;
}
}).map(new Func1<SearchEvent, String>() {
@Override
public String call(SearchEvent searchEvent) {
return searchEvent.getQuery();
}
}).subscribe(new CommonSubscriber<String>(mView, "搜索失败") {
@Override
public void onNext(String s) {
queryStr = s;
getSearchTechData();
}
});
addSubscrebe(rxSubscription);
}
use of rx.functions.Func1 in project GeekNews by codeestX.
the class TechPresenter method getSearchTechData.
private void getSearchTechData() {
currentPage = 1;
Subscription rxSubscription = mRetrofitHelper.fetchGankSearchList(queryStr, currentTech, NUM_OF_PAGE, currentPage).compose(RxUtil.<GankHttpResponse<List<GankSearchItemBean>>>rxSchedulerHelper()).compose(RxUtil.<List<GankSearchItemBean>>handleResult()).map(new Func1<List<GankSearchItemBean>, List<GankItemBean>>() {
@Override
public List<GankItemBean> call(List<GankSearchItemBean> gankSearchItemBeen) {
List<GankItemBean> newList = new ArrayList<>();
for (GankSearchItemBean item : gankSearchItemBeen) {
GankItemBean bean = new GankItemBean();
bean.set_id(item.getGanhuo_id());
bean.setDesc(item.getDesc());
bean.setPublishedAt(item.getPublishedAt());
bean.setWho(item.getWho());
bean.setUrl(item.getUrl());
newList.add(bean);
}
return newList;
}
}).subscribe(new CommonSubscriber<List<GankItemBean>>(mView) {
@Override
public void onNext(List<GankItemBean> gankItemBeen) {
mView.showContent(gankItemBeen);
}
});
addSubscrebe(rxSubscription);
}
Aggregations