Last active
August 29, 2015 14:02
-
-
Save stevenschlansker/db772bfe5674339da40b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import org.apache.http.client.params.ClientPNames; | |
import org.apache.http.params.HttpParams; | |
@SuppressWarnings("deprecation") | |
class AllowRedirectHttpParams implements HttpParams | |
{ | |
private final HttpParams delegate; | |
AllowRedirectHttpParams(HttpParams delegate) | |
{ | |
this.delegate = delegate; | |
} | |
@Override | |
public Object getParameter(String name) | |
{ | |
return delegate.getParameter(name); | |
} | |
@Override | |
public HttpParams setParameter(String name, Object value) | |
{ | |
return delegate.setParameter(name, value); | |
} | |
@Override | |
public HttpParams copy() | |
{ | |
return delegate.copy(); | |
} | |
@Override | |
public boolean removeParameter(String name) | |
{ | |
return delegate.removeParameter(name); | |
} | |
@Override | |
public long getLongParameter(String name, long defaultValue) | |
{ | |
return delegate.getLongParameter(name, defaultValue); | |
} | |
@Override | |
public HttpParams setLongParameter(String name, long value) | |
{ | |
return delegate.setLongParameter(name, value); | |
} | |
@Override | |
public int getIntParameter(String name, int defaultValue) | |
{ | |
return delegate.getIntParameter(name, defaultValue); | |
} | |
@Override | |
public HttpParams setIntParameter(String name, int value) | |
{ | |
return delegate.setIntParameter(name, value); | |
} | |
@Override | |
public double getDoubleParameter(String name, double defaultValue) | |
{ | |
return delegate.getDoubleParameter(name, defaultValue); | |
} | |
@Override | |
public HttpParams setDoubleParameter(String name, double value) | |
{ | |
return delegate.setDoubleParameter(name, value); | |
} | |
@Override | |
public boolean getBooleanParameter(String name, boolean defaultValue) | |
{ | |
if (ClientPNames.HANDLE_REDIRECTS.equals(name)) { | |
return true; | |
} | |
return delegate.getBooleanParameter(name, defaultValue); | |
} | |
@Override | |
public HttpParams setBooleanParameter(String name, boolean value) | |
{ | |
return delegate.setBooleanParameter(name, value); | |
} | |
@Override | |
public boolean isParameterTrue(String name) | |
{ | |
return delegate.isParameterTrue(name); | |
} | |
@Override | |
public boolean isParameterFalse(String name) | |
{ | |
return delegate.isParameterFalse(name); | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
final AbstractHttpClient httpClient = (AbstractHttpClient)((ApacheHttpClient4Engine)((ResteasyClient) client).httpEngine()).getHttpClient(); | |
httpClient.setRedirectStrategy(new DefaultRedirectStrategy() { | |
@Override | |
protected boolean isRedirectable(String method) | |
{ | |
return true; | |
} | |
}); | |
httpClient.addRequestInterceptor(new HttpRequestInterceptor() { | |
@Override | |
public void process(HttpRequest request, HttpContext context) throws HttpException, IOException | |
{ | |
request.setParams(new AllowRedirectHttpParams(request.getParams())); | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment