1
0
mirror of https://github.com/owncloud/android-library.git synced 2025-06-07 16:06:08 +00:00

Fix null error in http interceptors

This commit is contained in:
davigonz 2019-10-11 14:02:24 +02:00
parent c05a11a7b4
commit c50e199b76
2 changed files with 18 additions and 9 deletions

View File

@ -156,11 +156,14 @@ public class HttpClient {
* @param headerValue * @param headerValue
*/ */
public static void addHeaderForAllRequests(String headerName, String headerValue) { public static void addHeaderForAllRequests(String headerName, String headerValue) {
getOkHttpInterceptor() HttpInterceptor httpInterceptor = getOkHttpInterceptor();
.addRequestInterceptor(
if(getOkHttpInterceptor() != null) {
httpInterceptor.addRequestInterceptor(
new RequestHeaderInterceptor(headerName, headerValue) new RequestHeaderInterceptor(headerName, headerValue)
); );
} }
}
public static void deleteHeaderForAllRequests(String headerName) { public static void deleteHeaderForAllRequests(String headerName) {
getOkHttpInterceptor().deleteRequestHeaderInterceptor(headerName); getOkHttpInterceptor().deleteRequestHeaderInterceptor(headerName);

View File

@ -46,14 +46,20 @@ public class HttpInterceptor implements Interceptor {
public Response intercept(Chain chain) throws IOException { public Response intercept(Chain chain) throws IOException {
Request request = chain.request(); Request request = chain.request();
for (RequestInterceptor interceptor : mRequestInterceptors) { ListIterator<RequestInterceptor> requestInterceptorIterator = mRequestInterceptors.listIterator();
request = interceptor.intercept(request);
while (requestInterceptorIterator.hasNext()) {
RequestInterceptor currentRequestInterceptor = requestInterceptorIterator.next();
request = currentRequestInterceptor.intercept(request);
} }
Response response = chain.proceed(request); Response response = chain.proceed(request);
for (ResponseInterceptor interceptor : mResponseInterceptors) { ListIterator<ResponseInterceptor> responseInterceptorIterator = mResponseInterceptors.listIterator();
response = interceptor.intercept(response);
while (responseInterceptorIterator.hasNext()) {
ResponseInterceptor currentResponseInterceptor = responseInterceptorIterator.next();
response = currentResponseInterceptor.intercept(response);
} }
return response; return response;