Response.smali
.class public final Lokhttp3/Response;
.super Ljava/lang/Object;
.source "Response.java"
# interfaces
.implements Ljava/io/Closeable;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lokhttp3/Response$Builder;
}
.end annotation
# instance fields
.field final body:Lokhttp3/ResponseBody;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
.field private volatile cacheControl:Lokhttp3/CacheControl;
.field final cacheResponse:Lokhttp3/Response;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
.field final code:I
.field final handshake:Lokhttp3/Handshake;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
.field final headers:Lokhttp3/Headers;
.field final message:Ljava/lang/String;
.field final networkResponse:Lokhttp3/Response;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
.field final priorResponse:Lokhttp3/Response;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end field
.field final protocol:Lokhttp3/Protocol;
.field final receivedResponseAtMillis:J
.field final request:Lokhttp3/Request;
.field final sentRequestAtMillis:J
# direct methods
.method constructor <init>(Lokhttp3/Response$Builder;)V
.registers 4
.line 59
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 60
iget-object v0, p1, Lokhttp3/Response$Builder;->request:Lokhttp3/Request;
iput-object v0, p0, Lokhttp3/Response;->request:Lokhttp3/Request;
.line 61
iget-object v0, p1, Lokhttp3/Response$Builder;->protocol:Lokhttp3/Protocol;
iput-object v0, p0, Lokhttp3/Response;->protocol:Lokhttp3/Protocol;
.line 62
iget v0, p1, Lokhttp3/Response$Builder;->code:I
iput v0, p0, Lokhttp3/Response;->code:I
.line 63
iget-object v0, p1, Lokhttp3/Response$Builder;->message:Ljava/lang/String;
iput-object v0, p0, Lokhttp3/Response;->message:Ljava/lang/String;
.line 64
iget-object v0, p1, Lokhttp3/Response$Builder;->handshake:Lokhttp3/Handshake;
iput-object v0, p0, Lokhttp3/Response;->handshake:Lokhttp3/Handshake;
.line 65
iget-object v0, p1, Lokhttp3/Response$Builder;->headers:Lokhttp3/Headers$Builder;
invoke-virtual {v0}, Lokhttp3/Headers$Builder;->build()Lokhttp3/Headers;
move-result-object v0
iput-object v0, p0, Lokhttp3/Response;->headers:Lokhttp3/Headers;
.line 66
iget-object v0, p1, Lokhttp3/Response$Builder;->body:Lokhttp3/ResponseBody;
iput-object v0, p0, Lokhttp3/Response;->body:Lokhttp3/ResponseBody;
.line 67
iget-object v0, p1, Lokhttp3/Response$Builder;->networkResponse:Lokhttp3/Response;
iput-object v0, p0, Lokhttp3/Response;->networkResponse:Lokhttp3/Response;
.line 68
iget-object v0, p1, Lokhttp3/Response$Builder;->cacheResponse:Lokhttp3/Response;
iput-object v0, p0, Lokhttp3/Response;->cacheResponse:Lokhttp3/Response;
.line 69
iget-object v0, p1, Lokhttp3/Response$Builder;->priorResponse:Lokhttp3/Response;
iput-object v0, p0, Lokhttp3/Response;->priorResponse:Lokhttp3/Response;
.line 70
iget-wide v0, p1, Lokhttp3/Response$Builder;->sentRequestAtMillis:J
iput-wide v0, p0, Lokhttp3/Response;->sentRequestAtMillis:J
.line 71
iget-wide v0, p1, Lokhttp3/Response$Builder;->receivedResponseAtMillis:J
iput-wide v0, p0, Lokhttp3/Response;->receivedResponseAtMillis:J
return-void
.end method
# virtual methods
.method public body()Lokhttp3/ResponseBody;
.registers 2
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.line 177
iget-object v0, p0, Lokhttp3/Response;->body:Lokhttp3/ResponseBody;
return-object v0
.end method
.method public cacheControl()Lokhttp3/CacheControl;
.registers 2
.line 250
iget-object v0, p0, Lokhttp3/Response;->cacheControl:Lokhttp3/CacheControl;
if-eqz v0, :cond_5
goto :goto_d
.line 251
:cond_5
iget-object v0, p0, Lokhttp3/Response;->headers:Lokhttp3/Headers;
invoke-static {v0}, Lokhttp3/CacheControl;->parse(Lokhttp3/Headers;)Lokhttp3/CacheControl;
move-result-object v0
iput-object v0, p0, Lokhttp3/Response;->cacheControl:Lokhttp3/CacheControl;
:goto_d
return-object v0
.end method
.method public cacheResponse()Lokhttp3/Response;
.registers 2
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.line 214
iget-object v0, p0, Lokhttp3/Response;->cacheResponse:Lokhttp3/Response;
return-object v0
.end method
.method public challenges()Ljava/util/List;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/List<",
"Lokhttp3/Challenge;",
">;"
}
.end annotation
.line 235
iget v0, p0, Lokhttp3/Response;->code:I
const/16 v1, 0x191
if-ne v0, v1, :cond_9
const-string v0, "WWW-Authenticate"
goto :goto_f
:cond_9
const/16 v1, 0x197
if-ne v0, v1, :cond_18
const-string v0, "Proxy-Authenticate"
.line 242
:goto_f
invoke-virtual {p0}, Lokhttp3/Response;->headers()Lokhttp3/Headers;
move-result-object v1
invoke-static {v1, v0}, Lokhttp3/internal/http/HttpHeaders;->parseChallenges(Lokhttp3/Headers;Ljava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.line 240
:cond_18
invoke-static {}, Ljava/util/Collections;->emptyList()Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public close()V
.registers 3
.line 280
iget-object v0, p0, Lokhttp3/Response;->body:Lokhttp3/ResponseBody;
if-eqz v0, :cond_8
.line 283
invoke-virtual {v0}, Lokhttp3/ResponseBody;->close()V
return-void
.line 281
:cond_8
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "response is not eligible for a body and must not be closed"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public code()I
.registers 2
.line 98
iget v0, p0, Lokhttp3/Response;->code:I
return v0
.end method
.method public handshake()Lokhttp3/Handshake;
.registers 2
.line 119
iget-object v0, p0, Lokhttp3/Response;->handshake:Lokhttp3/Handshake;
return-object v0
.end method
.method public header(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
const/4 v0, 0x0
.line 127
invoke-virtual {p0, p1, v0}, Lokhttp3/Response;->header(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public header(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 4
.param p2 # Ljava/lang/String;
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.end param
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.line 131
iget-object v0, p0, Lokhttp3/Response;->headers:Lokhttp3/Headers;
invoke-virtual {v0, p1}, Lokhttp3/Headers;->get(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
if-eqz p1, :cond_9
move-object p2, p1
:cond_9
return-object p2
.end method
.method public headers(Ljava/lang/String;)Ljava/util/List;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 123
iget-object v0, p0, Lokhttp3/Response;->headers:Lokhttp3/Headers;
invoke-virtual {v0, p1}, Lokhttp3/Headers;->values(Ljava/lang/String;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public headers()Lokhttp3/Headers;
.registers 2
.line 136
iget-object v0, p0, Lokhttp3/Response;->headers:Lokhttp3/Headers;
return-object v0
.end method
.method public isRedirect()Z
.registers 3
.line 186
iget v0, p0, Lokhttp3/Response;->code:I
const/16 v1, 0x133
if-eq v0, v1, :cond_f
const/16 v1, 0x134
if-eq v0, v1, :cond_f
packed-switch v0, :pswitch_data_12
const/4 v0, 0x0
return v0
:cond_f
:pswitch_f
const/4 v0, 0x1
return v0
nop
:pswitch_data_12
.packed-switch 0x12c
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
.end packed-switch
.end method
.method public isSuccessful()Z
.registers 3
.line 106
iget v0, p0, Lokhttp3/Response;->code:I
const/16 v1, 0xc8
if-lt v0, v1, :cond_c
const/16 v1, 0x12c
if-ge v0, v1, :cond_c
const/4 v0, 0x1
goto :goto_d
:cond_c
const/4 v0, 0x0
:goto_d
return v0
.end method
.method public message()Ljava/lang/String;
.registers 2
.line 111
iget-object v0, p0, Lokhttp3/Response;->message:Ljava/lang/String;
return-object v0
.end method
.method public networkResponse()Lokhttp3/Response;
.registers 2
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.line 205
iget-object v0, p0, Lokhttp3/Response;->networkResponse:Lokhttp3/Response;
return-object v0
.end method
.method public newBuilder()Lokhttp3/Response$Builder;
.registers 2
.line 181
new-instance v0, Lokhttp3/Response$Builder;
invoke-direct {v0, p0}, Lokhttp3/Response$Builder;-><init>(Lokhttp3/Response;)V
return-object v0
.end method
.method public peekBody(J)Lokhttp3/ResponseBody;
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 151
iget-object v0, p0, Lokhttp3/Response;->body:Lokhttp3/ResponseBody;
invoke-virtual {v0}, Lokhttp3/ResponseBody;->source()Lokio/BufferedSource;
move-result-object v0
.line 152
invoke-interface {v0, p1, p2}, Lokio/BufferedSource;->request(J)Z
.line 153
invoke-interface {v0}, Lokio/BufferedSource;->buffer()Lokio/Buffer;
move-result-object v0
invoke-virtual {v0}, Lokio/Buffer;->clone()Lokio/Buffer;
move-result-object v0
.line 157
invoke-virtual {v0}, Lokio/Buffer;->size()J
move-result-wide v1
cmp-long v3, v1, p1
if-lez v3, :cond_25
.line 158
new-instance v1, Lokio/Buffer;
invoke-direct {v1}, Lokio/Buffer;-><init>()V
.line 159
invoke-virtual {v1, v0, p1, p2}, Lokio/Buffer;->write(Lokio/Buffer;J)V
.line 160
invoke-virtual {v0}, Lokio/Buffer;->clear()V
move-object v0, v1
.line 165
:cond_25
iget-object p1, p0, Lokhttp3/Response;->body:Lokhttp3/ResponseBody;
invoke-virtual {p1}, Lokhttp3/ResponseBody;->contentType()Lokhttp3/MediaType;
move-result-object p1
invoke-virtual {v0}, Lokio/Buffer;->size()J
move-result-wide v1
invoke-static {p1, v1, v2, v0}, Lokhttp3/ResponseBody;->create(Lokhttp3/MediaType;JLokio/BufferedSource;)Lokhttp3/ResponseBody;
move-result-object p1
return-object p1
.end method
.method public priorResponse()Lokhttp3/Response;
.registers 2
.annotation runtime Ljavax/annotation/Nullable;
.end annotation
.line 224
iget-object v0, p0, Lokhttp3/Response;->priorResponse:Lokhttp3/Response;
return-object v0
.end method
.method public protocol()Lokhttp3/Protocol;
.registers 2
.line 93
iget-object v0, p0, Lokhttp3/Response;->protocol:Lokhttp3/Protocol;
return-object v0
.end method
.method public receivedResponseAtMillis()J
.registers 3
.line 269
iget-wide v0, p0, Lokhttp3/Response;->receivedResponseAtMillis:J
return-wide v0
.end method
.method public request()Lokhttp3/Request;
.registers 2
.line 86
iget-object v0, p0, Lokhttp3/Response;->request:Lokhttp3/Request;
return-object v0
.end method
.method public sentRequestAtMillis()J
.registers 3
.line 260
iget-wide v0, p0, Lokhttp3/Response;->sentRequestAtMillis:J
return-wide v0
.end method
.method public toString()Ljava/lang/String;
.registers 3
.line 287
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "Response{protocol="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lokhttp3/Response;->protocol:Lokhttp3/Protocol;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", code="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v1, p0, Lokhttp3/Response;->code:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, ", message="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lokhttp3/Response;->message:Ljava/lang/String;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, ", url="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lokhttp3/Response;->request:Lokhttp3/Request;
.line 294
invoke-virtual {v1}, Lokhttp3/Request;->url()Lokhttp3/HttpUrl;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const/16 v1, 0x7d
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method