Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4582,7 +4582,7 @@
"groupId": "com.squareup.okhttp3",
"artifactId": "okhttp",
"version": "5.3.2",
"nugetVersion": "5.3.2.2",
"nugetVersion": "5.3.2.3",
"nugetId": "Square.OkHttp3",
"extraDependencies": "com.squareup.okhttp3.okhttp-android",
"type": "androidlibrary",
Expand All @@ -4592,7 +4592,7 @@
"groupId": "com.squareup.okhttp3",
"artifactId": "okhttp-android",
"version": "5.3.2",
"nugetVersion": "5.3.2.2",
"nugetVersion": "5.3.2.3",
"nugetId": "Square.OkHttp3.Android",
"type": "androidlibrary",
"mavenRepositoryType": "MavenCentral"
Expand All @@ -4619,7 +4619,7 @@
"groupId": "com.squareup.okhttp3",
"artifactId": "okhttp-jvm",
"version": "5.3.2",
"nugetVersion": "5.3.2.2",
"nugetVersion": "5.3.2.3",
"nugetId": "Square.OkHttp3.JVM",
"type": "androidlibrary",
"mavenRepositoryType": "MavenCentral"
Expand Down
6 changes: 3 additions & 3 deletions docs/artifact-list-with-versions.md
Original file line number Diff line number Diff line change
Expand Up @@ -604,11 +604,11 @@
| 597|com.google.zxing:core |3.5.4 |Xamarin.Google.ZXing.Core |3.5.4.2 |
| 598|com.squareup:javapoet |1.13.0 |Square.JavaPoet |1.13.0.19 |
| 599|com.squareup.okhttp3:logging-interceptor |5.3.2 |Square.OkHttp3.LoggingInterceptor |5.3.2.2 |
| 600|com.squareup.okhttp3:okhttp |5.3.2 |Square.OkHttp3 |5.3.2.2 |
| 601|com.squareup.okhttp3:okhttp-android |5.3.2 |Square.OkHttp3.Android |5.3.2.2 |
| 600|com.squareup.okhttp3:okhttp |5.3.2 |Square.OkHttp3 |5.3.2.3 |
| 601|com.squareup.okhttp3:okhttp-android |5.3.2 |Square.OkHttp3.Android |5.3.2.3 |
| 602|com.squareup.okhttp3:okhttp-brotli |5.3.2 |Square.OkHttp3.OkHttp.Brotli |5.3.2.2 |
| 603|com.squareup.okhttp3:okhttp-java-net-cookiejar |5.3.2 |Square.OkHttp3.JavaNetCookieJar |5.3.2.2 |
| 604|com.squareup.okhttp3:okhttp-jvm |5.3.2 |Square.OkHttp3.JVM |5.3.2.2 |
| 604|com.squareup.okhttp3:okhttp-jvm |5.3.2 |Square.OkHttp3.JVM |5.3.2.3 |
| 605|com.squareup.okhttp3:okhttp-tls |5.3.2 |Square.OkHttp3.OkHttp.TLS |5.3.2.2 |
| 606|com.squareup.okhttp3:okhttp-urlconnection |5.3.2 |Square.OkHttp3.UrlConnection |5.3.2.2 |
| 607|com.squareup.okio:okio |3.17.0 |Square.OkIO |3.17.0 |
Expand Down
66 changes: 66 additions & 0 deletions source/com.squareup.okhttp3/okhttp-android/Additions/Call.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
using System;
using Android.Runtime;
using System.Threading.Tasks;

