Weather/smali_classes4/okhttp3/internal/http2/Http2Stream.smali
2021-05-10 10:13:34 +02:00

1150 lines
26 KiB
Smali

.class public final Lokhttp3/internal/http2/Http2Stream;
.super Ljava/lang/Object;
.source "Http2Stream.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lokhttp3/internal/http2/Http2Stream$StreamTimeout;,
Lokhttp3/internal/http2/Http2Stream$FramingSink;,
Lokhttp3/internal/http2/Http2Stream$FramingSource;
}
.end annotation
# static fields
.field static final synthetic i:Z
# instance fields
.field a:J
.field b:J
.field final c:I
.field final d:Lokhttp3/internal/http2/Http2Connection;
.field final e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
.field final f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
.field final g:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
.field h:Lokhttp3/internal/http2/ErrorCode;
.field private final j:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lokhttp3/internal/http2/Header;",
">;"
}
.end annotation
.end field
.field private k:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lokhttp3/internal/http2/Header;",
">;"
}
.end annotation
.end field
.field private l:Z
.field private final m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
# direct methods
.method static constructor <clinit>()V
.locals 1
.line 32
const-class v0, Lokhttp3/internal/http2/Http2Stream;
invoke-virtual {v0}, Ljava/lang/Class;->desiredAssertionStatus()Z
move-result v0
xor-int/lit8 v0, v0, 0x1
sput-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
return-void
.end method
.method constructor <init>(ILokhttp3/internal/http2/Http2Connection;ZZLjava/util/List;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Lokhttp3/internal/http2/Http2Connection;",
"ZZ",
"Ljava/util/List<",
"Lokhttp3/internal/http2/Header;",
">;)V"
}
.end annotation
.line 76
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-wide/16 v0, 0x0
.line 41
iput-wide v0, p0, Lokhttp3/internal/http2/Http2Stream;->a:J
.line 65
new-instance v0, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
invoke-direct {v0, p0}, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;-><init>(Lokhttp3/internal/http2/Http2Stream;)V
iput-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
.line 66
new-instance v0, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
invoke-direct {v0, p0}, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;-><init>(Lokhttp3/internal/http2/Http2Stream;)V
iput-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->g:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
const/4 v0, 0x0
.line 73
iput-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
if-eqz p2, :cond_1
if-eqz p5, :cond_0
.line 79
iput p1, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
.line 80
iput-object p2, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
.line 81
iget-object p1, p2, Lokhttp3/internal/http2/Http2Connection;->m:Lokhttp3/internal/http2/Settings;
.line 82
invoke-virtual {p1}, Lokhttp3/internal/http2/Settings;->d()I
move-result p1
int-to-long v0, p1
iput-wide v0, p0, Lokhttp3/internal/http2/Http2Stream;->b:J
.line 83
new-instance p1, Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-object p2, p2, Lokhttp3/internal/http2/Http2Connection;->l:Lokhttp3/internal/http2/Settings;
invoke-virtual {p2}, Lokhttp3/internal/http2/Settings;->d()I
move-result p2
int-to-long v0, p2
invoke-direct {p1, p0, v0, v1}, Lokhttp3/internal/http2/Http2Stream$FramingSource;-><init>(Lokhttp3/internal/http2/Http2Stream;J)V
iput-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
.line 84
new-instance p1, Lokhttp3/internal/http2/Http2Stream$FramingSink;
invoke-direct {p1, p0}, Lokhttp3/internal/http2/Http2Stream$FramingSink;-><init>(Lokhttp3/internal/http2/Http2Stream;)V
iput-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
.line 85
iget-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iput-boolean p4, p1, Lokhttp3/internal/http2/Http2Stream$FramingSource;->b:Z
.line 86
iget-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iput-boolean p3, p1, Lokhttp3/internal/http2/Http2Stream$FramingSink;->b:Z
.line 87
iput-object p5, p0, Lokhttp3/internal/http2/Http2Stream;->j:Ljava/util/List;
return-void
.line 78
:cond_0
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "requestHeaders == null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.line 77
:cond_1
new-instance p1, Ljava/lang/NullPointerException;
const-string p2, "connection == null"
invoke-direct {p1, p2}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method private d(Lokhttp3/internal/http2/ErrorCode;)Z
.locals 2
.line 242
sget-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
if-nez v0, :cond_1
invoke-static {p0}, Ljava/lang/Thread;->holdsLock(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
new-instance p1, Ljava/lang/AssertionError;
invoke-direct {p1}, Ljava/lang/AssertionError;-><init>()V
throw p1
.line 243
:cond_1
:goto_0
monitor-enter p0
.line 244
:try_start_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
const/4 v1, 0x0
if-eqz v0, :cond_2
.line 245
monitor-exit p0
return v1
.line 247
:cond_2
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->b:Z
if-eqz v0, :cond_3
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->b:Z
if-eqz v0, :cond_3
.line 248
monitor-exit p0
return v1
.line 250
:cond_3
iput-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
.line 251
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
.line 252
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 253
iget-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v0, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {p1, v0}, Lokhttp3/internal/http2/Http2Connection;->b(I)Lokhttp3/internal/http2/Http2Stream;
const/4 p1, 0x1
return p1
:catchall_0
move-exception p1
.line 252
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p1
.end method
# virtual methods
.method public a()I
.locals 1
.line 91
iget v0, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
return v0
.end method
.method a(J)V
.locals 3
.line 557
iget-wide v0, p0, Lokhttp3/internal/http2/Http2Stream;->b:J
add-long/2addr v0, p1
iput-wide v0, p0, Lokhttp3/internal/http2/Http2Stream;->b:J
const-wide/16 v0, 0x0
cmp-long v2, p1, v0
if-lez v2, :cond_0
.line 558
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:cond_0
return-void
.end method
.method a(Ljava/util/List;)V
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Lokhttp3/internal/http2/Header;",
">;)V"
}
.end annotation
.line 258
sget-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
if-nez v0, :cond_1
invoke-static {p0}, Ljava/lang/Thread;->holdsLock(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
new-instance p1, Ljava/lang/AssertionError;
invoke-direct {p1}, Ljava/lang/AssertionError;-><init>()V
throw p1
.line 260
:cond_1
:goto_0
monitor-enter p0
const/4 v0, 0x1
.line 261
:try_start_0
iput-boolean v0, p0, Lokhttp3/internal/http2/Http2Stream;->l:Z
.line 262
iget-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
if-nez v1, :cond_2
.line 263
iput-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
.line 264
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->b()Z
move-result v0
.line 265
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
goto :goto_1
.line 267
:cond_2
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 268
iget-object v2, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
invoke-interface {v1, v2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
const/4 v2, 0x0
.line 269
invoke-interface {v1, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 270
invoke-interface {v1, p1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
.line 271
iput-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
.line 273
:goto_1
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v0, :cond_3
.line 275
iget-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v0, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {p1, v0}, Lokhttp3/internal/http2/Http2Connection;->b(I)Lokhttp3/internal/http2/Http2Stream;
:cond_3
return-void
:catchall_0
move-exception p1
.line 273
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw p1
.end method
.method public a(Lokhttp3/internal/http2/ErrorCode;)V
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 223
invoke-direct {p0, p1}, Lokhttp3/internal/http2/Http2Stream;->d(Lokhttp3/internal/http2/ErrorCode;)Z
move-result v0
if-nez v0, :cond_0
return-void
.line 226
:cond_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v1, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {v0, v1, p1}, Lokhttp3/internal/http2/Http2Connection;->b(ILokhttp3/internal/http2/ErrorCode;)V
return-void
.end method
.method a(Lokio/BufferedSource;I)V
.locals 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 280
sget-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
if-nez v0, :cond_1
invoke-static {p0}, Ljava/lang/Thread;->holdsLock(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
new-instance p1, Ljava/lang/AssertionError;
invoke-direct {p1}, Ljava/lang/AssertionError;-><init>()V
throw p1
.line 281
:cond_1
:goto_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
int-to-long v1, p2
invoke-virtual {v0, p1, v1, v2}, Lokhttp3/internal/http2/Http2Stream$FramingSource;->a(Lokio/BufferedSource;J)V
return-void
.end method
.method public b(Lokhttp3/internal/http2/ErrorCode;)V
.locals 2
.line 234
invoke-direct {p0, p1}, Lokhttp3/internal/http2/Http2Stream;->d(Lokhttp3/internal/http2/ErrorCode;)Z
move-result v0
if-nez v0, :cond_0
return-void
.line 237
:cond_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v1, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {v0, v1, p1}, Lokhttp3/internal/http2/Http2Connection;->a(ILokhttp3/internal/http2/ErrorCode;)V
return-void
.end method
.method public declared-synchronized b()Z
.locals 2
monitor-enter p0
.line 106
:try_start_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
const/4 v1, 0x0
if-eqz v0, :cond_0
.line 107
monitor-exit p0
return v1
.line 109
:cond_0
:try_start_1
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->b:Z
if-nez v0, :cond_1
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->a:Z
if-eqz v0, :cond_3
:cond_1
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->b:Z
if-nez v0, :cond_2
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->a:Z
if-eqz v0, :cond_3
:cond_2
iget-boolean v0, p0, Lokhttp3/internal/http2/Http2Stream;->l:Z
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
if-eqz v0, :cond_3
.line 112
monitor-exit p0
return v1
:cond_3
const/4 v0, 0x1
.line 114
monitor-exit p0
return v0
:catchall_0
move-exception v0
.line 105
monitor-exit p0
throw v0
.end method
.method declared-synchronized c(Lokhttp3/internal/http2/ErrorCode;)V
.locals 1
monitor-enter p0
.line 298
:try_start_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
if-nez v0, :cond_0
.line 299
iput-object p1, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
.line 300
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 302
:cond_0
monitor-exit p0
return-void
:catchall_0
move-exception p1
.line 297
monitor-exit p0
throw p1
.end method
.method public c()Z
.locals 4
.line 119
iget v0, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
const/4 v1, 0x1
and-int/2addr v0, v1
const/4 v2, 0x0
if-ne v0, v1, :cond_0
const/4 v0, 0x1
goto :goto_0
:cond_0
const/4 v0, 0x0
.line 120
:goto_0
iget-object v3, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget-boolean v3, v3, Lokhttp3/internal/http2/Http2Connection;->b:Z
if-ne v3, v0, :cond_1
goto :goto_1
:cond_1
const/4 v1, 0x0
:goto_1
return v1
.end method
.method public declared-synchronized d()Ljava/util/List;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lokhttp3/internal/http2/Header;",
">;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
monitor-enter p0
.line 137
:try_start_0
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->c()Z
move-result v0
if-eqz v0, :cond_2
.line 140
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
invoke-virtual {v0}, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;->enter()V
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_1
.line 142
:goto_0
:try_start_1
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
if-nez v0, :cond_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
if-nez v0, :cond_0
.line 143
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->l()V
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
goto :goto_0
.line 146
:cond_0
:try_start_2
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
invoke-virtual {v0}, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;->a()V
.line 148
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
if-eqz v0, :cond_1
const/4 v1, 0x0
.line 150
iput-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->k:Ljava/util/List;
:try_end_2
.catchall {:try_start_2 .. :try_end_2} :catchall_1
.line 151
monitor-exit p0
return-object v0
.line 153
:cond_1
:try_start_3
new-instance v0, Lokhttp3/internal/http2/StreamResetException;
iget-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
invoke-direct {v0, v1}, Lokhttp3/internal/http2/StreamResetException;-><init>(Lokhttp3/internal/http2/ErrorCode;)V
throw v0
:catchall_0
move-exception v0
.line 146
iget-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
invoke-virtual {v1}, Lokhttp3/internal/http2/Http2Stream$StreamTimeout;->a()V
throw v0
.line 138
:cond_2
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "servers cannot read response headers"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_3
.catchall {:try_start_3 .. :try_end_3} :catchall_1
:catchall_1
move-exception v0
.line 136
monitor-exit p0
throw v0
.end method
.method public e()Lokio/Timeout;
.locals 1
.line 191
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->f:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
return-object v0
.end method
.method public f()Lokio/Timeout;
.locals 1
.line 195
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->g:Lokhttp3/internal/http2/Http2Stream$StreamTimeout;
return-object v0
.end method
.method public g()Lokio/Source;
.locals 1
.line 200
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
return-object v0
.end method
.method public h()Lokio/Sink;
.locals 2
.line 210
monitor-enter p0
.line 211
:try_start_0
iget-boolean v0, p0, Lokhttp3/internal/http2/Http2Stream;->l:Z
if-nez v0, :cond_1
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->c()Z
move-result v0
if-eqz v0, :cond_0
goto :goto_0
.line 212
:cond_0
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "reply before requesting the sink"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 214
:cond_1
:goto_0
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 215
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
return-object v0
:catchall_0
move-exception v0
.line 214
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
.end method
.method i()V
.locals 2
.line 285
sget-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
if-nez v0, :cond_1
invoke-static {p0}, Ljava/lang/Thread;->holdsLock(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
.line 287
:cond_1
:goto_0
monitor-enter p0
.line 288
:try_start_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
const/4 v1, 0x1
iput-boolean v1, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->b:Z
.line 289
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->b()Z
move-result v0
.line 290
invoke-virtual {p0}, Ljava/lang/Object;->notifyAll()V
.line 291
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-nez v0, :cond_2
.line 293
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v1, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {v0, v1}, Lokhttp3/internal/http2/Http2Connection;->b(I)Lokhttp3/internal/http2/Http2Stream;
:cond_2
return-void
:catchall_0
move-exception v0
.line 291
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
.end method
.method j()V
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 442
sget-boolean v0, Lokhttp3/internal/http2/Http2Stream;->i:Z
if-nez v0, :cond_1
invoke-static {p0}, Ljava/lang/Thread;->holdsLock(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
.line 445
:cond_1
:goto_0
monitor-enter p0
.line 446
:try_start_0
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->b:Z
if-nez v0, :cond_3
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->m:Lokhttp3/internal/http2/Http2Stream$FramingSource;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSource;->a:Z
if-eqz v0, :cond_3
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->b:Z
if-nez v0, :cond_2
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->a:Z
if-eqz v0, :cond_3
:cond_2
const/4 v0, 0x1
goto :goto_1
:cond_3
const/4 v0, 0x0
.line 447
:goto_1
invoke-virtual {p0}, Lokhttp3/internal/http2/Http2Stream;->b()Z
move-result v1
.line 448
monitor-exit p0
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
if-eqz v0, :cond_4
.line 454
sget-object v0, Lokhttp3/internal/http2/ErrorCode;->CANCEL:Lokhttp3/internal/http2/ErrorCode;
invoke-virtual {p0, v0}, Lokhttp3/internal/http2/Http2Stream;->a(Lokhttp3/internal/http2/ErrorCode;)V
goto :goto_2
:cond_4
if-nez v1, :cond_5
.line 456
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->d:Lokhttp3/internal/http2/Http2Connection;
iget v1, p0, Lokhttp3/internal/http2/Http2Stream;->c:I
invoke-virtual {v0, v1}, Lokhttp3/internal/http2/Http2Connection;->b(I)Lokhttp3/internal/http2/Http2Stream;
:cond_5
:goto_2
return-void
:catchall_0
move-exception v0
.line 448
:try_start_1
monitor-exit p0
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
throw v0
.end method
.method k()V
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 562
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->a:Z
if-nez v0, :cond_2
.line 564
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->e:Lokhttp3/internal/http2/Http2Stream$FramingSink;
iget-boolean v0, v0, Lokhttp3/internal/http2/Http2Stream$FramingSink;->b:Z
if-nez v0, :cond_1
.line 566
iget-object v0, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
if-nez v0, :cond_0
return-void
.line 567
:cond_0
new-instance v0, Lokhttp3/internal/http2/StreamResetException;
iget-object v1, p0, Lokhttp3/internal/http2/Http2Stream;->h:Lokhttp3/internal/http2/ErrorCode;
invoke-direct {v0, v1}, Lokhttp3/internal/http2/StreamResetException;-><init>(Lokhttp3/internal/http2/ErrorCode;)V
throw v0
.line 565
:cond_1
new-instance v0, Ljava/io/IOException;
const-string v1, "stream finished"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
.line 563
:cond_2
new-instance v0, Ljava/io/IOException;
const-string v1, "stream closed"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method l()V
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/InterruptedIOException;
}
.end annotation
.line 577
:try_start_0
invoke-virtual {p0}, Ljava/lang/Object;->wait()V
:try_end_0
.catch Ljava/lang/InterruptedException; {:try_start_0 .. :try_end_0} :catch_0
return-void
.line 579
:catch_0
new-instance v0, Ljava/io/InterruptedIOException;
invoke-direct {v0}, Ljava/io/InterruptedIOException;-><init>()V
throw v0
.end method