.class public final Lcom/squareup/picasso/OkHttp3Downloader; .super Ljava/lang/Object; .source "OkHttp3Downloader.java" # interfaces .implements Lcom/squareup/picasso/Downloader; # instance fields .field private final a:Lokhttp3/Call$Factory; .field private final b:Lokhttp3/Cache; # direct methods .method public constructor (Landroid/content/Context;)V .locals 0 .line 39 invoke-static {p1}, Lcom/squareup/picasso/Utils;->b(Landroid/content/Context;)Ljava/io/File; move-result-object p1 invoke-direct {p0, p1}, Lcom/squareup/picasso/OkHttp3Downloader;->(Ljava/io/File;)V return-void .end method .method public constructor (Ljava/io/File;)V .locals 2 .line 49 invoke-static {p1}, Lcom/squareup/picasso/Utils;->a(Ljava/io/File;)J move-result-wide v0 invoke-direct {p0, p1, v0, v1}, Lcom/squareup/picasso/OkHttp3Downloader;->(Ljava/io/File;J)V return-void .end method .method public constructor (Ljava/io/File;J)V .locals 2 .line 70 new-instance v0, Lokhttp3/OkHttpClient$Builder; invoke-direct {v0}, Lokhttp3/OkHttpClient$Builder;->()V new-instance v1, Lokhttp3/Cache; invoke-direct {v1, p1, p2, p3}, Lokhttp3/Cache;->(Ljava/io/File;J)V invoke-virtual {v0, v1}, Lokhttp3/OkHttpClient$Builder;->a(Lokhttp3/Cache;)Lokhttp3/OkHttpClient$Builder; move-result-object p1 invoke-virtual {p1}, Lokhttp3/OkHttpClient$Builder;->c()Lokhttp3/OkHttpClient; move-result-object p1 invoke-direct {p0, p1}, Lcom/squareup/picasso/OkHttp3Downloader;->(Lokhttp3/OkHttpClient;)V return-void .end method .method public constructor (Lokhttp3/OkHttpClient;)V .locals 0 .line 77 invoke-direct {p0}, Ljava/lang/Object;->()V .line 78 iput-object p1, p0, Lcom/squareup/picasso/OkHttp3Downloader;->a:Lokhttp3/Call$Factory; .line 79 invoke-virtual {p1}, Lokhttp3/OkHttpClient;->g()Lokhttp3/Cache; move-result-object p1 iput-object p1, p0, Lcom/squareup/picasso/OkHttp3Downloader;->b:Lokhttp3/Cache; return-void .end method # virtual methods .method public a(Landroid/net/Uri;I)Lcom/squareup/picasso/Downloader$Response; .locals 4 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation if-eqz p2, :cond_3 .line 91 invoke-static {p2}, Lcom/squareup/picasso/NetworkPolicy;->isOfflineOnly(I)Z move-result v0 if-eqz v0, :cond_0 .line 92 sget-object v0, Lokhttp3/CacheControl;->b:Lokhttp3/CacheControl; goto :goto_0 .line 94 :cond_0 new-instance v0, Lokhttp3/CacheControl$Builder; invoke-direct {v0}, Lokhttp3/CacheControl$Builder;->()V .line 95 invoke-static {p2}, Lcom/squareup/picasso/NetworkPolicy;->shouldReadFromDiskCache(I)Z move-result v1 if-nez v1, :cond_1 .line 96 invoke-virtual {v0}, Lokhttp3/CacheControl$Builder;->a()Lokhttp3/CacheControl$Builder; .line 98 :cond_1 invoke-static {p2}, Lcom/squareup/picasso/NetworkPolicy;->shouldWriteToDiskCache(I)Z move-result v1 if-nez v1, :cond_2 .line 99 invoke-virtual {v0}, Lokhttp3/CacheControl$Builder;->b()Lokhttp3/CacheControl$Builder; .line 101 :cond_2 invoke-virtual {v0}, Lokhttp3/CacheControl$Builder;->d()Lokhttp3/CacheControl; move-result-object v0 goto :goto_0 :cond_3 const/4 v0, 0x0 .line 105 :goto_0 new-instance v1, Lokhttp3/Request$Builder; invoke-direct {v1}, Lokhttp3/Request$Builder;->()V invoke-virtual {p1}, Landroid/net/Uri;->toString()Ljava/lang/String; move-result-object p1 invoke-virtual {v1, p1}, Lokhttp3/Request$Builder;->a(Ljava/lang/String;)Lokhttp3/Request$Builder; move-result-object p1 if-eqz v0, :cond_4 .line 107 invoke-virtual {p1, v0}, Lokhttp3/Request$Builder;->a(Lokhttp3/CacheControl;)Lokhttp3/Request$Builder; .line 110 :cond_4 iget-object v0, p0, Lcom/squareup/picasso/OkHttp3Downloader;->a:Lokhttp3/Call$Factory; invoke-virtual {p1}, Lokhttp3/Request$Builder;->b()Lokhttp3/Request; move-result-object p1 invoke-interface {v0, p1}, Lokhttp3/Call$Factory;->a(Lokhttp3/Request;)Lokhttp3/Call; move-result-object p1 invoke-interface {p1}, Lokhttp3/Call;->b()Lokhttp3/Response; move-result-object p1 .line 111 invoke-virtual {p1}, Lokhttp3/Response;->c()I move-result v0 const/16 v1, 0x12c if-ge v0, v1, :cond_6 .line 118 invoke-virtual {p1}, Lokhttp3/Response;->k()Lokhttp3/Response; move-result-object p2 if-eqz p2, :cond_5 const/4 p2, 0x1 goto :goto_1 :cond_5 const/4 p2, 0x0 .line 120 :goto_1 invoke-virtual {p1}, Lokhttp3/Response;->h()Lokhttp3/ResponseBody; move-result-object p1 .line 121 new-instance v0, Lcom/squareup/picasso/Downloader$Response; invoke-virtual {p1}, Lokhttp3/ResponseBody;->d()Ljava/io/InputStream; move-result-object v1 invoke-virtual {p1}, Lokhttp3/ResponseBody;->b()J move-result-wide v2 invoke-direct {v0, v1, p2, v2, v3}, Lcom/squareup/picasso/Downloader$Response;->(Ljava/io/InputStream;ZJ)V return-object v0 .line 113 :cond_6 invoke-virtual {p1}, Lokhttp3/Response;->h()Lokhttp3/ResponseBody; move-result-object v1 invoke-virtual {v1}, Lokhttp3/ResponseBody;->close()V .line 114 new-instance v1, Lcom/squareup/picasso/Downloader$ResponseException; new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v3, " " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1}, Lokhttp3/Response;->e()Ljava/lang/String; move-result-object p1 invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v1, p1, p2, v0}, Lcom/squareup/picasso/Downloader$ResponseException;->(Ljava/lang/String;II)V throw v1 .end method