OkHttpClient.smali 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867
  1. .class public Lokhttp3/OkHttpClient;
  2. .super Ljava/lang/Object;
  3. .source ""
  4. # interfaces
  5. .implements Ljava/lang/Cloneable;
  6. .implements Lokhttp3/Call$Factory;
  7. .implements Lokhttp3/WebSocket$Factory;
  8. # annotations
  9. .annotation system Ldalvik/annotation/MemberClasses;
  10. value = {
  11. Lokhttp3/OkHttpClient$Builder;
  12. }
  13. .end annotation
  14. # static fields
  15. .field static final DEFAULT_CONNECTION_SPECS:Ljava/util/List;
  16. .annotation system Ldalvik/annotation/Signature;
  17. value = {
  18. "Ljava/util/List<",
  19. "Lokhttp3/ConnectionSpec;",
  20. ">;"
  21. }
  22. .end annotation
  23. .end field
  24. .field static final DEFAULT_PROTOCOLS:Ljava/util/List;
  25. .annotation system Ldalvik/annotation/Signature;
  26. value = {
  27. "Ljava/util/List<",
  28. "Lokhttp3/Protocol;",
  29. ">;"
  30. }
  31. .end annotation
  32. .end field
  33. # instance fields
  34. .field final authenticator:Lokhttp3/Authenticator;
  35. .field final cache:Lokhttp3/Cache;
  36. .field final certificateChainCleaner:Lokhttp3/internal/tls/CertificateChainCleaner;
  37. .field final certificatePinner:Lokhttp3/CertificatePinner;
  38. .field final connectTimeout:I
  39. .field final connectionPool:Lokhttp3/ConnectionPool;
  40. .field final connectionSpecs:Ljava/util/List;
  41. .annotation system Ldalvik/annotation/Signature;
  42. value = {
  43. "Ljava/util/List<",
  44. "Lokhttp3/ConnectionSpec;",
  45. ">;"
  46. }
  47. .end annotation
  48. .end field
  49. .field final cookieJar:Lokhttp3/CookieJar;
  50. .field final dispatcher:Lokhttp3/Dispatcher;
  51. .field final dns:Lokhttp3/Dns;
  52. .field final eventListenerFactory:Lokhttp3/EventListener$Factory;
  53. .field final followRedirects:Z
  54. .field final followSslRedirects:Z
  55. .field final hostnameVerifier:Ljavax/net/ssl/HostnameVerifier;
  56. .field final interceptors:Ljava/util/List;
  57. .annotation system Ldalvik/annotation/Signature;
  58. value = {
  59. "Ljava/util/List<",
  60. "Lokhttp3/Interceptor;",
  61. ">;"
  62. }
  63. .end annotation
  64. .end field
  65. .field final internalCache:Lokhttp3/internal/cache/InternalCache;
  66. .field final networkInterceptors:Ljava/util/List;
  67. .annotation system Ldalvik/annotation/Signature;
  68. value = {
  69. "Ljava/util/List<",
  70. "Lokhttp3/Interceptor;",
  71. ">;"
  72. }
  73. .end annotation
  74. .end field
  75. .field final pingInterval:I
  76. .field final protocols:Ljava/util/List;
  77. .annotation system Ldalvik/annotation/Signature;
  78. value = {
  79. "Ljava/util/List<",
  80. "Lokhttp3/Protocol;",
  81. ">;"
  82. }
  83. .end annotation
  84. .end field
  85. .field final proxy:Ljava/net/Proxy;
  86. .field final proxyAuthenticator:Lokhttp3/Authenticator;
  87. .field final proxySelector:Ljava/net/ProxySelector;
  88. .field final readTimeout:I
  89. .field final retryOnConnectionFailure:Z
  90. .field final socketFactory:Ljavax/net/SocketFactory;
  91. .field final sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  92. .field final writeTimeout:I
  93. # direct methods
  94. .method static constructor <clinit>()V
  95. .locals 5
  96. const/4 v0, 0x2
  97. new-array v1, v0, [Lokhttp3/Protocol;
  98. sget-object v2, Lokhttp3/Protocol;->HTTP_2:Lokhttp3/Protocol;
  99. const/4 v3, 0x0
  100. aput-object v2, v1, v3
  101. sget-object v2, Lokhttp3/Protocol;->HTTP_1_1:Lokhttp3/Protocol;
  102. const/4 v4, 0x1
  103. aput-object v2, v1, v4
  104. invoke-static {v1}, Lokhttp3/internal/Util;->immutableList([Ljava/lang/Object;)Ljava/util/List;
  105. move-result-object v1
  106. sput-object v1, Lokhttp3/OkHttpClient;->DEFAULT_PROTOCOLS:Ljava/util/List;
  107. new-array v0, v0, [Lokhttp3/ConnectionSpec;
  108. sget-object v1, Lokhttp3/ConnectionSpec;->MODERN_TLS:Lokhttp3/ConnectionSpec;
  109. aput-object v1, v0, v3
  110. sget-object v1, Lokhttp3/ConnectionSpec;->CLEARTEXT:Lokhttp3/ConnectionSpec;
  111. aput-object v1, v0, v4
  112. invoke-static {v0}, Lokhttp3/internal/Util;->immutableList([Ljava/lang/Object;)Ljava/util/List;
  113. move-result-object v0
  114. sput-object v0, Lokhttp3/OkHttpClient;->DEFAULT_CONNECTION_SPECS:Ljava/util/List;
  115. new-instance v0, Lokhttp3/OkHttpClient$1;
  116. invoke-direct {v0}, Lokhttp3/OkHttpClient$1;-><init>()V
  117. sput-object v0, Lokhttp3/internal/Internal;->instance:Lokhttp3/internal/Internal;
  118. return-void
  119. .end method
  120. .method public constructor <init>()V
  121. .locals 1
  122. new-instance v0, Lokhttp3/OkHttpClient$Builder;
  123. invoke-direct {v0}, Lokhttp3/OkHttpClient$Builder;-><init>()V
  124. invoke-direct {p0, v0}, Lokhttp3/OkHttpClient;-><init>(Lokhttp3/OkHttpClient$Builder;)V
  125. return-void
  126. .end method
  127. .method constructor <init>(Lokhttp3/OkHttpClient$Builder;)V
  128. .locals 4
  129. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  130. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->dispatcher:Lokhttp3/Dispatcher;
  131. iput-object v0, p0, Lokhttp3/OkHttpClient;->dispatcher:Lokhttp3/Dispatcher;
  132. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->proxy:Ljava/net/Proxy;
  133. iput-object v0, p0, Lokhttp3/OkHttpClient;->proxy:Ljava/net/Proxy;
  134. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->protocols:Ljava/util/List;
  135. iput-object v0, p0, Lokhttp3/OkHttpClient;->protocols:Ljava/util/List;
  136. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->connectionSpecs:Ljava/util/List;
  137. iput-object v0, p0, Lokhttp3/OkHttpClient;->connectionSpecs:Ljava/util/List;
  138. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->interceptors:Ljava/util/List;
  139. invoke-static {v0}, Lokhttp3/internal/Util;->immutableList(Ljava/util/List;)Ljava/util/List;
  140. move-result-object v0
  141. iput-object v0, p0, Lokhttp3/OkHttpClient;->interceptors:Ljava/util/List;
  142. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->networkInterceptors:Ljava/util/List;
  143. invoke-static {v0}, Lokhttp3/internal/Util;->immutableList(Ljava/util/List;)Ljava/util/List;
  144. move-result-object v0
  145. iput-object v0, p0, Lokhttp3/OkHttpClient;->networkInterceptors:Ljava/util/List;
  146. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->eventListenerFactory:Lokhttp3/EventListener$Factory;
  147. iput-object v0, p0, Lokhttp3/OkHttpClient;->eventListenerFactory:Lokhttp3/EventListener$Factory;
  148. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->proxySelector:Ljava/net/ProxySelector;
  149. iput-object v0, p0, Lokhttp3/OkHttpClient;->proxySelector:Ljava/net/ProxySelector;
  150. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->cookieJar:Lokhttp3/CookieJar;
  151. iput-object v0, p0, Lokhttp3/OkHttpClient;->cookieJar:Lokhttp3/CookieJar;
  152. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->cache:Lokhttp3/Cache;
  153. iput-object v0, p0, Lokhttp3/OkHttpClient;->cache:Lokhttp3/Cache;
  154. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->internalCache:Lokhttp3/internal/cache/InternalCache;
  155. iput-object v0, p0, Lokhttp3/OkHttpClient;->internalCache:Lokhttp3/internal/cache/InternalCache;
  156. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->socketFactory:Ljavax/net/SocketFactory;
  157. iput-object v0, p0, Lokhttp3/OkHttpClient;->socketFactory:Ljavax/net/SocketFactory;
  158. iget-object v0, p0, Lokhttp3/OkHttpClient;->connectionSpecs:Ljava/util/List;
  159. invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
  160. move-result-object v0
  161. const/4 v1, 0x0
  162. :cond_0
  163. const/4 v2, 0x0
  164. :goto_0
  165. invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
  166. move-result v3
  167. if-eqz v3, :cond_2
  168. invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
  169. move-result-object v3
  170. check-cast v3, Lokhttp3/ConnectionSpec;
  171. if-nez v2, :cond_1
  172. invoke-virtual {v3}, Lokhttp3/ConnectionSpec;->isTls()Z
  173. move-result v2
  174. if-eqz v2, :cond_0
  175. :cond_1
  176. const/4 v2, 0x1
  177. goto :goto_0
  178. :cond_2
  179. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  180. if-nez v0, :cond_4
  181. if-nez v2, :cond_3
  182. goto :goto_1
  183. :cond_3
  184. invoke-direct {p0}, Lokhttp3/OkHttpClient;->systemDefaultTrustManager()Ljavax/net/ssl/X509TrustManager;
  185. move-result-object v0
  186. invoke-direct {p0, v0}, Lokhttp3/OkHttpClient;->systemDefaultSslSocketFactory(Ljavax/net/ssl/X509TrustManager;)Ljavax/net/ssl/SSLSocketFactory;
  187. move-result-object v1
  188. iput-object v1, p0, Lokhttp3/OkHttpClient;->sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  189. invoke-static {v0}, Lokhttp3/internal/tls/CertificateChainCleaner;->get(Ljavax/net/ssl/X509TrustManager;)Lokhttp3/internal/tls/CertificateChainCleaner;
  190. move-result-object v0
  191. goto :goto_2
  192. :cond_4
  193. :goto_1
  194. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  195. iput-object v0, p0, Lokhttp3/OkHttpClient;->sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  196. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->certificateChainCleaner:Lokhttp3/internal/tls/CertificateChainCleaner;
  197. :goto_2
  198. iput-object v0, p0, Lokhttp3/OkHttpClient;->certificateChainCleaner:Lokhttp3/internal/tls/CertificateChainCleaner;
  199. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->hostnameVerifier:Ljavax/net/ssl/HostnameVerifier;
  200. iput-object v0, p0, Lokhttp3/OkHttpClient;->hostnameVerifier:Ljavax/net/ssl/HostnameVerifier;
  201. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->certificatePinner:Lokhttp3/CertificatePinner;
  202. iget-object v1, p0, Lokhttp3/OkHttpClient;->certificateChainCleaner:Lokhttp3/internal/tls/CertificateChainCleaner;
  203. invoke-virtual {v0, v1}, Lokhttp3/CertificatePinner;->withCertificateChainCleaner(Lokhttp3/internal/tls/CertificateChainCleaner;)Lokhttp3/CertificatePinner;
  204. move-result-object v0
  205. iput-object v0, p0, Lokhttp3/OkHttpClient;->certificatePinner:Lokhttp3/CertificatePinner;
  206. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->proxyAuthenticator:Lokhttp3/Authenticator;
  207. iput-object v0, p0, Lokhttp3/OkHttpClient;->proxyAuthenticator:Lokhttp3/Authenticator;
  208. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->authenticator:Lokhttp3/Authenticator;
  209. iput-object v0, p0, Lokhttp3/OkHttpClient;->authenticator:Lokhttp3/Authenticator;
  210. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->connectionPool:Lokhttp3/ConnectionPool;
  211. iput-object v0, p0, Lokhttp3/OkHttpClient;->connectionPool:Lokhttp3/ConnectionPool;
  212. iget-object v0, p1, Lokhttp3/OkHttpClient$Builder;->dns:Lokhttp3/Dns;
  213. iput-object v0, p0, Lokhttp3/OkHttpClient;->dns:Lokhttp3/Dns;
  214. iget-boolean v0, p1, Lokhttp3/OkHttpClient$Builder;->followSslRedirects:Z
  215. iput-boolean v0, p0, Lokhttp3/OkHttpClient;->followSslRedirects:Z
  216. iget-boolean v0, p1, Lokhttp3/OkHttpClient$Builder;->followRedirects:Z
  217. iput-boolean v0, p0, Lokhttp3/OkHttpClient;->followRedirects:Z
  218. iget-boolean v0, p1, Lokhttp3/OkHttpClient$Builder;->retryOnConnectionFailure:Z
  219. iput-boolean v0, p0, Lokhttp3/OkHttpClient;->retryOnConnectionFailure:Z
  220. iget v0, p1, Lokhttp3/OkHttpClient$Builder;->connectTimeout:I
  221. iput v0, p0, Lokhttp3/OkHttpClient;->connectTimeout:I
  222. iget v0, p1, Lokhttp3/OkHttpClient$Builder;->readTimeout:I
  223. iput v0, p0, Lokhttp3/OkHttpClient;->readTimeout:I
  224. iget v0, p1, Lokhttp3/OkHttpClient$Builder;->writeTimeout:I
  225. iput v0, p0, Lokhttp3/OkHttpClient;->writeTimeout:I
  226. iget p1, p1, Lokhttp3/OkHttpClient$Builder;->pingInterval:I
  227. iput p1, p0, Lokhttp3/OkHttpClient;->pingInterval:I
  228. iget-object p1, p0, Lokhttp3/OkHttpClient;->interceptors:Ljava/util/List;
  229. const/4 v0, 0x0
  230. invoke-interface {p1, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
  231. move-result p1
  232. if-nez p1, :cond_6
  233. iget-object p1, p0, Lokhttp3/OkHttpClient;->networkInterceptors:Ljava/util/List;
  234. invoke-interface {p1, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
  235. move-result p1
  236. if-nez p1, :cond_5
  237. return-void
  238. :cond_5
  239. new-instance p1, Ljava/lang/IllegalStateException;
  240. new-instance v0, Ljava/lang/StringBuilder;
  241. invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
  242. const-string v1, "Null network interceptor: "
  243. invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  244. iget-object v1, p0, Lokhttp3/OkHttpClient;->networkInterceptors:Ljava/util/List;
  245. invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  246. invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  247. move-result-object v0
  248. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  249. throw p1
  250. :cond_6
  251. new-instance p1, Ljava/lang/IllegalStateException;
  252. new-instance v0, Ljava/lang/StringBuilder;
  253. invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
  254. const-string v1, "Null interceptor: "
  255. invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  256. iget-object v1, p0, Lokhttp3/OkHttpClient;->interceptors:Ljava/util/List;
  257. invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  258. invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  259. move-result-object v0
  260. invoke-direct {p1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  261. goto :goto_4
  262. :goto_3
  263. throw p1
  264. :goto_4
  265. goto :goto_3
  266. .end method
  267. .method private systemDefaultSslSocketFactory(Ljavax/net/ssl/X509TrustManager;)Ljavax/net/ssl/SSLSocketFactory;
  268. .locals 3
  269. :try_start_0
  270. const-string v0, "TLS"
  271. invoke-static {v0}, Ljavax/net/ssl/SSLContext;->getInstance(Ljava/lang/String;)Ljavax/net/ssl/SSLContext;
  272. move-result-object v0
  273. const/4 v1, 0x1
  274. new-array v1, v1, [Ljavax/net/ssl/TrustManager;
  275. const/4 v2, 0x0
  276. aput-object p1, v1, v2
  277. const/4 p1, 0x0
  278. invoke-virtual {v0, p1, v1, p1}, Ljavax/net/ssl/SSLContext;->init([Ljavax/net/ssl/KeyManager;[Ljavax/net/ssl/TrustManager;Ljava/security/SecureRandom;)V
  279. invoke-virtual {v0}, Ljavax/net/ssl/SSLContext;->getSocketFactory()Ljavax/net/ssl/SSLSocketFactory;
  280. move-result-object p1
  281. :try_end_0
  282. .catch Ljava/security/GeneralSecurityException; {:try_start_0 .. :try_end_0} :catch_0
  283. return-object p1
  284. :catch_0
  285. move-exception p1
  286. const-string v0, "No System TLS"
  287. invoke-static {v0, p1}, Lokhttp3/internal/Util;->assertionError(Ljava/lang/String;Ljava/lang/Exception;)Ljava/lang/AssertionError;
  288. move-result-object p1
  289. throw p1
  290. .end method
  291. .method private systemDefaultTrustManager()Ljavax/net/ssl/X509TrustManager;
  292. .locals 4
  293. :try_start_0
  294. invoke-static {}, Ljavax/net/ssl/TrustManagerFactory;->getDefaultAlgorithm()Ljava/lang/String;
  295. move-result-object v0
  296. invoke-static {v0}, Ljavax/net/ssl/TrustManagerFactory;->getInstance(Ljava/lang/String;)Ljavax/net/ssl/TrustManagerFactory;
  297. move-result-object v0
  298. const/4 v1, 0x0
  299. invoke-virtual {v0, v1}, Ljavax/net/ssl/TrustManagerFactory;->init(Ljava/security/KeyStore;)V
  300. invoke-virtual {v0}, Ljavax/net/ssl/TrustManagerFactory;->getTrustManagers()[Ljavax/net/ssl/TrustManager;
  301. move-result-object v0
  302. array-length v1, v0
  303. const/4 v2, 0x1
  304. if-ne v1, v2, :cond_0
  305. const/4 v1, 0x0
  306. aget-object v2, v0, v1
  307. instance-of v2, v2, Ljavax/net/ssl/X509TrustManager;
  308. if-eqz v2, :cond_0
  309. aget-object v0, v0, v1
  310. check-cast v0, Ljavax/net/ssl/X509TrustManager;
  311. return-object v0
  312. :cond_0
  313. new-instance v1, Ljava/lang/IllegalStateException;
  314. new-instance v2, Ljava/lang/StringBuilder;
  315. invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
  316. const-string v3, "Unexpected default trust managers:"
  317. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  318. invoke-static {v0}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;
  319. move-result-object v0
  320. invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  321. invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  322. move-result-object v0
  323. invoke-direct {v1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
  324. throw v1
  325. :try_end_0
  326. .catch Ljava/security/GeneralSecurityException; {:try_start_0 .. :try_end_0} :catch_0
  327. :catch_0
  328. move-exception v0
  329. const-string v1, "No System TLS"
  330. invoke-static {v1, v0}, Lokhttp3/internal/Util;->assertionError(Ljava/lang/String;Ljava/lang/Exception;)Ljava/lang/AssertionError;
  331. move-result-object v0
  332. throw v0
  333. .end method
  334. # virtual methods
  335. .method public authenticator()Lokhttp3/Authenticator;
  336. .locals 1
  337. iget-object v0, p0, Lokhttp3/OkHttpClient;->authenticator:Lokhttp3/Authenticator;
  338. return-object v0
  339. .end method
  340. .method public cache()Lokhttp3/Cache;
  341. .locals 1
  342. iget-object v0, p0, Lokhttp3/OkHttpClient;->cache:Lokhttp3/Cache;
  343. return-object v0
  344. .end method
  345. .method public certificatePinner()Lokhttp3/CertificatePinner;
  346. .locals 1
  347. iget-object v0, p0, Lokhttp3/OkHttpClient;->certificatePinner:Lokhttp3/CertificatePinner;
  348. return-object v0
  349. .end method
  350. .method public connectTimeoutMillis()I
  351. .locals 1
  352. iget v0, p0, Lokhttp3/OkHttpClient;->connectTimeout:I
  353. return v0
  354. .end method
  355. .method public connectionPool()Lokhttp3/ConnectionPool;
  356. .locals 1
  357. iget-object v0, p0, Lokhttp3/OkHttpClient;->connectionPool:Lokhttp3/ConnectionPool;
  358. return-object v0
  359. .end method
  360. .method public connectionSpecs()Ljava/util/List;
  361. .locals 1
  362. .annotation system Ldalvik/annotation/Signature;
  363. value = {
  364. "()",
  365. "Ljava/util/List<",
  366. "Lokhttp3/ConnectionSpec;",
  367. ">;"
  368. }
  369. .end annotation
  370. iget-object v0, p0, Lokhttp3/OkHttpClient;->connectionSpecs:Ljava/util/List;
  371. return-object v0
  372. .end method
  373. .method public cookieJar()Lokhttp3/CookieJar;
  374. .locals 1
  375. iget-object v0, p0, Lokhttp3/OkHttpClient;->cookieJar:Lokhttp3/CookieJar;
  376. return-object v0
  377. .end method
  378. .method public dispatcher()Lokhttp3/Dispatcher;
  379. .locals 1
  380. iget-object v0, p0, Lokhttp3/OkHttpClient;->dispatcher:Lokhttp3/Dispatcher;
  381. return-object v0
  382. .end method
  383. .method public dns()Lokhttp3/Dns;
  384. .locals 1
  385. iget-object v0, p0, Lokhttp3/OkHttpClient;->dns:Lokhttp3/Dns;
  386. return-object v0
  387. .end method
  388. .method public eventListenerFactory()Lokhttp3/EventListener$Factory;
  389. .locals 1
  390. iget-object v0, p0, Lokhttp3/OkHttpClient;->eventListenerFactory:Lokhttp3/EventListener$Factory;
  391. return-object v0
  392. .end method
  393. .method public followRedirects()Z
  394. .locals 1
  395. iget-boolean v0, p0, Lokhttp3/OkHttpClient;->followRedirects:Z
  396. return v0
  397. .end method
  398. .method public followSslRedirects()Z
  399. .locals 1
  400. iget-boolean v0, p0, Lokhttp3/OkHttpClient;->followSslRedirects:Z
  401. return v0
  402. .end method
  403. .method public hostnameVerifier()Ljavax/net/ssl/HostnameVerifier;
  404. .locals 1
  405. iget-object v0, p0, Lokhttp3/OkHttpClient;->hostnameVerifier:Ljavax/net/ssl/HostnameVerifier;
  406. return-object v0
  407. .end method
  408. .method public interceptors()Ljava/util/List;
  409. .locals 1
  410. .annotation system Ldalvik/annotation/Signature;
  411. value = {
  412. "()",
  413. "Ljava/util/List<",
  414. "Lokhttp3/Interceptor;",
  415. ">;"
  416. }
  417. .end annotation
  418. iget-object v0, p0, Lokhttp3/OkHttpClient;->interceptors:Ljava/util/List;
  419. return-object v0
  420. .end method
  421. .method internalCache()Lokhttp3/internal/cache/InternalCache;
  422. .locals 1
  423. iget-object v0, p0, Lokhttp3/OkHttpClient;->cache:Lokhttp3/Cache;
  424. if-eqz v0, :cond_0
  425. iget-object v0, v0, Lokhttp3/Cache;->internalCache:Lokhttp3/internal/cache/InternalCache;
  426. goto :goto_0
  427. :cond_0
  428. iget-object v0, p0, Lokhttp3/OkHttpClient;->internalCache:Lokhttp3/internal/cache/InternalCache;
  429. :goto_0
  430. return-object v0
  431. .end method
  432. .method public networkInterceptors()Ljava/util/List;
  433. .locals 1
  434. .annotation system Ldalvik/annotation/Signature;
  435. value = {
  436. "()",
  437. "Ljava/util/List<",
  438. "Lokhttp3/Interceptor;",
  439. ">;"
  440. }
  441. .end annotation
  442. iget-object v0, p0, Lokhttp3/OkHttpClient;->networkInterceptors:Ljava/util/List;
  443. return-object v0
  444. .end method
  445. .method public newBuilder()Lokhttp3/OkHttpClient$Builder;
  446. .locals 1
  447. new-instance v0, Lokhttp3/OkHttpClient$Builder;
  448. invoke-direct {v0, p0}, Lokhttp3/OkHttpClient$Builder;-><init>(Lokhttp3/OkHttpClient;)V
  449. return-object v0
  450. .end method
  451. .method public newCall(Lokhttp3/Request;)Lokhttp3/Call;
  452. .locals 1
  453. const/4 v0, 0x0
  454. invoke-static {p0, p1, v0}, Lokhttp3/RealCall;->newRealCall(Lokhttp3/OkHttpClient;Lokhttp3/Request;Z)Lokhttp3/RealCall;
  455. move-result-object p1
  456. return-object p1
  457. .end method
  458. .method public newWebSocket(Lokhttp3/Request;Lokhttp3/WebSocketListener;)Lokhttp3/WebSocket;
  459. .locals 2
  460. new-instance v0, Lokhttp3/internal/ws/RealWebSocket;
  461. new-instance v1, Ljava/util/Random;
  462. invoke-direct {v1}, Ljava/util/Random;-><init>()V
  463. invoke-direct {v0, p1, p2, v1}, Lokhttp3/internal/ws/RealWebSocket;-><init>(Lokhttp3/Request;Lokhttp3/WebSocketListener;Ljava/util/Random;)V
  464. invoke-virtual {v0, p0}, Lokhttp3/internal/ws/RealWebSocket;->connect(Lokhttp3/OkHttpClient;)V
  465. return-object v0
  466. .end method
  467. .method public pingIntervalMillis()I
  468. .locals 1
  469. iget v0, p0, Lokhttp3/OkHttpClient;->pingInterval:I
  470. return v0
  471. .end method
  472. .method public protocols()Ljava/util/List;
  473. .locals 1
  474. .annotation system Ldalvik/annotation/Signature;
  475. value = {
  476. "()",
  477. "Ljava/util/List<",
  478. "Lokhttp3/Protocol;",
  479. ">;"
  480. }
  481. .end annotation
  482. iget-object v0, p0, Lokhttp3/OkHttpClient;->protocols:Ljava/util/List;
  483. return-object v0
  484. .end method
  485. .method public proxy()Ljava/net/Proxy;
  486. .locals 1
  487. iget-object v0, p0, Lokhttp3/OkHttpClient;->proxy:Ljava/net/Proxy;
  488. return-object v0
  489. .end method
  490. .method public proxyAuthenticator()Lokhttp3/Authenticator;
  491. .locals 1
  492. iget-object v0, p0, Lokhttp3/OkHttpClient;->proxyAuthenticator:Lokhttp3/Authenticator;
  493. return-object v0
  494. .end method
  495. .method public proxySelector()Ljava/net/ProxySelector;
  496. .locals 1
  497. iget-object v0, p0, Lokhttp3/OkHttpClient;->proxySelector:Ljava/net/ProxySelector;
  498. return-object v0
  499. .end method
  500. .method public readTimeoutMillis()I
  501. .locals 1
  502. iget v0, p0, Lokhttp3/OkHttpClient;->readTimeout:I
  503. return v0
  504. .end method
  505. .method public retryOnConnectionFailure()Z
  506. .locals 1
  507. iget-boolean v0, p0, Lokhttp3/OkHttpClient;->retryOnConnectionFailure:Z
  508. return v0
  509. .end method
  510. .method public socketFactory()Ljavax/net/SocketFactory;
  511. .locals 1
  512. iget-object v0, p0, Lokhttp3/OkHttpClient;->socketFactory:Ljavax/net/SocketFactory;
  513. return-object v0
  514. .end method
  515. .method public sslSocketFactory()Ljavax/net/ssl/SSLSocketFactory;
  516. .locals 1
  517. iget-object v0, p0, Lokhttp3/OkHttpClient;->sslSocketFactory:Ljavax/net/ssl/SSLSocketFactory;
  518. return-object v0
  519. .end method
  520. .method public writeTimeoutMillis()I
  521. .locals 1
  522. iget v0, p0, Lokhttp3/OkHttpClient;->writeTimeout:I
  523. return v0
  524. .end method