123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168 |
- .class public final Lokhttp3/internal/cache/CacheStrategy;
- .super Ljava/lang/Object;
- .source ""
- # annotations
- .annotation system Ldalvik/annotation/MemberClasses;
- value = {
- Lokhttp3/internal/cache/CacheStrategy$Factory;
- }
- .end annotation
- # instance fields
- .field public final cacheResponse:Lokhttp3/Response;
- .field public final networkRequest:Lokhttp3/Request;
- # direct methods
- .method constructor <init>(Lokhttp3/Request;Lokhttp3/Response;)V
- .locals 0
- invoke-direct {p0}, Ljava/lang/Object;-><init>()V
- iput-object p1, p0, Lokhttp3/internal/cache/CacheStrategy;->networkRequest:Lokhttp3/Request;
- iput-object p2, p0, Lokhttp3/internal/cache/CacheStrategy;->cacheResponse:Lokhttp3/Response;
- return-void
- .end method
- .method public static isCacheable(Lokhttp3/Response;Lokhttp3/Request;)Z
- .locals 3
- invoke-virtual {p0}, Lokhttp3/Response;->code()I
- move-result v0
- const/16 v1, 0xc8
- const/4 v2, 0x0
- if-eq v0, v1, :cond_2
- const/16 v1, 0x19a
- if-eq v0, v1, :cond_2
- const/16 v1, 0x19e
- if-eq v0, v1, :cond_2
- const/16 v1, 0x1f5
- if-eq v0, v1, :cond_2
- const/16 v1, 0xcb
- if-eq v0, v1, :cond_2
- const/16 v1, 0xcc
- if-eq v0, v1, :cond_2
- const/16 v1, 0x133
- if-eq v0, v1, :cond_0
- const/16 v1, 0x134
- if-eq v0, v1, :cond_2
- const/16 v1, 0x194
- if-eq v0, v1, :cond_2
- const/16 v1, 0x195
- if-eq v0, v1, :cond_2
- packed-switch v0, :pswitch_data_0
- goto :goto_0
- :cond_0
- :pswitch_0
- const-string v0, "Expires"
- invoke-virtual {p0, v0}, Lokhttp3/Response;->header(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v0
- if-nez v0, :cond_2
- invoke-virtual {p0}, Lokhttp3/Response;->cacheControl()Lokhttp3/CacheControl;
- move-result-object v0
- invoke-virtual {v0}, Lokhttp3/CacheControl;->maxAgeSeconds()I
- move-result v0
- const/4 v1, -0x1
- if-ne v0, v1, :cond_2
- invoke-virtual {p0}, Lokhttp3/Response;->cacheControl()Lokhttp3/CacheControl;
- move-result-object v0
- invoke-virtual {v0}, Lokhttp3/CacheControl;->isPublic()Z
- move-result v0
- if-nez v0, :cond_2
- invoke-virtual {p0}, Lokhttp3/Response;->cacheControl()Lokhttp3/CacheControl;
- move-result-object v0
- invoke-virtual {v0}, Lokhttp3/CacheControl;->isPrivate()Z
- move-result v0
- if-eqz v0, :cond_1
- goto :goto_1
- :cond_1
- :goto_0
- return v2
- :cond_2
- :goto_1
- :pswitch_1
- invoke-virtual {p0}, Lokhttp3/Response;->cacheControl()Lokhttp3/CacheControl;
- move-result-object p0
- invoke-virtual {p0}, Lokhttp3/CacheControl;->noStore()Z
- move-result p0
- if-nez p0, :cond_3
- invoke-virtual {p1}, Lokhttp3/Request;->cacheControl()Lokhttp3/CacheControl;
- move-result-object p0
- invoke-virtual {p0}, Lokhttp3/CacheControl;->noStore()Z
- move-result p0
- if-nez p0, :cond_3
- const/4 v2, 0x1
- :cond_3
- return v2
- :pswitch_data_0
- .packed-switch 0x12c
- :pswitch_1
- :pswitch_1
- :pswitch_0
- .end packed-switch
- .end method
|