DocumentsContractApi19.smali 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765
  1. .class Landroid/support/v4/provider/DocumentsContractApi19;
  2. .super Ljava/lang/Object;
  3. .source "DocumentsContractApi19.java"
  4. # static fields
  5. .field private static final TAG:Ljava/lang/String; = "DocumentFile"
  6. # direct methods
  7. .method constructor <init>()V
  8. .locals 0
  9. .prologue
  10. .line 29
  11. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  12. return-void
  13. .end method
  14. .method public static canRead(Landroid/content/Context;Landroid/net/Uri;)Z
  15. .locals 3
  16. .param p0, "context" # Landroid/content/Context;
  17. .param p1, "self" # Landroid/net/Uri;
  18. .prologue
  19. const/4 v1, 0x1
  20. const/4 v0, 0x0
  21. .line 76
  22. invoke-virtual {p0, p1, v1}, Landroid/content/Context;->checkCallingOrSelfUriPermission(Landroid/net/Uri;I)I
  23. move-result v2
  24. if-eqz v2, :cond_1
  25. .line 86
  26. :cond_0
  27. :goto_0
  28. return v0
  29. .line 82
  30. :cond_1
  31. invoke-static {p0, p1}, Landroid/support/v4/provider/DocumentsContractApi19;->getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  32. move-result-object v2
  33. invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
  34. move-result v2
  35. if-nez v2, :cond_0
  36. move v0, v1
  37. .line 86
  38. goto :goto_0
  39. .end method
  40. .method public static canWrite(Landroid/content/Context;Landroid/net/Uri;)Z
  41. .locals 5
  42. .param p0, "context" # Landroid/content/Context;
  43. .param p1, "self" # Landroid/net/Uri;
  44. .prologue
  45. const/4 v3, 0x1
  46. const/4 v2, 0x0
  47. .line 91
  48. const/4 v4, 0x2
  49. invoke-virtual {p0, p1, v4}, Landroid/content/Context;->checkCallingOrSelfUriPermission(Landroid/net/Uri;I)I
  50. move-result v4
  51. if-eqz v4, :cond_1
  52. .line 119
  53. :cond_0
  54. :goto_0
  55. return v2
  56. .line 96
  57. :cond_1
  58. invoke-static {p0, p1}, Landroid/support/v4/provider/DocumentsContractApi19;->getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  59. move-result-object v1
  60. .line 97
  61. .local v1, "type":Ljava/lang/String;
  62. const-string v4, "flags"
  63. invoke-static {p0, p1, v4, v2}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForInt(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;I)I
  64. move-result v0
  65. .line 100
  66. .local v0, "flags":I
  67. invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
  68. move-result v4
  69. if-nez v4, :cond_0
  70. .line 105
  71. and-int/lit8 v4, v0, 0x4
  72. if-eqz v4, :cond_2
  73. move v2, v3
  74. .line 106
  75. goto :goto_0
  76. .line 109
  77. :cond_2
  78. const-string v4, "vnd.android.document/directory"
  79. invoke-virtual {v4, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  80. move-result v4
  81. if-eqz v4, :cond_3
  82. and-int/lit8 v4, v0, 0x8
  83. if-eqz v4, :cond_3
  84. move v2, v3
  85. .line 112
  86. goto :goto_0
  87. .line 113
  88. :cond_3
  89. invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
  90. move-result v4
  91. if-nez v4, :cond_0
  92. and-int/lit8 v4, v0, 0x2
  93. if-eqz v4, :cond_0
  94. move v2, v3
  95. .line 116
  96. goto :goto_0
  97. .end method
  98. .method private static closeQuietly(Ljava/lang/AutoCloseable;)V
  99. .locals 2
  100. .param p0, "closeable" # Ljava/lang/AutoCloseable;
  101. .prologue
  102. .line 188
  103. if-eqz p0, :cond_0
  104. .line 190
  105. :try_start_0
  106. invoke-interface {p0}, Ljava/lang/AutoCloseable;->close()V
  107. :try_end_0
  108. .catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
  109. .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
  110. .line 196
  111. :cond_0
  112. :goto_0
  113. return-void
  114. .line 191
  115. :catch_0
  116. move-exception v0
  117. .line 192
  118. .local v0, "rethrown":Ljava/lang/RuntimeException;
  119. throw v0
  120. .line 193
  121. .end local v0 # "rethrown":Ljava/lang/RuntimeException;
  122. :catch_1
  123. move-exception v1
  124. goto :goto_0
  125. .end method
  126. .method public static delete(Landroid/content/Context;Landroid/net/Uri;)Z
  127. .locals 1
  128. .param p0, "context" # Landroid/content/Context;
  129. .param p1, "self" # Landroid/net/Uri;
  130. .prologue
  131. .line 123
  132. invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
  133. move-result-object v0
  134. invoke-static {v0, p1}, Landroid/provider/DocumentsContract;->deleteDocument(Landroid/content/ContentResolver;Landroid/net/Uri;)Z
  135. move-result v0
  136. return v0
  137. .end method
  138. .method public static exists(Landroid/content/Context;Landroid/net/Uri;)Z
  139. .locals 10
  140. .param p0, "context" # Landroid/content/Context;
  141. .param p1, "self" # Landroid/net/Uri;
  142. .prologue
  143. const/4 v8, 0x1
  144. const/4 v9, 0x0
  145. .line 127
  146. invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
  147. move-result-object v0
  148. .line 129
  149. .local v0, "resolver":Landroid/content/ContentResolver;
  150. const/4 v6, 0x0
  151. .line 131
  152. .local v6, "c":Landroid/database/Cursor;
  153. const/4 v1, 0x1
  154. :try_start_0
  155. new-array v2, v1, [Ljava/lang/String;
  156. const/4 v1, 0x0
  157. const-string v3, "document_id"
  158. aput-object v3, v2, v1
  159. const/4 v3, 0x0
  160. const/4 v4, 0x0
  161. const/4 v5, 0x0
  162. move-object v1, p1
  163. invoke-virtual/range {v0 .. v5}, Landroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
  164. move-result-object v6
  165. .line 133
  166. invoke-interface {v6}, Landroid/database/Cursor;->getCount()I
  167. :try_end_0
  168. .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
  169. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  170. move-result v1
  171. if-lez v1, :cond_0
  172. move v1, v8
  173. .line 138
  174. :goto_0
  175. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  176. :goto_1
  177. return v1
  178. :cond_0
  179. move v1, v9
  180. .line 133
  181. goto :goto_0
  182. .line 134
  183. :catch_0
  184. move-exception v7
  185. .line 135
  186. .local v7, "e":Ljava/lang/Exception;
  187. :try_start_1
  188. const-string v1, "DocumentFile"
  189. new-instance v2, Ljava/lang/StringBuilder;
  190. invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
  191. const-string v3, "Failed query: "
  192. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  193. move-result-object v2
  194. invoke-virtual {v2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  195. move-result-object v2
  196. invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  197. move-result-object v2
  198. invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  199. :try_end_1
  200. .catchall {:try_start_1 .. :try_end_1} :catchall_0
  201. .line 138
  202. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  203. move v1, v9
  204. goto :goto_1
  205. .end local v7 # "e":Ljava/lang/Exception;
  206. :catchall_0
  207. move-exception v1
  208. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  209. throw v1
  210. .end method
  211. .method public static getName(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  212. .locals 2
  213. .param p0, "context" # Landroid/content/Context;
  214. .param p1, "self" # Landroid/net/Uri;
  215. .prologue
  216. .line 37
  217. const-string v0, "_display_name"
  218. const/4 v1, 0x0
  219. invoke-static {p0, p1, v0, v1}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForString(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  220. move-result-object v0
  221. return-object v0
  222. .end method
  223. .method private static getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  224. .locals 2
  225. .param p0, "context" # Landroid/content/Context;
  226. .param p1, "self" # Landroid/net/Uri;
  227. .prologue
  228. .line 41
  229. const-string v0, "mime_type"
  230. const/4 v1, 0x0
  231. invoke-static {p0, p1, v0, v1}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForString(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  232. move-result-object v0
  233. return-object v0
  234. .end method
  235. .method public static getType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  236. .locals 2
  237. .param p0, "context" # Landroid/content/Context;
  238. .param p1, "self" # Landroid/net/Uri;
  239. .prologue
  240. .line 45
  241. invoke-static {p0, p1}, Landroid/support/v4/provider/DocumentsContractApi19;->getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  242. move-result-object v0
  243. .line 46
  244. .local v0, "rawType":Ljava/lang/String;
  245. const-string v1, "vnd.android.document/directory"
  246. invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  247. move-result v1
  248. if-eqz v1, :cond_0
  249. .line 47
  250. const/4 v0, 0x0
  251. .line 49
  252. .end local v0 # "rawType":Ljava/lang/String;
  253. :cond_0
  254. return-object v0
  255. .end method
  256. .method public static isDirectory(Landroid/content/Context;Landroid/net/Uri;)Z
  257. .locals 2
  258. .param p0, "context" # Landroid/content/Context;
  259. .param p1, "self" # Landroid/net/Uri;
  260. .prologue
  261. .line 54
  262. const-string v0, "vnd.android.document/directory"
  263. invoke-static {p0, p1}, Landroid/support/v4/provider/DocumentsContractApi19;->getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  264. move-result-object v1
  265. invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  266. move-result v0
  267. return v0
  268. .end method
  269. .method public static isDocumentUri(Landroid/content/Context;Landroid/net/Uri;)Z
  270. .locals 1
  271. .param p0, "context" # Landroid/content/Context;
  272. .param p1, "self" # Landroid/net/Uri;
  273. .prologue
  274. .line 33
  275. invoke-static {p0, p1}, Landroid/provider/DocumentsContract;->isDocumentUri(Landroid/content/Context;Landroid/net/Uri;)Z
  276. move-result v0
  277. return v0
  278. .end method
  279. .method public static isFile(Landroid/content/Context;Landroid/net/Uri;)Z
  280. .locals 2
  281. .param p0, "context" # Landroid/content/Context;
  282. .param p1, "self" # Landroid/net/Uri;
  283. .prologue
  284. .line 58
  285. invoke-static {p0, p1}, Landroid/support/v4/provider/DocumentsContractApi19;->getRawType(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String;
  286. move-result-object v0
  287. .line 59
  288. .local v0, "type":Ljava/lang/String;
  289. const-string v1, "vnd.android.document/directory"
  290. invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  291. move-result v1
  292. if-nez v1, :cond_0
  293. invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
  294. move-result v1
  295. if-eqz v1, :cond_1
  296. .line 60
  297. :cond_0
  298. const/4 v1, 0x0
  299. .line 62
  300. :goto_0
  301. return v1
  302. :cond_1
  303. const/4 v1, 0x1
  304. goto :goto_0
  305. .end method
  306. .method public static lastModified(Landroid/content/Context;Landroid/net/Uri;)J
  307. .locals 3
  308. .param p0, "context" # Landroid/content/Context;
  309. .param p1, "self" # Landroid/net/Uri;
  310. .prologue
  311. .line 67
  312. const-string v0, "last_modified"
  313. const-wide/16 v1, 0x0
  314. invoke-static {p0, p1, v0, v1, v2}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForLong(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;J)J
  315. move-result-wide v0
  316. return-wide v0
  317. .end method
  318. .method public static length(Landroid/content/Context;Landroid/net/Uri;)J
  319. .locals 3
  320. .param p0, "context" # Landroid/content/Context;
  321. .param p1, "self" # Landroid/net/Uri;
  322. .prologue
  323. .line 71
  324. const-string v0, "_size"
  325. const-wide/16 v1, 0x0
  326. invoke-static {p0, p1, v0, v1, v2}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForLong(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;J)J
  327. move-result-wide v0
  328. return-wide v0
  329. .end method
  330. .method private static queryForInt(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;I)I
  331. .locals 2
  332. .param p0, "context" # Landroid/content/Context;
  333. .param p1, "self" # Landroid/net/Uri;
  334. .param p2, "column" # Ljava/lang/String;
  335. .param p3, "defaultValue" # I
  336. .prologue
  337. .line 164
  338. int-to-long v0, p3
  339. invoke-static {p0, p1, p2, v0, v1}, Landroid/support/v4/provider/DocumentsContractApi19;->queryForLong(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;J)J
  340. move-result-wide v0
  341. long-to-int v0, v0
  342. return v0
  343. .end method
  344. .method private static queryForLong(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;J)J
  345. .locals 8
  346. .param p0, "context" # Landroid/content/Context;
  347. .param p1, "self" # Landroid/net/Uri;
  348. .param p2, "column" # Ljava/lang/String;
  349. .param p3, "defaultValue" # J
  350. .prologue
  351. .line 169
  352. invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
  353. move-result-object v0
  354. .line 171
  355. .local v0, "resolver":Landroid/content/ContentResolver;
  356. const/4 v6, 0x0
  357. .line 173
  358. .local v6, "c":Landroid/database/Cursor;
  359. const/4 v1, 0x1
  360. :try_start_0
  361. new-array v2, v1, [Ljava/lang/String;
  362. const/4 v1, 0x0
  363. aput-object p2, v2, v1
  364. const/4 v3, 0x0
  365. const/4 v4, 0x0
  366. const/4 v5, 0x0
  367. move-object v1, p1
  368. invoke-virtual/range {v0 .. v5}, Landroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
  369. move-result-object v6
  370. .line 174
  371. invoke-interface {v6}, Landroid/database/Cursor;->moveToFirst()Z
  372. move-result v1
  373. if-eqz v1, :cond_0
  374. const/4 v1, 0x0
  375. invoke-interface {v6, v1}, Landroid/database/Cursor;->isNull(I)Z
  376. move-result v1
  377. if-nez v1, :cond_0
  378. .line 175
  379. const/4 v1, 0x0
  380. invoke-interface {v6, v1}, Landroid/database/Cursor;->getLong(I)J
  381. :try_end_0
  382. .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
  383. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  384. move-result-wide p3
  385. .line 183
  386. .end local p3 # "defaultValue":J
  387. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  388. :goto_0
  389. return-wide p3
  390. .restart local p3 # "defaultValue":J
  391. :cond_0
  392. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  393. goto :goto_0
  394. .line 179
  395. :catch_0
  396. move-exception v7
  397. .line 180
  398. .local v7, "e":Ljava/lang/Exception;
  399. :try_start_1
  400. const-string v1, "DocumentFile"
  401. new-instance v2, Ljava/lang/StringBuilder;
  402. invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
  403. const-string v3, "Failed query: "
  404. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  405. move-result-object v2
  406. invoke-virtual {v2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  407. move-result-object v2
  408. invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  409. move-result-object v2
  410. invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  411. :try_end_1
  412. .catchall {:try_start_1 .. :try_end_1} :catchall_0
  413. .line 183
  414. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  415. goto :goto_0
  416. .end local v7 # "e":Ljava/lang/Exception;
  417. :catchall_0
  418. move-exception v1
  419. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  420. throw v1
  421. .end method
  422. .method private static queryForString(Landroid/content/Context;Landroid/net/Uri;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  423. .locals 8
  424. .param p0, "context" # Landroid/content/Context;
  425. .param p1, "self" # Landroid/net/Uri;
  426. .param p2, "column" # Ljava/lang/String;
  427. .param p3, "defaultValue" # Ljava/lang/String;
  428. .prologue
  429. .line 144
  430. invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
  431. move-result-object v0
  432. .line 146
  433. .local v0, "resolver":Landroid/content/ContentResolver;
  434. const/4 v6, 0x0
  435. .line 148
  436. .local v6, "c":Landroid/database/Cursor;
  437. const/4 v1, 0x1
  438. :try_start_0
  439. new-array v2, v1, [Ljava/lang/String;
  440. const/4 v1, 0x0
  441. aput-object p2, v2, v1
  442. const/4 v3, 0x0
  443. const/4 v4, 0x0
  444. const/4 v5, 0x0
  445. move-object v1, p1
  446. invoke-virtual/range {v0 .. v5}, Landroid/content/ContentResolver;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
  447. move-result-object v6
  448. .line 149
  449. invoke-interface {v6}, Landroid/database/Cursor;->moveToFirst()Z
  450. move-result v1
  451. if-eqz v1, :cond_0
  452. const/4 v1, 0x0
  453. invoke-interface {v6, v1}, Landroid/database/Cursor;->isNull(I)Z
  454. move-result v1
  455. if-nez v1, :cond_0
  456. .line 150
  457. const/4 v1, 0x0
  458. invoke-interface {v6, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
  459. :try_end_0
  460. .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
  461. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  462. move-result-object p3
  463. .line 158
  464. .end local p3 # "defaultValue":Ljava/lang/String;
  465. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  466. :goto_0
  467. return-object p3
  468. .restart local p3 # "defaultValue":Ljava/lang/String;
  469. :cond_0
  470. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  471. goto :goto_0
  472. .line 154
  473. :catch_0
  474. move-exception v7
  475. .line 155
  476. .local v7, "e":Ljava/lang/Exception;
  477. :try_start_1
  478. const-string v1, "DocumentFile"
  479. new-instance v2, Ljava/lang/StringBuilder;
  480. invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
  481. const-string v3, "Failed query: "
  482. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  483. move-result-object v2
  484. invoke-virtual {v2, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  485. move-result-object v2
  486. invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  487. move-result-object v2
  488. invoke-static {v1, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  489. :try_end_1
  490. .catchall {:try_start_1 .. :try_end_1} :catchall_0
  491. .line 158
  492. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  493. goto :goto_0
  494. .end local v7 # "e":Ljava/lang/Exception;
  495. :catchall_0
  496. move-exception v1
  497. invoke-static {v6}, Landroid/support/v4/provider/DocumentsContractApi19;->closeQuietly(Ljava/lang/AutoCloseable;)V
  498. throw v1
  499. .end method