a.smali
.class Lcom/qq/e/comm/plugin/aa/a/a/a;
.super Ljava/lang/Object;
# interfaces
.implements Lcom/qq/e/comm/plugin/aa/a/c/a;
# instance fields
.field private final a:Ljava/lang/String;
.field private final b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
.field private volatile c:I
# direct methods
.method public constructor <init>(Ljava/lang/String;Lcom/qq/e/comm/plugin/aa/a/c/a$a;)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->a:Ljava/lang/String;
iput-object p2, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
return-void
.end method
.method private a(Lcom/qq/e/comm/plugin/aa/a/c;)V
.registers 4
const/16 v1, 0x6b
invoke-virtual {p1}, Lcom/qq/e/comm/plugin/aa/a/c;->a()I
move-result v0
if-ne v0, v1, :cond_19
iget-object v1, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
monitor-enter v1
const/16 v0, 0x6b
:try_start_d
iput v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->c:I
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
invoke-interface {v0}, Lcom/qq/e/comm/plugin/aa/a/c/a$a;->e()V
monitor-exit v1
:goto_15
return-void
:catchall_16
move-exception v0
monitor-exit v1
:try_end_18
.catchall {:try_start_d .. :try_end_18} :catchall_16
throw v0
:cond_19
iget-object v1, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
monitor-enter v1
const/16 v0, 0x6c
:try_start_1e
iput v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->c:I
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
invoke-interface {v0, p1}, Lcom/qq/e/comm/plugin/aa/a/c/a$a;->a(Lcom/qq/e/comm/plugin/aa/a/c;)V
monitor-exit v1
goto :goto_15
:catchall_27
move-exception v0
monitor-exit v1
:try_end_29
.catchall {:try_start_1e .. :try_end_29} :catchall_27
throw v0
.end method
.method private a(Ljava/net/HttpURLConnection;Z)V
.registers 17
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/qq/e/comm/plugin/aa/a/c;
}
.end annotation
const-wide/16 v12, 0x0
const-string v2, "Content-Length"
invoke-virtual {p1, v2}, Ljava/net/HttpURLConnection;->getHeaderField(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v3
if-nez v3, :cond_1e
const-string v3, "0"
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_1e
const-string v3, "-1"
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_88
:cond_1e
invoke-virtual {p1}, Ljava/net/HttpURLConnection;->getContentLength()I
move-result v2
int-to-long v2, v2
move-wide v4, v2
:goto_24
cmp-long v2, v4, v12
if-gtz v2, :cond_74
new-instance v6, Lorg/json/JSONObject;
invoke-direct {v6}, Lorg/json/JSONObject;-><init>()V
:try_start_2d
const-string v2, "requestUrl"
iget-object v3, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->a:Ljava/lang/String;
invoke-virtual {v6, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
invoke-virtual {p1}, Ljava/net/HttpURLConnection;->getHeaderFields()Ljava/util/Map;
move-result-object v2
invoke-interface {v2}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object v2
invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v7
:goto_40
invoke-interface {v7}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_9c
invoke-interface {v7}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
move-object v0, v2
check-cast v0, Ljava/util/Map$Entry;
move-object v3, v0
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
invoke-interface {v3}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v9
:goto_5d
invoke-interface {v9}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_8e
invoke-interface {v9}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
const-string v10, ","
invoke-virtual {v2, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:try_end_72
.catch Lorg/json/JSONException; {:try_start_2d .. :try_end_72} :catch_73
goto :goto_5d
:catch_73
move-exception v2
:cond_74
:goto_74
invoke-direct {p0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->c()V
const/16 v2, 0x67
iput v2, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->c:I
iget-object v3, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
cmp-long v2, v4, v12
if-lez v2, :cond_b0
if-eqz p2, :cond_b0
const/4 v2, 0x1
:goto_84
invoke-interface {v3, v4, v5, v2}, Lcom/qq/e/comm/plugin/aa/a/c/a$a;->a(JZ)V
return-void
:cond_88
invoke-static {v2}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
move-result-wide v2
move-wide v4, v2
goto :goto_24
:cond_8e
:try_start_8e
invoke-interface {v3}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-virtual {v6, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
goto :goto_40
:cond_9c
new-instance v2, Lcom/qq/e/comm/plugin/y/e;
const v3, 0x113e11
invoke-direct {v2, v3}, Lcom/qq/e/comm/plugin/y/e;-><init>(I)V
new-instance v3, Lcom/qq/e/comm/plugin/y/d;
invoke-direct {v3, v6}, Lcom/qq/e/comm/plugin/y/d;-><init>(Lorg/json/JSONObject;)V
invoke-virtual {v2, v3}, Lcom/qq/e/comm/plugin/y/e;->a(Lcom/qq/e/comm/plugin/y/d;)V
invoke-static {v2}, Lcom/qq/e/comm/plugin/y/z;->a(Lcom/qq/e/comm/plugin/y/e;)V
:try_end_af
.catch Lorg/json/JSONException; {:try_start_8e .. :try_end_af} :catch_73
goto :goto_74
:cond_b0
const/4 v2, 0x0
goto :goto_84
.end method
.method private b()V
.registers 8
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/qq/e/comm/plugin/aa/a/c;
}
.end annotation
const/4 v1, 0x0
:try_start_1
new-instance v0, Ljava/net/URL;
iget-object v2, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->a:Ljava/lang/String;
invoke-direct {v0, v2}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
:try_end_8
.catch Ljava/net/MalformedURLException; {:try_start_1 .. :try_end_8} :catch_57
:try_start_8
invoke-virtual {v0}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection;
move-result-object v0
check-cast v0, Ljava/net/HttpURLConnection;
:try_end_e
.catch Ljava/io/FileNotFoundException; {:try_start_8 .. :try_end_e} :catch_6b
.catch Ljava/net/SocketTimeoutException; {:try_start_8 .. :try_end_e} :catch_9b
.catch Ljava/net/ProtocolException; {:try_start_8 .. :try_end_e} :catch_101
.catch Ljava/io/IOException; {:try_start_8 .. :try_end_e} :catch_ff
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_8 .. :try_end_e} :catch_fd
.catch Ljava/lang/Exception; {:try_start_8 .. :try_end_e} :catch_fb
.catchall {:try_start_8 .. :try_end_e} :catchall_76
:try_start_e
const-string v1, "User-Agent"
sget-object v2, Lcom/qq/e/comm/plugin/util/ah;->b:Ljava/lang/String;
invoke-virtual {v0, v1, v2}, Ljava/net/HttpURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V
const/16 v1, 0x2710
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setConnectTimeout(I)V
const/16 v1, 0x2710
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setReadTimeout(I)V
const-string v1, "GET"
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setRequestMethod(Ljava/lang/String;)V
const-string v1, "Range"
const-string v2, "bytes=0-"
invoke-virtual {v0, v1, v2}, Ljava/net/HttpURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V
invoke-static {v0}, Lcom/qq/e/comm/plugin/util/ab;->a(Ljava/net/HttpURLConnection;)Ljava/net/HttpURLConnection;
:try_end_2e
.catch Ljava/io/FileNotFoundException; {:try_start_e .. :try_end_2e} :catch_f3
.catch Ljava/net/SocketTimeoutException; {:try_start_e .. :try_end_2e} :catch_ee
.catch Ljava/net/ProtocolException; {:try_start_e .. :try_end_2e} :catch_a6
.catch Ljava/io/IOException; {:try_start_e .. :try_end_2e} :catch_b4
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_e .. :try_end_2e} :catch_c2
.catch Ljava/lang/Exception; {:try_start_e .. :try_end_2e} :catch_c7
.catchall {:try_start_e .. :try_end_2e} :catchall_f9
move-result-object v1
:try_start_2f
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->getResponseCode()I
move-result v0
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "ConnectTask responseCode :"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
const/16 v2, 0xc8
if-ne v0, v2, :cond_62
const/4 v0, 0x0
invoke-direct {p0, v1, v0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->a(Ljava/net/HttpURLConnection;Z)V
:try_end_51
.catch Ljava/io/FileNotFoundException; {:try_start_2f .. :try_end_51} :catch_6b
.catch Ljava/net/SocketTimeoutException; {:try_start_2f .. :try_end_51} :catch_9b
.catch Ljava/net/ProtocolException; {:try_start_2f .. :try_end_51} :catch_101
.catch Ljava/io/IOException; {:try_start_2f .. :try_end_51} :catch_ff
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_2f .. :try_end_51} :catch_fd
.catch Ljava/lang/Exception; {:try_start_2f .. :try_end_51} :catch_fb
.catchall {:try_start_2f .. :try_end_51} :catchall_76
:goto_51
if-eqz v1, :cond_56
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_56
return-void
:catch_57
move-exception v0
new-instance v1, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v2, 0x3e9
const-string v3, "Invalid url"
invoke-direct {v1, v2, v3, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v1
:cond_62
const/16 v2, 0xce
if-ne v0, v2, :cond_80
const/4 v0, 0x1
:try_start_67
invoke-direct {p0, v1, v0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->a(Ljava/net/HttpURLConnection;Z)V
:try_end_6a
.catch Ljava/io/FileNotFoundException; {:try_start_67 .. :try_end_6a} :catch_6b
.catch Ljava/net/SocketTimeoutException; {:try_start_67 .. :try_end_6a} :catch_9b
.catch Ljava/net/ProtocolException; {:try_start_67 .. :try_end_6a} :catch_101
.catch Ljava/io/IOException; {:try_start_67 .. :try_end_6a} :catch_ff
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_67 .. :try_end_6a} :catch_fd
.catch Ljava/lang/Exception; {:try_start_67 .. :try_end_6a} :catch_fb
.catchall {:try_start_67 .. :try_end_6a} :catchall_76
goto :goto_51
:catch_6b
move-exception v0
:goto_6c
:try_start_6c
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v3, 0x3ea
const-string v4, "404"
invoke-direct {v2, v3, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_76
.catchall {:try_start_6c .. :try_end_76} :catchall_76
:catchall_76
move-exception v0
move-object v6, v1
move-object v1, v0
move-object v0, v6
:goto_7a
if-eqz v0, :cond_7f
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_7f
throw v1
:cond_80
:try_start_80
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const/16 v4, 0x3ed
const-string v5, "UnSupported response code:"
invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v2, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;)V
throw v2
:try_end_9b
.catch Ljava/io/FileNotFoundException; {:try_start_80 .. :try_end_9b} :catch_6b
.catch Ljava/net/SocketTimeoutException; {:try_start_80 .. :try_end_9b} :catch_9b
.catch Ljava/net/ProtocolException; {:try_start_80 .. :try_end_9b} :catch_101
.catch Ljava/io/IOException; {:try_start_80 .. :try_end_9b} :catch_ff
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_80 .. :try_end_9b} :catch_fd
.catch Ljava/lang/Exception; {:try_start_80 .. :try_end_9b} :catch_fb
.catchall {:try_start_80 .. :try_end_9b} :catchall_76
:catch_9b
move-exception v0
:goto_9c
:try_start_9c
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v3, 0x3eb
const-string v4, "timeout"
invoke-direct {v2, v3, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v2
:catch_a6
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
:goto_aa
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v3, 0x3ee
const-string v4, "Protocol exception"
invoke-direct {v2, v3, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v2
:catch_b4
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
:goto_b8
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v3, 0x3ec
const-string v4, "IO exception"
invoke-direct {v2, v3, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v2
:catch_c2
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
:goto_c6
throw v0
:catch_c7
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
:goto_cb
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
new-instance v2, Lcom/qq/e/comm/plugin/y/d;
invoke-direct {v2}, Lcom/qq/e/comm/plugin/y/d;-><init>()V
const-string v3, "exception"
invoke-virtual {v0}, Ljava/lang/Exception;->toString()Ljava/lang/String;
move-result-object v4
invoke-virtual {v2, v3, v4}, Lcom/qq/e/comm/plugin/y/d;->a(Ljava/lang/String;Ljava/lang/Object;)Lcom/qq/e/comm/plugin/y/d;
const v3, 0x1880a
const/4 v4, 0x0
const/4 v5, 0x0
invoke-static {v3, v4, v5, v2}, Lcom/qq/e/comm/plugin/y/z;->a(IILcom/qq/e/comm/plugin/y/c;Lcom/qq/e/comm/plugin/y/d;)V
new-instance v2, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v3, 0x3e8
const-string v4, "unknown exception"
invoke-direct {v2, v3, v4, v0}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_ee
.catchall {:try_start_9c .. :try_end_ee} :catchall_76
:catch_ee
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
goto :goto_9c
:catch_f3
move-exception v1
move-object v6, v1
move-object v1, v0
move-object v0, v6
goto/16 :goto_6c
:catchall_f9
move-exception v1
goto :goto_7a
:catch_fb
move-exception v0
goto :goto_cb
:catch_fd
move-exception v0
goto :goto_c6
:catch_ff
move-exception v0
goto :goto_b8
:catch_101
move-exception v0
goto :goto_aa
.end method
.method private c()V
.registers 4
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/qq/e/comm/plugin/aa/a/c;
}
.end annotation
invoke-virtual {p0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->a()Z
move-result v0
if-eqz v0, :cond_10
new-instance v0, Lcom/qq/e/comm/plugin/aa/a/c;
const/16 v1, 0x6b
const-string v2, "Download paused"
invoke-direct {v0, v1, v2}, Lcom/qq/e/comm/plugin/aa/a/c;-><init>(ILjava/lang/String;)V
throw v0
:cond_10
return-void
.end method
# virtual methods
.method public a()Z
.registers 3
iget v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->c:I
const/16 v1, 0x6b
if-ne v0, v1, :cond_8
const/4 v0, 0x1
:goto_7
return v0
:cond_8
const/4 v0, 0x0
goto :goto_7
.end method
.method public run()V
.registers 2
const/16 v0, 0xa
invoke-static {v0}, Landroid/os/Process;->setThreadPriority(I)V
const/16 v0, 0x66
iput v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->c:I
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/a/a/a;->b:Lcom/qq/e/comm/plugin/aa/a/c/a$a;
invoke-interface {v0}, Lcom/qq/e/comm/plugin/aa/a/c/a$a;->d()V
:try_start_e
invoke-direct {p0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->b()V
:try_end_11
.catch Lcom/qq/e/comm/plugin/aa/a/c; {:try_start_e .. :try_end_11} :catch_12
:goto_11
return-void
:catch_12
move-exception v0
invoke-direct {p0, v0}, Lcom/qq/e/comm/plugin/aa/a/a/a;->a(Lcom/qq/e/comm/plugin/aa/a/c;)V
goto :goto_11
.end method