package com.alorma.github.sdk.services.git;
import com.alorma.github.sdk.bean.dto.response.GitReference;
import com.alorma.github.sdk.bean.info.RepoInfo;
import com.alorma.github.sdk.services.client.GithubListClient;
import java.util.List;
import retrofit.RestAdapter;
public class GetReferencesClient extends GithubListClient<List<GitReference>> {
private final RepoInfo info;
private final int page;
public GetReferencesClient(RepoInfo repoInfo) {
this(repoInfo, 0);
}
public GetReferencesClient(RepoInfo repoInfo, int page) {
super();
this.info = repoInfo;
this.page = page;
}
@Override
protected ApiSubscriber getApiObservable(RestAdapter restAdapter) {
return new ApiSubscriber() {
@Override
protected void call(RestAdapter restAdapter) {
GitDataService gitDataService = restAdapter.create(GitDataService.class);
if (page == 0) {
gitDataService.repoReferences(info.owner, info.name, this);
} else {
gitDataService.repoReferences(info.owner, info.name, page, this);
}
}
};
}
}