package org.springframework.http.client;
import com.prateekj.snooper.AndroidSnooper;
import com.prateekj.snooper.networksnooper.model.HttpCall;
import org.springframework.http.HttpRequest;
import java.io.IOException;
public class SnooperInterceptor implements ClientHttpRequestInterceptor {
@Override
public ClientHttpResponse intercept(HttpRequest request, byte[] byteArray,
ClientHttpRequestExecution execution) throws IOException {
ClientHttpResponse streamResponse = execution.execute(request, byteArray);
BufferingClientHttpResponseWrapper httpResponse = new BufferingClientHttpResponseWrapper(streamResponse);
AndroidSnooper snooper = AndroidSnooper.getInstance();
HttpCall call = new SpringHttpRequestTransformer().transform(request, byteArray, httpResponse);
snooper.record(call);
return httpResponse;
}
}