namespace Square.OkHttp3
{
public static class CallExtensions
{
public static Task<Response> ExecuteAsync(this ICall call)
{
var tcs = new TaskCompletionSource<Response>();

call.Enqueue(
(c, response) =>
{
tcs.SetResult(response);
},
(c, exception) =>
{
if (call.IsCanceled)
{
tcs.SetCanceled();
}
else
{
tcs.SetException(exception);
}
});

return tcs.Task;
}

public static void Enqueue(this ICall call, Action<ICall, Response> onResponse, Action<ICall, Java.IO.IOException> onFailure)
{
call.Enqueue(new ActionCallback(onResponse, onFailure));
}

private class ActionCallback : Java.Lang.Object, global::Square.OkHttp3.ICallback
{
private readonly Action<ICall, Response> onResponse;
private readonly Action<ICall, Java.IO.IOException> onFailure;

public ActionCallback(Action<ICall, Response> onResponse, Action<ICall, Java.IO.IOException> onFailure)
{
this.onResponse = onResponse;
this.onFailure = onFailure;
}

public void OnResponse(ICall call, Response response)
{
if (onResponse != null)
{
onResponse(call, response);
}
}

public void OnFailure(ICall call, Java.IO.IOException exception)
{
if (onFailure != null)
{
onFailure(call, exception);
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
namespace Square.OkHttp3
{
partial class Dispatcher
Comment thread
jonathanpeppers marked this conversation as resolved.
{
public void SetIdleCallback(Java.Lang.IRunnable idleCallback) =>
IdleCallback = idleCallback;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
using System;
using System.Collections.Generic;
using Java.Net;
using Javax.Net.Ssl;

namespace Square.OkHttp3
{
partial class OkHttpClient
{
partial class Builder
Comment thread
jonathanpeppers marked this conversation as resolved.
{
public Builder AddInterceptor(Func<IInterceptorChain, Response> interceptor)
{
return AddInterceptor(new InterceptorImpl(interceptor));
}

public Builder AddNetworkInterceptor(Func<IInterceptorChain, Response> interceptor)
{
return AddNetworkInterceptor(new InterceptorImpl(interceptor));
}

public Builder Authenticator(Func<Route, Response, Request> authenticate)
{
return Authenticator(new AuthenticatorImpl(authenticate));
}

public Builder ProxyAuthenticator(Func<Route, Response, Request> authenticate)
{
return ProxyAuthenticator(new AuthenticatorImpl(authenticate));
}

public Builder Dns(Func<string, IList<InetAddress>> lookup)
{
return Dns(new DnsImpl(lookup));
}

public Builder HostnameVerifier(Func<string, ISSLSession, bool> verify)
{
return HostnameVerifier(new HostnameVerifierImpl(verify));
}

private class AuthenticatorImpl : Java.Lang.Object, IAuthenticator
{
private readonly Func<Route, Response, Request> authenticate;

public AuthenticatorImpl(Func<Route, Response, Request> authenticate)
{
this.authenticate = authenticate;
}

public Request Authenticate(Route p0, Response p1)
{
return authenticate(p0, p1);
}
Comment thread
jonathanpeppers marked this conversation as resolved.
}

private class InterceptorImpl : Java.Lang.Object, IInterceptor
{
private readonly Func<IInterceptorChain, Response> interceptor;

public InterceptorImpl(Func<IInterceptorChain, Response> interceptor)
{
this.interceptor = interceptor;
}

public Response Intercept(IInterceptorChain p0)
{
return interceptor(p0);
}
}

private class DnsImpl : Java.Lang.Object, IDns
{
private readonly Func<string, IList<InetAddress>> lookup;

public DnsImpl(Func<string, IList<InetAddress>> lookup)
{
this.lookup = lookup;
}

public IList<InetAddress> Lookup(string p0)
{
return lookup(p0);
}
}

private class HostnameVerifierImpl : Java.Lang.Object, IHostnameVerifier
{
private readonly Func<string, ISSLSession, bool> verify;

public HostnameVerifierImpl(Func<string, ISSLSession, bool> verify)
{
this.verify = verify;
}

public bool Verify(string hostname, ISSLSession session)
{
return verify(hostname, session);
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
using System;
using System.Threading.Tasks;
using Android.Runtime;

namespace Square.OkHttp3
{
partial class ResponseBody
Comment thread
jonathanpeppers marked this conversation as resolved.
{
public Task<byte[]> BytesAsync()
{
return Task.Run(() => Bytes());
}

public Task<string> StringAsync()
{
return Task.Run(() => String());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ Square.OkHttp3.CacheControl.NoStore() -> bool
Square.OkHttp3.CacheControl.NoTransform() -> bool
Square.OkHttp3.CacheControl.OnlyIfCached() -> bool
Square.OkHttp3.CacheControl.SMaxAgeSeconds() -> int
Square.OkHttp3.CallExtensions
Square.OkHttp3.CertificatePinner
Square.OkHttp3.CertificatePinner.Builder
Square.OkHttp3.CertificatePinner.Builder.Add(string! pattern, params string![]! pins) -> Square.OkHttp3.CertificatePinner.Builder!
Expand Down Expand Up @@ -159,6 +160,7 @@ Square.OkHttp3.Dispatcher.QueuedCalls() -> System.Collections.Generic.IList<Squa
Square.OkHttp3.Dispatcher.QueuedCallsCount() -> int
Square.OkHttp3.Dispatcher.RunningCalls() -> System.Collections.Generic.IList<Square.OkHttp3.ICall!>!
Square.OkHttp3.Dispatcher.RunningCallsCount() -> int
Square.OkHttp3.Dispatcher.SetIdleCallback(Java.Lang.IRunnable! idleCallback) -> void
Square.OkHttp3.Dns
Square.OkHttp3.DnsConsts
Square.OkHttp3.EventListener
Expand Down Expand Up @@ -377,8 +379,11 @@ Square.OkHttp3.OkHttpClient.Address(Square.OkHttp3.HttpUrl! url) -> Square.OkHtt
Square.OkHttp3.OkHttpClient.Authenticator() -> Square.OkHttp3.IAuthenticator!
Square.OkHttp3.OkHttpClient.Builder
Square.OkHttp3.OkHttpClient.Builder.AddInterceptor(Square.OkHttp3.IInterceptor! interceptor) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.AddInterceptor(System.Func<Square.OkHttp3.IInterceptorChain!, Square.OkHttp3.Response!>! interceptor) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.AddNetworkInterceptor(Square.OkHttp3.IInterceptor! interceptor) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.AddNetworkInterceptor(System.Func<Square.OkHttp3.IInterceptorChain!, Square.OkHttp3.Response!>! interceptor) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Authenticator(Square.OkHttp3.IAuthenticator! authenticator) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Authenticator(System.Func<Square.OkHttp3.Route!, Square.OkHttp3.Response!, Square.OkHttp3.Request!>! authenticate) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Build() -> Square.OkHttp3.OkHttpClient!
Square.OkHttp3.OkHttpClient.Builder.Builder() -> void
Square.OkHttp3.OkHttpClient.Builder.Cache(Square.OkHttp3.Cache? cache) -> Square.OkHttp3.OkHttpClient.Builder!
Expand All @@ -394,12 +399,14 @@ Square.OkHttp3.OkHttpClient.Builder.ConnectionSpecs(System.Collections.Generic.I
Square.OkHttp3.OkHttpClient.Builder.CookieJar(Square.OkHttp3.ICookieJar! cookieJar) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Dispatcher(Square.OkHttp3.Dispatcher! dispatcher) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Dns(Square.OkHttp3.IDns! dns) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Dns(System.Func<string!, System.Collections.Generic.IList<Java.Net.InetAddress!>!>! lookup) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.EventListener(Square.OkHttp3.EventListener! eventListener) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.EventListenerFactory(Square.OkHttp3.EventListener.IFactory! eventListenerFactory) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.FastFallback(bool fastFallback) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.FollowRedirects(bool followRedirects) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.FollowSslRedirects(bool followProtocolRedirects) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.HostnameVerifier(Javax.Net.Ssl.IHostnameVerifier! hostnameVerifier) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.HostnameVerifier(System.Func<string!, Javax.Net.Ssl.ISSLSession!, bool>! verify) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Interceptors() -> System.Collections.Generic.IList<Square.OkHttp3.IInterceptor!>!
Square.OkHttp3.OkHttpClient.Builder.MinWebSocketMessageToCompress(long bytes) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.NetworkInterceptors() -> System.Collections.Generic.IList<Square.OkHttp3.IInterceptor!>!
Expand All @@ -409,6 +416,7 @@ Square.OkHttp3.OkHttpClient.Builder.PingInterval_LRDsOJo(long _v_c_kotlin_time_D
Square.OkHttp3.OkHttpClient.Builder.Protocols(System.Collections.Generic.IList<Square.OkHttp3.Protocol!>! protocols) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.Proxy(Java.Net.Proxy? proxy) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.ProxyAuthenticator(Square.OkHttp3.IAuthenticator! proxyAuthenticator) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.ProxyAuthenticator(System.Func<Square.OkHttp3.Route!, Square.OkHttp3.Response!, Square.OkHttp3.Request!>! authenticate) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.ProxySelector(Java.Net.ProxySelector! proxySelector) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.ReadTimeout(Java.Time.Duration! duration) -> Square.OkHttp3.OkHttpClient.Builder!
Square.OkHttp3.OkHttpClient.Builder.ReadTimeout(long timeout, Java.Util.Concurrent.TimeUnit! unit) -> Square.OkHttp3.OkHttpClient.Builder!
Expand Down Expand Up @@ -516,10 +524,12 @@ Square.OkHttp3.ResponseBody
Square.OkHttp3.ResponseBody.ByteStream() -> System.IO.Stream!
Square.OkHttp3.ResponseBody.ByteString() -> Square.OkIO.ByteString!
Square.OkHttp3.ResponseBody.Bytes() -> byte[]!
Square.OkHttp3.ResponseBody.BytesAsync() -> System.Threading.Tasks.Task<byte[]!>!
Square.OkHttp3.ResponseBody.CharStream() -> Java.IO.Reader!
Square.OkHttp3.ResponseBody.ResponseBody() -> void
Square.OkHttp3.ResponseBody.ResponseBody(nint javaReference, Android.Runtime.JniHandleOwnership transfer) -> void
Square.OkHttp3.ResponseBody.String() -> string!
Square.OkHttp3.ResponseBody.StringAsync() -> System.Threading.Tasks.Task<string!>!
Square.OkHttp3.Route
Square.OkHttp3.Route.Address() -> Square.OkHttp3.Address!
Square.OkHttp3.Route.Proxy() -> Java.Net.Proxy!
Expand Down Expand Up @@ -611,6 +621,8 @@ static Square.OkHttp3.Cache.Key(Square.OkHttp3.HttpUrl! url) -> string!
static Square.OkHttp3.CacheControl.ForceCache.get -> Square.OkHttp3.CacheControl!
static Square.OkHttp3.CacheControl.ForceNetwork.get -> Square.OkHttp3.CacheControl!
static Square.OkHttp3.CacheControl.Parse(Square.OkHttp3.Headers! headers) -> Square.OkHttp3.CacheControl!
static Square.OkHttp3.CallExtensions.Enqueue(this Square.OkHttp3.ICall! call, System.Action<Square.OkHttp3.ICall!, Square.OkHttp3.Response!>! onResponse, System.Action<Square.OkHttp3.ICall!, Java.IO.IOException!>! onFailure) -> void
static Square.OkHttp3.CallExtensions.ExecuteAsync(this Square.OkHttp3.ICall! call) -> System.Threading.Tasks.Task<Square.OkHttp3.Response!>!
static Square.OkHttp3.CertificatePinner.Default.get -> Square.OkHttp3.CertificatePinner!
static Square.OkHttp3.CertificatePinner.InvokePin(Java.Security.Cert.Certificate! certificate) -> string!
static Square.OkHttp3.CertificatePinner.Sha1Hash(Java.Security.Cert.X509Certificate! obj) -> Square.OkIO.ByteString!
Expand Down
66 changes: 66 additions & 0 deletions source/com.squareup.okhttp3/okhttp-jvm/Additions/Call.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
using System;
using Android.Runtime;
using System.Threading.Tasks;

namespace Square.OkHttp3
{
public static class CallExtensions
{
public static Task<Response> ExecuteAsync(this ICall call)
{
var tcs = new TaskCompletionSource<Response>();

call.Enqueue(
(c, response) =>
{
tcs.SetResult(response);
},
(c, exception) =>
{
if (call.IsCanceled)
{
tcs.SetCanceled();
}
else
{
tcs.SetException(exception);
}
});

return tcs.Task;
}

public static void Enqueue(this ICall call, Action<ICall, Response> onResponse, Action<ICall, Java.IO.IOException> onFailure)
{
call.Enqueue(new ActionCallback(onResponse, onFailure));
}

private class ActionCallback : Java.Lang.Object, global::Square.OkHttp3.ICallback
{
private readonly Action<ICall, Response> onResponse;
private readonly Action<ICall, Java.IO.IOException> onFailure;

public ActionCallback(Action<ICall, Response> onResponse, Action<ICall, Java.IO.IOException> onFailure)
{
this.onResponse = onResponse;
this.onFailure = onFailure;
}

public void OnResponse(ICall call, Response response)
{
if (onResponse != null)
{
onResponse(call, response);
}
}

public void OnFailure(ICall call, Java.IO.IOException exception)
{
if (onFailure != null)
{
onFailure(call, exception);
}
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
namespace Square.OkHttp3
{
partial class Dispatcher
Comment thread
jonathanpeppers marked this conversation as resolved.
{
public void SetIdleCallback(Java.Lang.IRunnable idleCallback) =>
IdleCallback = idleCallback;
}
}
Loading