com.eg.agent.android.instrumentation.okhttp2.OkHttp2Instrumentation Maven / Gradle / Ivy
package com.eg.agent.android.instrumentation.okhttp2;
/*import com.newrelic.agent.android.instrumentation.HttpURLConnectionExtension;
import com.newrelic.agent.android.instrumentation.HttpsURLConnectionExtension;
import com.newrelic.agent.android.instrumentation.ReplaceCallSite;
import com.newrelic.agent.android.logging.AgentLog;
import com.newrelic.agent.android.logging.AgentLogManager;*/
import com.eg.agent.android.instrumentation.NetworkInformation.HttpURLConnectionExtension;
import com.eg.agent.android.instrumentation.NetworkInformation.HttpsURLConnectionExtension;
import com.eg.agent.android.instrumentation.ReplaceCallSite;
import com.eg.agent.android.logging.AgentLog;
import com.eg.agent.android.logging.AgentLogManager;
import com.squareup.okhttp.Call;
import com.squareup.okhttp.OkHttpClient;
import com.squareup.okhttp.OkUrlFactory;
import com.squareup.okhttp.Request;
import com.squareup.okhttp.Request.Builder;
import com.squareup.okhttp.Response;
import com.squareup.okhttp.ResponseBody;
import org.apache.http.HttpHost;
import java.net.HttpURLConnection;
import java.net.URL;
import javax.net.ssl.HttpsURLConnection;
public class OkHttp2Instrumentation {
private static final AgentLog log = AgentLogManager.getAgentLog();
private OkHttp2Instrumentation() {
}
@ReplaceCallSite
public static Request build(Builder builder) {
return new RequestBuilderExtension(builder).build();
}
@ReplaceCallSite
public static Call newCall(OkHttpClient client, Request request) {
return new CallExtension(client, request, client.newCall(request));
}
@ReplaceCallSite
public static Response.Builder body(Response.Builder builder, ResponseBody body) {
return new ResponseBuilderExtension(builder).body(body);
}
@ReplaceCallSite
public static Response.Builder newBuilder(Response.Builder builder) {
return new ResponseBuilderExtension(builder);
}
@ReplaceCallSite(isStatic = false, scope = "com.squareup.okhttp.OkUrlFactory")
public static HttpURLConnection open(OkUrlFactory factory, URL url) {
HttpURLConnection conn = factory.open(url);
String protocol = url.getProtocol();
if (protocol.equals(HttpHost.DEFAULT_SCHEME_NAME)) {
return new HttpURLConnectionExtension(conn);
}
if (protocol.equals("https") && (conn instanceof HttpsURLConnection)) {
return new HttpsURLConnectionExtension((HttpsURLConnection) conn);
}
return new HttpURLConnectionExtension(conn);
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy