package com.gh4a;
import org.eclipse.egit.github.core.client.GitHubClient;
import org.eclipse.egit.github.core.client.PageIterator;
import org.eclipse.egit.github.core.client.PagedRequest;
import java.net.HttpURLConnection;
public class DefaultClient extends GitHubClient {
private static final String DEFAULT_HEADER_ACCEPT = "application/vnd.github.v3.full+json";
public DefaultClient() {
this(DEFAULT_HEADER_ACCEPT);
}
public DefaultClient(String headerAccept) {
super();
setHeaderAccept(headerAccept);
}
@Override
protected HttpURLConnection configureRequest(HttpURLConnection request) {
super.configureRequest(request);
Gh4Application.trackVisitedUrl(request.getURL().toExternalForm());
return request;
}
@Override
protected boolean isError(int code) {
if (code == 401) {
Gh4Application.get().logout();
}
return super.isError(code);
}
@Override
public <V> PageIterator<V> createPageIterator(PagedRequest<V> request) {
return new PageIteratorWithSaveableState<>(request, this);
}
}