Http2Connection$5.smali 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. .class Lokhttp3/internal/http2/Http2Connection$5;
  2. .super Lokhttp3/internal/NamedRunnable;
  3. .source ""
  4. # annotations
  5. .annotation system Ldalvik/annotation/EnclosingMethod;
  6. value = Lokhttp3/internal/http2/Http2Connection;->pushHeadersLater(ILjava/util/List;Z)V
  7. .end annotation
  8. .annotation system Ldalvik/annotation/InnerClass;
  9. accessFlags = 0x0
  10. name = null
  11. .end annotation
  12. # instance fields
  13. .field final synthetic this$0:Lokhttp3/internal/http2/Http2Connection;
  14. .field final synthetic val$inFinished:Z
  15. .field final synthetic val$requestHeaders:Ljava/util/List;
  16. .field final synthetic val$streamId:I
  17. # direct methods
  18. .method varargs constructor <init>(Lokhttp3/internal/http2/Http2Connection;Ljava/lang/String;[Ljava/lang/Object;ILjava/util/List;Z)V
  19. .locals 0
  20. iput-object p1, p0, Lokhttp3/internal/http2/Http2Connection$5;->this$0:Lokhttp3/internal/http2/Http2Connection;
  21. iput p4, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$streamId:I
  22. iput-object p5, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$requestHeaders:Ljava/util/List;
  23. iput-boolean p6, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$inFinished:Z
  24. invoke-direct {p0, p2, p3}, Lokhttp3/internal/NamedRunnable;-><init>(Ljava/lang/String;[Ljava/lang/Object;)V
  25. return-void
  26. .end method
  27. # virtual methods
  28. .method public execute()V
  29. .locals 4
  30. iget-object v0, p0, Lokhttp3/internal/http2/Http2Connection$5;->this$0:Lokhttp3/internal/http2/Http2Connection;
  31. iget-object v0, v0, Lokhttp3/internal/http2/Http2Connection;->pushObserver:Lokhttp3/internal/http2/PushObserver;
  32. iget v1, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$streamId:I
  33. iget-object v2, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$requestHeaders:Ljava/util/List;
  34. iget-boolean v3, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$inFinished:Z
  35. invoke-interface {v0, v1, v2, v3}, Lokhttp3/internal/http2/PushObserver;->onHeaders(ILjava/util/List;Z)Z
  36. move-result v0
  37. if-eqz v0, :cond_0
  38. :try_start_0
  39. iget-object v1, p0, Lokhttp3/internal/http2/Http2Connection$5;->this$0:Lokhttp3/internal/http2/Http2Connection;
  40. iget-object v1, v1, Lokhttp3/internal/http2/Http2Connection;->writer:Lokhttp3/internal/http2/Http2Writer;
  41. iget v2, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$streamId:I
  42. sget-object v3, Lokhttp3/internal/http2/ErrorCode;->CANCEL:Lokhttp3/internal/http2/ErrorCode;
  43. invoke-virtual {v1, v2, v3}, Lokhttp3/internal/http2/Http2Writer;->rstStream(ILokhttp3/internal/http2/ErrorCode;)V
  44. :cond_0
  45. if-nez v0, :cond_1
  46. iget-boolean v0, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$inFinished:Z
  47. if-eqz v0, :cond_2
  48. :cond_1
  49. iget-object v0, p0, Lokhttp3/internal/http2/Http2Connection$5;->this$0:Lokhttp3/internal/http2/Http2Connection;
  50. monitor-enter v0
  51. :try_end_0
  52. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
  53. :try_start_1
  54. iget-object v1, p0, Lokhttp3/internal/http2/Http2Connection$5;->this$0:Lokhttp3/internal/http2/Http2Connection;
  55. iget-object v1, v1, Lokhttp3/internal/http2/Http2Connection;->currentPushRequests:Ljava/util/Set;
  56. iget v2, p0, Lokhttp3/internal/http2/Http2Connection$5;->val$streamId:I
  57. invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  58. move-result-object v2
  59. invoke-interface {v1, v2}, Ljava/util/Set;->remove(Ljava/lang/Object;)Z
  60. monitor-exit v0
  61. goto :goto_0
  62. :catchall_0
  63. move-exception v1
  64. monitor-exit v0
  65. :try_end_1
  66. .catchall {:try_start_1 .. :try_end_1} :catchall_0
  67. :try_start_2
  68. throw v1
  69. :try_end_2
  70. .catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_0
  71. :catch_0
  72. :cond_2
  73. :goto_0
  74. return-void
  75. .end method