Cache.smali 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790
  1. .class public final Lokhttp3/Cache;
  2. .super Ljava/lang/Object;
  3. .source ""
  4. # interfaces
  5. .implements Ljava/io/Closeable;
  6. .implements Ljava/io/Flushable;
  7. # annotations
  8. .annotation system Ldalvik/annotation/MemberClasses;
  9. value = {
  10. Lokhttp3/Cache$CacheResponseBody;,
  11. Lokhttp3/Cache$Entry;,
  12. Lokhttp3/Cache$CacheRequestImpl;
  13. }
  14. .end annotation
  15. # static fields
  16. .field private static final ENTRY_BODY:I = 0x1
  17. .field private static final ENTRY_COUNT:I = 0x2
  18. .field private static final ENTRY_METADATA:I = 0x0
  19. .field private static final VERSION:I = 0x31191
  20. # instance fields
  21. .field final cache:Lokhttp3/internal/cache/DiskLruCache;
  22. .field private hitCount:I
  23. .field final internalCache:Lokhttp3/internal/cache/InternalCache;
  24. .field private networkCount:I
  25. .field private requestCount:I
  26. .field writeAbortCount:I
  27. .field writeSuccessCount:I
  28. # direct methods
  29. .method public constructor <init>(Ljava/io/File;J)V
  30. .locals 1
  31. sget-object v0, Lokhttp3/internal/io/FileSystem;->SYSTEM:Lokhttp3/internal/io/FileSystem;
  32. invoke-direct {p0, p1, p2, p3, v0}, Lokhttp3/Cache;-><init>(Ljava/io/File;JLokhttp3/internal/io/FileSystem;)V
  33. return-void
  34. .end method
  35. .method constructor <init>(Ljava/io/File;JLokhttp3/internal/io/FileSystem;)V
  36. .locals 7
  37. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  38. new-instance v0, Lokhttp3/Cache$1;
  39. invoke-direct {v0, p0}, Lokhttp3/Cache$1;-><init>(Lokhttp3/Cache;)V
  40. iput-object v0, p0, Lokhttp3/Cache;->internalCache:Lokhttp3/internal/cache/InternalCache;
  41. const v3, 0x31191
  42. const/4 v4, 0x2
  43. move-object v1, p4
  44. move-object v2, p1
  45. move-wide v5, p2
  46. invoke-static/range {v1 .. v6}, Lokhttp3/internal/cache/DiskLruCache;->create(Lokhttp3/internal/io/FileSystem;Ljava/io/File;IIJ)Lokhttp3/internal/cache/DiskLruCache;
  47. move-result-object p1
  48. iput-object p1, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  49. return-void
  50. .end method
  51. .method private abortQuietly(Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  52. .locals 0
  53. if-eqz p1, :cond_0
  54. :try_start_0
  55. invoke-virtual {p1}, Lokhttp3/internal/cache/DiskLruCache$Editor;->abort()V
  56. :try_end_0
  57. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
  58. :catch_0
  59. :cond_0
  60. return-void
  61. .end method
  62. .method public static key(Lokhttp3/HttpUrl;)Ljava/lang/String;
  63. .locals 0
  64. invoke-virtual {p0}, Lokhttp3/HttpUrl;->toString()Ljava/lang/String;
  65. move-result-object p0
  66. invoke-static {p0}, Lokio/ByteString;->encodeUtf8(Ljava/lang/String;)Lokio/ByteString;
  67. move-result-object p0
  68. invoke-virtual {p0}, Lokio/ByteString;->md5()Lokio/ByteString;
  69. move-result-object p0
  70. invoke-virtual {p0}, Lokio/ByteString;->hex()Ljava/lang/String;
  71. move-result-object p0
  72. return-object p0
  73. .end method
  74. .method static readInt(Lokio/BufferedSource;)I
  75. .locals 5
  76. .annotation system Ldalvik/annotation/Throws;
  77. value = {
  78. Ljava/io/IOException;
  79. }
  80. .end annotation
  81. :try_start_0
  82. invoke-interface {p0}, Lokio/BufferedSource;->readDecimalLong()J
  83. move-result-wide v0
  84. invoke-interface {p0}, Lokio/BufferedSource;->readUtf8LineStrict()Ljava/lang/String;
  85. move-result-object p0
  86. const-wide/16 v2, 0x0
  87. cmp-long v4, v0, v2
  88. if-ltz v4, :cond_0
  89. const-wide/32 v2, 0x7fffffff
  90. cmp-long v4, v0, v2
  91. if-gtz v4, :cond_0
  92. invoke-virtual {p0}, Ljava/lang/String;->isEmpty()Z
  93. move-result v2
  94. if-eqz v2, :cond_0
  95. long-to-int p0, v0
  96. return p0
  97. :cond_0
  98. new-instance v2, Ljava/io/IOException;
  99. new-instance v3, Ljava/lang/StringBuilder;
  100. invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
  101. const-string v4, "expected an int but was \""
  102. invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  103. invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
  104. invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  105. const-string p0, "\""
  106. invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  107. invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  108. move-result-object p0
  109. invoke-direct {v2, p0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
  110. throw v2
  111. :try_end_0
  112. .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0
  113. :catch_0
  114. move-exception p0
  115. new-instance v0, Ljava/io/IOException;
  116. invoke-virtual {p0}, Ljava/lang/NumberFormatException;->getMessage()Ljava/lang/String;
  117. move-result-object p0
  118. invoke-direct {v0, p0}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
  119. throw v0
  120. .end method
  121. # virtual methods
  122. .method public close()V
  123. .locals 1
  124. .annotation system Ldalvik/annotation/Throws;
  125. value = {
  126. Ljava/io/IOException;
  127. }
  128. .end annotation
  129. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  130. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->close()V
  131. return-void
  132. .end method
  133. .method public delete()V
  134. .locals 1
  135. .annotation system Ldalvik/annotation/Throws;
  136. value = {
  137. Ljava/io/IOException;
  138. }
  139. .end annotation
  140. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  141. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->delete()V
  142. return-void
  143. .end method
  144. .method public directory()Ljava/io/File;
  145. .locals 1
  146. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  147. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->getDirectory()Ljava/io/File;
  148. move-result-object v0
  149. return-object v0
  150. .end method
  151. .method public evictAll()V
  152. .locals 1
  153. .annotation system Ldalvik/annotation/Throws;
  154. value = {
  155. Ljava/io/IOException;
  156. }
  157. .end annotation
  158. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  159. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->evictAll()V
  160. return-void
  161. .end method
  162. .method public flush()V
  163. .locals 1
  164. .annotation system Ldalvik/annotation/Throws;
  165. value = {
  166. Ljava/io/IOException;
  167. }
  168. .end annotation
  169. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  170. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->flush()V
  171. return-void
  172. .end method
  173. .method get(Lokhttp3/Request;)Lokhttp3/Response;
  174. .locals 4
  175. invoke-virtual {p1}, Lokhttp3/Request;->url()Lokhttp3/HttpUrl;
  176. move-result-object v0
  177. invoke-static {v0}, Lokhttp3/Cache;->key(Lokhttp3/HttpUrl;)Ljava/lang/String;
  178. move-result-object v0
  179. const/4 v1, 0x0
  180. :try_start_0
  181. iget-object v2, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  182. invoke-virtual {v2, v0}, Lokhttp3/internal/cache/DiskLruCache;->get(Ljava/lang/String;)Lokhttp3/internal/cache/DiskLruCache$Snapshot;
  183. move-result-object v0
  184. :try_end_0
  185. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1
  186. if-nez v0, :cond_0
  187. return-object v1
  188. :cond_0
  189. :try_start_1
  190. new-instance v2, Lokhttp3/Cache$Entry;
  191. const/4 v3, 0x0
  192. invoke-virtual {v0, v3}, Lokhttp3/internal/cache/DiskLruCache$Snapshot;->getSource(I)Lokio/Source;
  193. move-result-object v3
  194. invoke-direct {v2, v3}, Lokhttp3/Cache$Entry;-><init>(Lokio/Source;)V
  195. :try_end_1
  196. .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0
  197. invoke-virtual {v2, v0}, Lokhttp3/Cache$Entry;->response(Lokhttp3/internal/cache/DiskLruCache$Snapshot;)Lokhttp3/Response;
  198. move-result-object v0
  199. invoke-virtual {v2, p1, v0}, Lokhttp3/Cache$Entry;->matches(Lokhttp3/Request;Lokhttp3/Response;)Z
  200. move-result p1
  201. if-nez p1, :cond_1
  202. invoke-virtual {v0}, Lokhttp3/Response;->body()Lokhttp3/ResponseBody;
  203. move-result-object p1
  204. invoke-static {p1}, Lokhttp3/internal/Util;->closeQuietly(Ljava/io/Closeable;)V
  205. return-object v1
  206. :cond_1
  207. return-object v0
  208. :catch_0
  209. invoke-static {v0}, Lokhttp3/internal/Util;->closeQuietly(Ljava/io/Closeable;)V
  210. :catch_1
  211. return-object v1
  212. .end method
  213. .method public declared-synchronized hitCount()I
  214. .locals 1
  215. monitor-enter p0
  216. :try_start_0
  217. iget v0, p0, Lokhttp3/Cache;->hitCount:I
  218. :try_end_0
  219. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  220. monitor-exit p0
  221. return v0
  222. :catchall_0
  223. move-exception v0
  224. monitor-exit p0
  225. throw v0
  226. .end method
  227. .method public initialize()V
  228. .locals 1
  229. .annotation system Ldalvik/annotation/Throws;
  230. value = {
  231. Ljava/io/IOException;
  232. }
  233. .end annotation
  234. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  235. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->initialize()V
  236. return-void
  237. .end method
  238. .method public isClosed()Z
  239. .locals 1
  240. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  241. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->isClosed()Z
  242. move-result v0
  243. return v0
  244. .end method
  245. .method public maxSize()J
  246. .locals 2
  247. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  248. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->getMaxSize()J
  249. move-result-wide v0
  250. return-wide v0
  251. .end method
  252. .method public declared-synchronized networkCount()I
  253. .locals 1
  254. monitor-enter p0
  255. :try_start_0
  256. iget v0, p0, Lokhttp3/Cache;->networkCount:I
  257. :try_end_0
  258. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  259. monitor-exit p0
  260. return v0
  261. :catchall_0
  262. move-exception v0
  263. monitor-exit p0
  264. throw v0
  265. .end method
  266. .method put(Lokhttp3/Response;)Lokhttp3/internal/cache/CacheRequest;
  267. .locals 3
  268. invoke-virtual {p1}, Lokhttp3/Response;->request()Lokhttp3/Request;
  269. move-result-object v0
  270. invoke-virtual {v0}, Lokhttp3/Request;->method()Ljava/lang/String;
  271. move-result-object v0
  272. invoke-virtual {p1}, Lokhttp3/Response;->request()Lokhttp3/Request;
  273. move-result-object v1
  274. invoke-virtual {v1}, Lokhttp3/Request;->method()Ljava/lang/String;
  275. move-result-object v1
  276. invoke-static {v1}, Lokhttp3/internal/http/HttpMethod;->invalidatesCache(Ljava/lang/String;)Z
  277. move-result v1
  278. const/4 v2, 0x0
  279. if-eqz v1, :cond_0
  280. :try_start_0
  281. invoke-virtual {p1}, Lokhttp3/Response;->request()Lokhttp3/Request;
  282. move-result-object p1
  283. invoke-virtual {p0, p1}, Lokhttp3/Cache;->remove(Lokhttp3/Request;)V
  284. :try_end_0
  285. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
  286. :catch_0
  287. return-object v2
  288. :cond_0
  289. const-string v1, "GET"
  290. invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  291. move-result v0
  292. if-nez v0, :cond_1
  293. return-object v2
  294. :cond_1
  295. invoke-static {p1}, Lokhttp3/internal/http/HttpHeaders;->hasVaryAll(Lokhttp3/Response;)Z
  296. move-result v0
  297. if-eqz v0, :cond_2
  298. return-object v2
  299. :cond_2
  300. new-instance v0, Lokhttp3/Cache$Entry;
  301. invoke-direct {v0, p1}, Lokhttp3/Cache$Entry;-><init>(Lokhttp3/Response;)V
  302. :try_start_1
  303. iget-object v1, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  304. invoke-virtual {p1}, Lokhttp3/Response;->request()Lokhttp3/Request;
  305. move-result-object p1
  306. invoke-virtual {p1}, Lokhttp3/Request;->url()Lokhttp3/HttpUrl;
  307. move-result-object p1
  308. invoke-static {p1}, Lokhttp3/Cache;->key(Lokhttp3/HttpUrl;)Ljava/lang/String;
  309. move-result-object p1
  310. invoke-virtual {v1, p1}, Lokhttp3/internal/cache/DiskLruCache;->edit(Ljava/lang/String;)Lokhttp3/internal/cache/DiskLruCache$Editor;
  311. move-result-object p1
  312. :try_end_1
  313. .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_1
  314. if-nez p1, :cond_3
  315. return-object v2
  316. :cond_3
  317. :try_start_2
  318. invoke-virtual {v0, p1}, Lokhttp3/Cache$Entry;->writeTo(Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  319. new-instance v0, Lokhttp3/Cache$CacheRequestImpl;
  320. invoke-direct {v0, p0, p1}, Lokhttp3/Cache$CacheRequestImpl;-><init>(Lokhttp3/Cache;Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  321. :try_end_2
  322. .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_2
  323. return-object v0
  324. :catch_1
  325. move-object p1, v2
  326. :catch_2
  327. invoke-direct {p0, p1}, Lokhttp3/Cache;->abortQuietly(Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  328. return-object v2
  329. .end method
  330. .method remove(Lokhttp3/Request;)V
  331. .locals 1
  332. .annotation system Ldalvik/annotation/Throws;
  333. value = {
  334. Ljava/io/IOException;
  335. }
  336. .end annotation
  337. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  338. invoke-virtual {p1}, Lokhttp3/Request;->url()Lokhttp3/HttpUrl;
  339. move-result-object p1
  340. invoke-static {p1}, Lokhttp3/Cache;->key(Lokhttp3/HttpUrl;)Ljava/lang/String;
  341. move-result-object p1
  342. invoke-virtual {v0, p1}, Lokhttp3/internal/cache/DiskLruCache;->remove(Ljava/lang/String;)Z
  343. return-void
  344. .end method
  345. .method public declared-synchronized requestCount()I
  346. .locals 1
  347. monitor-enter p0
  348. :try_start_0
  349. iget v0, p0, Lokhttp3/Cache;->requestCount:I
  350. :try_end_0
  351. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  352. monitor-exit p0
  353. return v0
  354. :catchall_0
  355. move-exception v0
  356. monitor-exit p0
  357. throw v0
  358. .end method
  359. .method public size()J
  360. .locals 2
  361. .annotation system Ldalvik/annotation/Throws;
  362. value = {
  363. Ljava/io/IOException;
  364. }
  365. .end annotation
  366. iget-object v0, p0, Lokhttp3/Cache;->cache:Lokhttp3/internal/cache/DiskLruCache;
  367. invoke-virtual {v0}, Lokhttp3/internal/cache/DiskLruCache;->size()J
  368. move-result-wide v0
  369. return-wide v0
  370. .end method
  371. .method declared-synchronized trackConditionalCacheHit()V
  372. .locals 1
  373. monitor-enter p0
  374. :try_start_0
  375. iget v0, p0, Lokhttp3/Cache;->hitCount:I
  376. add-int/lit8 v0, v0, 0x1
  377. iput v0, p0, Lokhttp3/Cache;->hitCount:I
  378. :try_end_0
  379. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  380. monitor-exit p0
  381. return-void
  382. :catchall_0
  383. move-exception v0
  384. monitor-exit p0
  385. throw v0
  386. .end method
  387. .method declared-synchronized trackResponse(Lokhttp3/internal/cache/CacheStrategy;)V
  388. .locals 1
  389. monitor-enter p0
  390. :try_start_0
  391. iget v0, p0, Lokhttp3/Cache;->requestCount:I
  392. add-int/lit8 v0, v0, 0x1
  393. iput v0, p0, Lokhttp3/Cache;->requestCount:I
  394. iget-object v0, p1, Lokhttp3/internal/cache/CacheStrategy;->networkRequest:Lokhttp3/Request;
  395. if-eqz v0, :cond_0
  396. iget p1, p0, Lokhttp3/Cache;->networkCount:I
  397. add-int/lit8 p1, p1, 0x1
  398. iput p1, p0, Lokhttp3/Cache;->networkCount:I
  399. goto :goto_0
  400. :cond_0
  401. iget-object p1, p1, Lokhttp3/internal/cache/CacheStrategy;->cacheResponse:Lokhttp3/Response;
  402. if-eqz p1, :cond_1
  403. iget p1, p0, Lokhttp3/Cache;->hitCount:I
  404. add-int/lit8 p1, p1, 0x1
  405. iput p1, p0, Lokhttp3/Cache;->hitCount:I
  406. :try_end_0
  407. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  408. :cond_1
  409. :goto_0
  410. monitor-exit p0
  411. return-void
  412. :catchall_0
  413. move-exception p1
  414. monitor-exit p0
  415. throw p1
  416. .end method
  417. .method update(Lokhttp3/Response;Lokhttp3/Response;)V
  418. .locals 1
  419. new-instance v0, Lokhttp3/Cache$Entry;
  420. invoke-direct {v0, p2}, Lokhttp3/Cache$Entry;-><init>(Lokhttp3/Response;)V
  421. invoke-virtual {p1}, Lokhttp3/Response;->body()Lokhttp3/ResponseBody;
  422. move-result-object p1
  423. check-cast p1, Lokhttp3/Cache$CacheResponseBody;
  424. iget-object p1, p1, Lokhttp3/Cache$CacheResponseBody;->snapshot:Lokhttp3/internal/cache/DiskLruCache$Snapshot;
  425. :try_start_0
  426. invoke-virtual {p1}, Lokhttp3/internal/cache/DiskLruCache$Snapshot;->edit()Lokhttp3/internal/cache/DiskLruCache$Editor;
  427. move-result-object p1
  428. :try_end_0
  429. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
  430. if-eqz p1, :cond_0
  431. :try_start_1
  432. invoke-virtual {v0, p1}, Lokhttp3/Cache$Entry;->writeTo(Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  433. invoke-virtual {p1}, Lokhttp3/internal/cache/DiskLruCache$Editor;->commit()V
  434. :try_end_1
  435. .catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_1
  436. goto :goto_0
  437. :catch_0
  438. const/4 p1, 0x0
  439. :catch_1
  440. invoke-direct {p0, p1}, Lokhttp3/Cache;->abortQuietly(Lokhttp3/internal/cache/DiskLruCache$Editor;)V
  441. :cond_0
  442. :goto_0
  443. return-void
  444. .end method
  445. .method public urls()Ljava/util/Iterator;
  446. .locals 1
  447. .annotation system Ldalvik/annotation/Signature;
  448. value = {
  449. "()",
  450. "Ljava/util/Iterator<",
  451. "Ljava/lang/String;",
  452. ">;"
  453. }
  454. .end annotation
  455. .annotation system Ldalvik/annotation/Throws;
  456. value = {
  457. Ljava/io/IOException;
  458. }
  459. .end annotation
  460. new-instance v0, Lokhttp3/Cache$2;
  461. invoke-direct {v0, p0}, Lokhttp3/Cache$2;-><init>(Lokhttp3/Cache;)V
  462. return-object v0
  463. .end method
  464. .method public declared-synchronized writeAbortCount()I
  465. .locals 1
  466. monitor-enter p0
  467. :try_start_0
  468. iget v0, p0, Lokhttp3/Cache;->writeAbortCount:I
  469. :try_end_0
  470. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  471. monitor-exit p0
  472. return v0
  473. :catchall_0
  474. move-exception v0
  475. monitor-exit p0
  476. throw v0
  477. .end method
  478. .method public declared-synchronized writeSuccessCount()I
  479. .locals 1
  480. monitor-enter p0
  481. :try_start_0
  482. iget v0, p0, Lokhttp3/Cache;->writeSuccessCount:I
  483. :try_end_0
  484. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  485. monitor-exit p0
  486. return v0
  487. :catchall_0
  488. move-exception v0
  489. monitor-exit p0
  490. throw v0
  491. .end method