package com.ittianyu.pocenter.features.search; import com.ittianyu.pocenter.common.api.RemoteApi; import com.ittianyu.pocenter.common.base.BasePresenter; import com.ittianyu.pocenter.common.bean.ProjectBean; import com.orhanobut.logger.Logger; import java.util.List; import io.reactivex.functions.Consumer; /** * Created by yu on 2017/1/17. */ public class SearchPresenter extends BasePresenter<SearchContract.View> implements SearchContract.Presenter { private static final int COUNT = 20; private String[] keywords; @Override public void loadData(final boolean pullToRefresh) { application.getRepertories() .getList(0, COUNT, null, RemoteApi.Status.RECRUITING, keywords, pullToRefresh) .subscribe(new Consumer<List<ProjectBean>>() { @Override public void accept(List<ProjectBean> projectBeen) throws Exception { getView().setData(projectBeen); } }, new Consumer<Throwable>() { @Override public void accept(Throwable throwable) throws Exception { getView().loadDataError(throwable, pullToRefresh); } }); } @Override public void loadMore(int start) { application.getRepertories() .getList(start, COUNT, null, RemoteApi.Status.RECRUITING, keywords, false) .subscribe(new Consumer<List<ProjectBean>>() { @Override public void accept(List<ProjectBean> projectBeen) throws Exception { getView().addData(projectBeen); } }, new Consumer<Throwable>() { @Override public void accept(Throwable throwable) throws Exception { getView().loadMoreError(throwable); } }); } @Override public void setSearchString(String search) { keywords = search.split(" "); Logger.d(keywords); } }