CacheInterceptor.smali
.class public final Lokhttp3/internal/cache/CacheInterceptor;
.super Ljava/lang/Object;
# interfaces
.implements Lokhttp3/Interceptor;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lokhttp3/internal/cache/CacheInterceptor$Companion;
}
.end annotation
# static fields
.field public static final b:Lokhttp3/internal/cache/CacheInterceptor$Companion;
# instance fields
.field private final a:Lokhttp3/Cache;
# direct methods
.method static constructor <clinit>()V
.registers 2
new-instance v0, Lokhttp3/internal/cache/CacheInterceptor$Companion;
const/4 v1, 0x0
invoke-direct {v0, v1}, Lokhttp3/internal/cache/CacheInterceptor$Companion;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v0, Lokhttp3/internal/cache/CacheInterceptor;->b:Lokhttp3/internal/cache/CacheInterceptor$Companion;
return-void
.end method
.method public constructor <init>(Lokhttp3/Cache;)V
.registers 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lokhttp3/internal/cache/CacheInterceptor;->a:Lokhttp3/Cache;
return-void
.end method
.method private final b(Lokhttp3/internal/cache/CacheRequest;Lokhttp3/Response;)Lokhttp3/Response;
.registers 7
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
if-nez p1, :cond_3
return-object p2
:cond_3
invoke-interface {p1}, Lokhttp3/internal/cache/CacheRequest;->body()Lokio/Sink;
move-result-object v0
invoke-virtual {p2}, Lokhttp3/Response;->a()Lokhttp3/ResponseBody;
move-result-object v1
const/4 v2, 0x0
if-eqz v1, :cond_3f
invoke-virtual {v1}, Lokhttp3/ResponseBody;->k()Lokio/BufferedSource;
move-result-object v1
invoke-static {v0}, Lokio/Okio;->c(Lokio/Sink;)Lokio/BufferedSink;
move-result-object v0
new-instance v3, Lokhttp3/internal/cache/CacheInterceptor$cacheWritingResponse$cacheWritingSource$1;
invoke-direct {v3, v1, p1, v0}, Lokhttp3/internal/cache/CacheInterceptor$cacheWritingResponse$cacheWritingSource$1;-><init>(Lokio/BufferedSource;Lokhttp3/internal/cache/CacheRequest;Lokio/BufferedSink;)V
const/4 p1, 0x2
const-string v0, "Content-Type"
invoke-static {p2, v0, v2, p1, v2}, Lokhttp3/Response;->o(Lokhttp3/Response;Ljava/lang/String;Ljava/lang/String;ILjava/lang/Object;)Ljava/lang/String;
move-result-object p1
invoke-virtual {p2}, Lokhttp3/Response;->a()Lokhttp3/ResponseBody;
move-result-object v0
invoke-virtual {v0}, Lokhttp3/ResponseBody;->f()J
move-result-wide v0
invoke-virtual {p2}, Lokhttp3/Response;->u()Lokhttp3/Response$Builder;
move-result-object p2
new-instance v2, Lokhttp3/internal/http/RealResponseBody;
invoke-static {v3}, Lokio/Okio;->d(Lokio/Source;)Lokio/BufferedSource;
move-result-object v3
invoke-direct {v2, p1, v0, v1, v3}, Lokhttp3/internal/http/RealResponseBody;-><init>(Ljava/lang/String;JLokio/BufferedSource;)V
invoke-virtual {p2, v2}, Lokhttp3/Response$Builder;->b(Lokhttp3/ResponseBody;)Lokhttp3/Response$Builder;
invoke-virtual {p2}, Lokhttp3/Response$Builder;->c()Lokhttp3/Response;
move-result-object p1
return-object p1
:cond_3f
invoke-static {}, Lkotlin/jvm/internal/Intrinsics;->h()V
throw v2
.end method
# virtual methods
.method public a(Lokhttp3/Interceptor$Chain;)Lokhttp3/Response;
.registers 10
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
const-string v0, "chain"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->c(Ljava/lang/Object;Ljava/lang/String;)V
invoke-interface {p1}, Lokhttp3/Interceptor$Chain;->call()Lokhttp3/Call;
move-result-object v0
iget-object v1, p0, Lokhttp3/internal/cache/CacheInterceptor;->a:Lokhttp3/Cache;
const/4 v2, 0x0
if-eqz v1, :cond_17
invoke-interface {p1}, Lokhttp3/Interceptor$Chain;->request()Lokhttp3/Request;
move-resul