OkHttpPropertyNetworkFetcher$2.smali
.class Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Lokhttp3/f;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->doFetchWithRequest(Lokhttp3/e;Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field private mHasFinished:Z
.field final synthetic this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
.field final synthetic val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
.field final synthetic val$fetchState:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;
.field final synthetic val$propertyKey:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;
# direct methods
.method constructor <init>(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
.registers 5
.line 245
iput-object p1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
iput-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$fetchState:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;
iput-object p3, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
iput-object p4, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$propertyKey:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 p1, 0x0
.line 246
iput-boolean p1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->mHasFinished:Z
return-void
.end method
.method private doOnFinishFetch(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
.registers 6
.line 295
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
.line 296
invoke-virtual {p1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;->isMoreType()Z
move-result v1
.line 297
iget-object v2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mQueueLock:Ljava/lang/Object;
invoke-static {v2}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$600(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/lang/Object;
move-result-object v2
monitor-enter v2
.line 298
:try_start_10
iget-boolean v3, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->mHasFinished:Z
if-nez v3, :cond_53
const/4 v3, 0x1
.line 299
iput-boolean v3, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->mHasFinished:Z
.line 300
iget-object v3, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# operator-- for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mRunningCount:I
invoke-static {v3}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$710(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)I
if-eqz v1, :cond_23
.line 302
iget-object v3, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# operator-- for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mRunningMoreCount:I
invoke-static {v3}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$810(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)I
:cond_23
if-eqz v1, :cond_38
.line 305
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mMoreQueue:Ljava/util/PriorityQueue;
invoke-static {v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$900(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/PriorityQueue;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/util/PriorityQueue;->remove(Ljava/lang/Object;)Z
.line 306
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mMoreFetchMap:Ljava/util/HashMap;
invoke-static {v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$1000(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/HashMap;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_4a
.line 308
:cond_38
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mQueue:Ljava/util/PriorityQueue;
invoke-static {v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$1100(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/PriorityQueue;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/util/PriorityQueue;->remove(Ljava/lang/Object;)Z
.line 309
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mFetchMap:Ljava/util/HashMap;
invoke-static {v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$1200(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/HashMap;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 311
:goto_4a
iget-object p1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# invokes: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->findValidPendingFetch()Ljava/util/List;
invoke-static {p1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$1300(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/List;
move-result-object p1
invoke-interface {v0, p1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
.line 313
:cond_53
monitor-exit v2
:try_end_54
.catchall {:try_start_10 .. :try_end_54} :catchall_5a
.line 314
iget-object p1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# invokes: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->doPendingFetch(Ljava/util/List;)V
invoke-static {p1, v0}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$1400(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;Ljava/util/List;)V
return-void
:catchall_5a
move-exception p1
.line 313
:try_start_5b
monitor-exit v2
:try_end_5c
.catchall {:try_start_5b .. :try_end_5c} :catchall_5a
throw p1
.end method
# virtual methods
.method public onFailure(Lokhttp3/e;Ljava/io/IOException;)V
.registers 5
.line 289
iget-object v0, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mCount:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-static {v0}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$400(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/concurrent/atomic/AtomicInteger;
move-result-object v0
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->decrementAndGet()I
.line 290
iget-object v0, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$propertyKey:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;
invoke-direct {p0, v0}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->doOnFinishFetch(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
.line 291
iget-object v0, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
# invokes: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->handleException(Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
invoke-static {v0, p1, p2, v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$500(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
return-void
.end method
.method public onResponse(Lokhttp3/e;Lokhttp3/ad;)V
.registers 8
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
.line 250
iget-object v0, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
# getter for: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->mCount:Ljava/util/concurrent/atomic/AtomicInteger;
invoke-static {v0}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$400(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;)Ljava/util/concurrent/atomic/AtomicInteger;
move-result-object v0
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;->decrementAndGet()I
.line 251
iget-object v0, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$fetchState:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v1
iput-wide v1, v0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;->responseTime:J
.line 1177
iget-object v0, p2, Lokhttp3/ad;->g:Lokhttp3/ae;
.line 254
:try_start_13
invoke-virtual {p2}, Lokhttp3/ad;->b()Z
move-result v1
if-nez v1, :cond_38
.line 255
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
new-instance v2, Ljava/io/IOException;
const-string v3, "Unexpected HTTP code "
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
invoke-virtual {v3, p2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-direct {v2, p2}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
iget-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
# invokes: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->handleException(Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
invoke-static {v1, p1, v2, p2}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$500(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
:try_end_2f
.catch Ljava/lang/Exception; {:try_start_13 .. :try_end_2f} :catch_79
.catchall {:try_start_13 .. :try_end_2f} :catchall_77
.line 282
:goto_2f
invoke-virtual {v0}, Lokhttp3/ae;->close()V
.line 283
iget-object p1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$propertyKey:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;
invoke-direct {p0, p1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->doOnFinishFetch(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
return-void
:cond_38
:try_start_38
const-string v1, "Content-Range"
.line 2127
invoke-virtual {p2, v1}, Lokhttp3/ad;->b(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 263
invoke-static {v1}, Lcom/facebook/imagepipeline/common/BytesRange;->fromContentRangeHeader(Ljava/lang/String;)Lcom/facebook/imagepipeline/common/BytesRange;
move-result-object v1
if-eqz v1, :cond_61
.line 265
iget v2, v1, Lcom/facebook/imagepipeline/common/BytesRange;->from:I
if-nez v2, :cond_4f
iget v2, v1, Lcom/facebook/imagepipeline/common/BytesRange;->to:I
const v3, 0x7fffffff
if-eq v2, v3, :cond_61
.line 3098
:cond_4f
iget p2, p2, Lokhttp3/ad;->c:I
const/16 v2, 0xce
if-ne p2, v2, :cond_61
.line 270
iget-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$fetchState:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;
invoke-virtual {p2, v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;->setResponseBytesRange(Lcom/facebook/imagepipeline/common/BytesRange;)V
.line 271
iget-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$fetchState:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;
const/16 v1, 0x8
invoke-virtual {p2, v1}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$OkHttpNetworkFetchState;->setOnNewResultStatusFlags(I)V
.line 274
:cond_61
invoke-virtual {v0}, Lokhttp3/ae;->b()J
move-result-wide v1
const-wide/16 v3, 0x0
cmp-long p2, v1, v3
if-gez p2, :cond_6c
move-wide v1, v3
.line 278
:cond_6c
iget-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
invoke-virtual {v0}, Lokhttp3/ae;->d()Ljava/io/InputStream;
move-result-object v3
long-to-int v2, v1
invoke-interface {p2, v3, v2}, Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;->onResponse(Ljava/io/InputStream;I)V
:try_end_76
.catch Ljava/lang/Exception; {:try_start_38 .. :try_end_76} :catch_79
.catchall {:try_start_38 .. :try_end_76} :catchall_77
goto :goto_2f
:catchall_77
move-exception p1
goto :goto_82
:catch_79
move-exception p2
.line 280
:try_start_7a
iget-object v1, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->this$0:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;
iget-object v2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$callback:Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;
# invokes: Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->handleException(Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
invoke-static {v1, p1, p2, v2}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;->access$500(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher;Lokhttp3/e;Ljava/lang/Exception;Lcom/facebook/imagepipeline/producers/NetworkFetcher$Callback;)V
:try_end_81
.catchall {:try_start_7a .. :try_end_81} :catchall_77
goto :goto_2f
.line 282
:goto_82
invoke-virtual {v0}, Lokhttp3/ae;->close()V
.line 283
iget-object p2, p0, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->val$propertyKey:Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;
invoke-direct {p0, p2}, Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$2;->doOnFinishFetch(Lcom/facebook/imagepipeline/backends/okhttp3/OkHttpPropertyNetworkFetcher$PropertyKey;)V
goto :goto_8c
:goto_8b
throw p1
:goto_8c
goto :goto_8b
.end method