DisposableLambdaObserver.smali 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215
  1. .class public final Lio/reactivex/internal/observers/DisposableLambdaObserver;
  2. .super Ljava/lang/Object;
  3. .source "DisposableLambdaObserver.java"
  4. # interfaces
  5. .implements Lio/reactivex/Observer;
  6. .implements Lio/reactivex/disposables/Disposable;
  7. # annotations
  8. .annotation system Ldalvik/annotation/Signature;
  9. value = {
  10. "<T:",
  11. "Ljava/lang/Object;",
  12. ">",
  13. "Ljava/lang/Object;",
  14. "Lio/reactivex/Observer<",
  15. "TT;>;",
  16. "Lio/reactivex/disposables/Disposable;"
  17. }
  18. .end annotation
  19. # instance fields
  20. .field final actual:Lio/reactivex/Observer;
  21. .annotation system Ldalvik/annotation/Signature;
  22. value = {
  23. "Lio/reactivex/Observer<",
  24. "-TT;>;"
  25. }
  26. .end annotation
  27. .end field
  28. .field final onDispose:Lio/reactivex/functions/Action;
  29. .field final onSubscribe:Lio/reactivex/functions/Consumer;
  30. .annotation system Ldalvik/annotation/Signature;
  31. value = {
  32. "Lio/reactivex/functions/Consumer<",
  33. "-",
  34. "Lio/reactivex/disposables/Disposable;",
  35. ">;"
  36. }
  37. .end annotation
  38. .end field
  39. .field s:Lio/reactivex/disposables/Disposable;
  40. # direct methods
  41. .method public constructor <init>(Lio/reactivex/Observer;Lio/reactivex/functions/Consumer;Lio/reactivex/functions/Action;)V
  42. .locals 0
  43. .annotation system Ldalvik/annotation/Signature;
  44. value = {
  45. "(",
  46. "Lio/reactivex/Observer<",
  47. "-TT;>;",
  48. "Lio/reactivex/functions/Consumer<",
  49. "-",
  50. "Lio/reactivex/disposables/Disposable;",
  51. ">;",
  52. "Lio/reactivex/functions/Action;",
  53. ")V"
  54. }
  55. .end annotation
  56. .line 32
  57. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  58. .line 33
  59. iput-object p1, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  60. .line 34
  61. iput-object p2, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->onSubscribe:Lio/reactivex/functions/Consumer;
  62. .line 35
  63. iput-object p3, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->onDispose:Lio/reactivex/functions/Action;
  64. return-void
  65. .end method
  66. # virtual methods
  67. .method public dispose()V
  68. .locals 1
  69. .line 76
  70. :try_start_0
  71. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->onDispose:Lio/reactivex/functions/Action;
  72. invoke-interface {v0}, Lio/reactivex/functions/Action;->run()V
  73. :try_end_0
  74. .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0
  75. goto :goto_0
  76. :catch_0
  77. move-exception v0
  78. .line 78
  79. invoke-static {v0}, Lio/reactivex/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
  80. .line 79
  81. invoke-static {v0}, Lio/reactivex/plugins/RxJavaPlugins;->onError(Ljava/lang/Throwable;)V
  82. .line 81
  83. :goto_0
  84. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->s:Lio/reactivex/disposables/Disposable;
  85. invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->dispose()V
  86. return-void
  87. .end method
  88. .method public isDisposed()Z
  89. .locals 1
  90. .line 86
  91. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->s:Lio/reactivex/disposables/Disposable;
  92. invoke-interface {v0}, Lio/reactivex/disposables/Disposable;->isDisposed()Z
  93. move-result v0
  94. return v0
  95. .end method
  96. .method public onComplete()V
  97. .locals 1
  98. .line 69
  99. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  100. invoke-interface {v0}, Lio/reactivex/Observer;->onComplete()V
  101. return-void
  102. .end method
  103. .method public onError(Ljava/lang/Throwable;)V
  104. .locals 1
  105. .line 64
  106. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  107. invoke-interface {v0, p1}, Lio/reactivex/Observer;->onError(Ljava/lang/Throwable;)V
  108. return-void
  109. .end method
  110. .method public onNext(Ljava/lang/Object;)V
  111. .locals 1
  112. .annotation system Ldalvik/annotation/Signature;
  113. value = {
  114. "(TT;)V"
  115. }
  116. .end annotation
  117. .line 59
  118. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  119. invoke-interface {v0, p1}, Lio/reactivex/Observer;->onNext(Ljava/lang/Object;)V
  120. return-void
  121. .end method
  122. .method public onSubscribe(Lio/reactivex/disposables/Disposable;)V
  123. .locals 1
  124. .line 42
  125. :try_start_0
  126. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->onSubscribe:Lio/reactivex/functions/Consumer;
  127. invoke-interface {v0, p1}, Lio/reactivex/functions/Consumer;->accept(Ljava/lang/Object;)V
  128. :try_end_0
  129. .catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0
  130. .line 51
  131. iget-object v0, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->s:Lio/reactivex/disposables/Disposable;
  132. invoke-static {v0, p1}, Lio/reactivex/internal/disposables/DisposableHelper;->validate(Lio/reactivex/disposables/Disposable;Lio/reactivex/disposables/Disposable;)Z
  133. move-result v0
  134. if-eqz v0, :cond_0
  135. .line 52
  136. iput-object p1, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->s:Lio/reactivex/disposables/Disposable;
  137. .line 53
  138. iget-object p1, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  139. invoke-interface {p1, p0}, Lio/reactivex/Observer;->onSubscribe(Lio/reactivex/disposables/Disposable;)V
  140. :cond_0
  141. return-void
  142. :catch_0
  143. move-exception v0
  144. .line 44
  145. invoke-static {v0}, Lio/reactivex/exceptions/Exceptions;->throwIfFatal(Ljava/lang/Throwable;)V
  146. .line 45
  147. invoke-interface {p1}, Lio/reactivex/disposables/Disposable;->dispose()V
  148. .line 46
  149. invoke-static {v0}, Lio/reactivex/plugins/RxJavaPlugins;->onError(Ljava/lang/Throwable;)V
  150. .line 48
  151. iget-object p1, p0, Lio/reactivex/internal/observers/DisposableLambdaObserver;->actual:Lio/reactivex/Observer;
  152. invoke-static {v0, p1}, Lio/reactivex/internal/disposables/EmptyDisposable;->error(Ljava/lang/Throwable;Lio/reactivex/Observer;)V
  153. return-void
  154. .end method