AsyncTaskLoader$LoadTask.smali 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. .class final Landroid/support/v4/content/AsyncTaskLoader$LoadTask;
  2. .super Landroid/support/v4/content/ModernAsyncTask;
  3. .source "AsyncTaskLoader.java"
  4. # interfaces
  5. .implements Ljava/lang/Runnable;
  6. # annotations
  7. .annotation system Ldalvik/annotation/EnclosingClass;
  8. value = Landroid/support/v4/content/AsyncTaskLoader;
  9. .end annotation
  10. .annotation system Ldalvik/annotation/InnerClass;
  11. accessFlags = 0x10
  12. name = "LoadTask"
  13. .end annotation
  14. .annotation system Ldalvik/annotation/Signature;
  15. value = {
  16. "Landroid/support/v4/content/ModernAsyncTask",
  17. "<",
  18. "Ljava/lang/Void;",
  19. "Ljava/lang/Void;",
  20. "TD;>;",
  21. "Ljava/lang/Runnable;"
  22. }
  23. .end annotation
  24. # instance fields
  25. .field private final mDone:Ljava/util/concurrent/CountDownLatch;
  26. .field final synthetic this$0:Landroid/support/v4/content/AsyncTaskLoader;
  27. .field waiting:Z
  28. # direct methods
  29. .method constructor <init>(Landroid/support/v4/content/AsyncTaskLoader;)V
  30. .locals 2
  31. .prologue
  32. .line 42
  33. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  34. iput-object p1, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->this$0:Landroid/support/v4/content/AsyncTaskLoader;
  35. invoke-direct {p0}, Landroid/support/v4/content/ModernAsyncTask;-><init>()V
  36. .line 43
  37. new-instance v0, Ljava/util/concurrent/CountDownLatch;
  38. const/4 v1, 0x1
  39. invoke-direct {v0, v1}, Ljava/util/concurrent/CountDownLatch;-><init>(I)V
  40. iput-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  41. return-void
  42. .end method
  43. # virtual methods
  44. .method protected bridge synthetic doInBackground([Ljava/lang/Object;)Ljava/lang/Object;
  45. .locals 1
  46. .prologue
  47. .line 42
  48. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  49. check-cast p1, [Ljava/lang/Void;
  50. invoke-virtual {p0, p1}, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->doInBackground([Ljava/lang/Void;)Ljava/lang/Object;
  51. move-result-object v0
  52. return-object v0
  53. .end method
  54. .method protected varargs doInBackground([Ljava/lang/Void;)Ljava/lang/Object;
  55. .locals 3
  56. .param p1, "params" # [Ljava/lang/Void;
  57. .annotation system Ldalvik/annotation/Signature;
  58. value = {
  59. "([",
  60. "Ljava/lang/Void;",
  61. ")TD;"
  62. }
  63. .end annotation
  64. .prologue
  65. .line 54
  66. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  67. :try_start_0
  68. iget-object v2, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->this$0:Landroid/support/v4/content/AsyncTaskLoader;
  69. invoke-virtual {v2}, Landroid/support/v4/content/AsyncTaskLoader;->onLoadInBackground()Ljava/lang/Object;
  70. :try_end_0
  71. .catch Landroid/support/v4/os/OperationCanceledException; {:try_start_0 .. :try_end_0} :catch_0
  72. move-result-object v0
  73. .line 68
  74. :goto_0
  75. return-object v0
  76. .line 57
  77. :catch_0
  78. move-exception v1
  79. .line 58
  80. .local v1, "ex":Landroid/support/v4/os/OperationCanceledException;
  81. invoke-virtual {p0}, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->isCancelled()Z
  82. move-result v2
  83. if-nez v2, :cond_0
  84. .line 65
  85. throw v1
  86. .line 68
  87. :cond_0
  88. const/4 v0, 0x0
  89. goto :goto_0
  90. .end method
  91. .method protected onCancelled(Ljava/lang/Object;)V
  92. .locals 2
  93. .annotation system Ldalvik/annotation/Signature;
  94. value = {
  95. "(TD;)V"
  96. }
  97. .end annotation
  98. .prologue
  99. .line 88
  100. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  101. .local p1, "data":Ljava/lang/Object;, "TD;"
  102. :try_start_0
  103. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->this$0:Landroid/support/v4/content/AsyncTaskLoader;
  104. invoke-virtual {v0, p0, p1}, Landroid/support/v4/content/AsyncTaskLoader;->dispatchOnCancelled(Landroid/support/v4/content/AsyncTaskLoader$LoadTask;Ljava/lang/Object;)V
  105. :try_end_0
  106. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  107. .line 90
  108. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  109. invoke-virtual {v0}, Ljava/util/concurrent/CountDownLatch;->countDown()V
  110. .line 92
  111. return-void
  112. .line 90
  113. :catchall_0
  114. move-exception v0
  115. iget-object v1, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  116. invoke-virtual {v1}, Ljava/util/concurrent/CountDownLatch;->countDown()V
  117. throw v0
  118. .end method
  119. .method protected onPostExecute(Ljava/lang/Object;)V
  120. .locals 2
  121. .annotation system Ldalvik/annotation/Signature;
  122. value = {
  123. "(TD;)V"
  124. }
  125. .end annotation
  126. .prologue
  127. .line 77
  128. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  129. .local p1, "data":Ljava/lang/Object;, "TD;"
  130. :try_start_0
  131. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->this$0:Landroid/support/v4/content/AsyncTaskLoader;
  132. invoke-virtual {v0, p0, p1}, Landroid/support/v4/content/AsyncTaskLoader;->dispatchOnLoadComplete(Landroid/support/v4/content/AsyncTaskLoader$LoadTask;Ljava/lang/Object;)V
  133. :try_end_0
  134. .catchall {:try_start_0 .. :try_end_0} :catchall_0
  135. .line 79
  136. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  137. invoke-virtual {v0}, Ljava/util/concurrent/CountDownLatch;->countDown()V
  138. .line 81
  139. return-void
  140. .line 79
  141. :catchall_0
  142. move-exception v0
  143. iget-object v1, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  144. invoke-virtual {v1}, Ljava/util/concurrent/CountDownLatch;->countDown()V
  145. throw v0
  146. .end method
  147. .method public run()V
  148. .locals 1
  149. .prologue
  150. .line 98
  151. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  152. const/4 v0, 0x0
  153. iput-boolean v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->waiting:Z
  154. .line 99
  155. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->this$0:Landroid/support/v4/content/AsyncTaskLoader;
  156. invoke-virtual {v0}, Landroid/support/v4/content/AsyncTaskLoader;->executePendingTask()V
  157. .line 100
  158. return-void
  159. .end method
  160. .method public waitForLoader()V
  161. .locals 1
  162. .prologue
  163. .line 105
  164. .local p0, "this":Landroid/support/v4/content/AsyncTaskLoader$LoadTask;, "Landroid/support/v4/content/AsyncTaskLoader<TD;>.LoadTask;"
  165. :try_start_0
  166. iget-object v0, p0, Landroid/support/v4/content/AsyncTaskLoader$LoadTask;->mDone:Ljava/util/concurrent/CountDownLatch;
  167. invoke-virtual {v0}, Ljava/util/concurrent/CountDownLatch;->await()V
  168. :try_end_0
  169. .catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
  170. .line 109
  171. :goto_0
  172. return-void
  173. .line 106
  174. :catch_0
  175. move-exception v0
  176. goto :goto_0
  177. .end method