package com.quinn.githubknife.presenter; import android.content.Context; import com.quinn.githubknife.interactor.RepoInteractor; import com.quinn.githubknife.interactor.RepoInteractorImpl; import com.quinn.githubknife.listener.OnLoadRepoListener; import com.quinn.githubknife.view.RepoView; import com.quinn.httpknife.github.Branch; import com.quinn.httpknife.github.Repository; import java.util.List; /** * Created by Quinn on 8/1/15. */ public class RepoPresenterImpl implements RepoPresenter,OnLoadRepoListener{ private Context context; private RepoView view; private RepoInteractor interactor; public RepoPresenterImpl(Context context, RepoView view){ this.context = context; this.view = view; this.interactor = new RepoInteractorImpl(this.context,this); } @Override public void hasStar(String owner, String repo) { view.showProgress(); interactor.hasStar(owner,repo); } @Override public void fork(String owner, String repo) { this.interactor.fork(owner,repo); } @Override public void star(String owner, String repo) { interactor.star(owner, repo); } @Override public void unStar(String owner, String repo) { interactor.unStar(owner, repo); } @Override public void branches(String owner, String repo) { this.interactor.loadBranches(owner,repo); } @Override public void loadRepo(String owner, String repo) { this.interactor.loadRepo(owner, repo); } @Override public void setStarState(boolean isStar) { this.view.setStarState(isStar); } @Override public void onError(String errorMsg) { this.view.onError(errorMsg); } @Override public void forkResult(boolean success) { this.view.forkResult(success); } @Override public void setBranches(List<Branch> branches) { //在最后一个任务隐藏进度条 this.view.hideProgress(); this.view.setBranches(branches); } @Override public void setRepo(Repository repository) { this.view.setRepo(repository); } }