NetUtil.smali
.class public Lcom/baidu/idl/util/NetUtil;
.super Ljava/lang/Object;
.source "NetUtil.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/baidu/idl/util/NetUtil$RequestAdapter;
}
.end annotation
# static fields
.field private static final TAG:Ljava/lang/String; = "NetUtil"
# direct methods
.method private constructor <init>()V
.registers 3
.prologue
.line 119
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 120
new-instance v0, Ljava/lang/RuntimeException;
const-string v1, "This class instance can not be created."
invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public static isConnected(Landroid/content/Context;)Z
.registers 2
.prologue
.line 109
const-string v0, "connectivity"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/net/ConnectivityManager;
.line 110
invoke-virtual {v0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
move-result-object v0
.line 112
if-nez v0, :cond_10
.line 113
const/4 v0, 0x0
.line 116
:goto_f
return v0
:cond_10
invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z
move-result v0
goto :goto_f
.end method
.method public static uploadData(Lcom/baidu/idl/util/NetUtil$RequestAdapter;)V
.registers 13
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Lcom/baidu/idl/util/NetUtil$RequestAdapter",
"<TT;>;)V"
}
.end annotation
.prologue
const/4 v10, 0x0
const/4 v9, 0x1
const/4 v4, 0x0
.line 22
.line 23
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getRetryCount()I
move-result v0
move-object v2, v4
move-object v3, v4
move-object v1, v4
move v5, v0
.line 40
:goto_b
:try_start_b
new-instance v0, Ljava/net/URL;
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getURL()Ljava/lang/String;
move-result-object v6
invoke-direct {v0, v6}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
.line 41
invoke-virtual {v0}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection;
move-result-object v0
check-cast v0, Ljava/net/HttpURLConnection;
:try_end_1a
.catch Ljava/net/SocketTimeoutException; {:try_start_b .. :try_end_1a} :catch_9e
.catch Ljava/io/IOException; {:try_start_b .. :try_end_1a} :catch_be
.catch Lorg/json/JSONException; {:try_start_b .. :try_end_1a} :catch_d7
.catch Ljava/lang/Exception; {:try_start_b .. :try_end_1a} :catch_f0
.catchall {:try_start_b .. :try_end_1a} :catchall_138
.line 42
:try_start_1a
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getConnectTimeout()I
move-result v1
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setConnectTimeout(I)V
.line 43
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setDoInput(Z)V
.line 44
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setDoOutput(Z)V
.line 45
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getReadTimeout()I
move-result v1
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setReadTimeout(I)V
.line 46
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getRequestMethod()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setRequestMethod(Ljava/lang/String;)V
.line 47
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/net/HttpURLConnection;->setUseCaches(Z)V
.line 49
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getOutputStream()Ljava/io/OutputStream;
move-result-object v3
.line 50
invoke-virtual {p0}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->getRequestString()Ljava/lang/String;
move-result-object v1
const-string v6, "UTF-8"
invoke-virtual {v1, v6}, Ljava/lang/String;->getBytes(Ljava/lang/String;)[B
move-result-object v1
invoke-virtual {v3, v1}, Ljava/io/OutputStream;->write([B)V
.line 51
invoke-virtual {v3}, Ljava/io/OutputStream;->flush()V
.line 53
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getResponseCode()I
move-result v1
const/16 v6, 0xc8
if-eq v1, v6, :cond_93
.line 55
const/4 v7, 0x4
.line 56
new-instance v6, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "ResponseCode: "
invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getResponseCode()I
move-result v8
invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v6, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
:try_end_74
.catch Ljava/net/SocketTimeoutException; {:try_start_1a .. :try_end_74} :catch_14f
.catch Ljava/io/IOException; {:try_start_1a .. :try_end_74} :catch_149
.catch Lorg/json/JSONException; {:try_start_1a .. :try_end_74} :catch_144
.catch Ljava/lang/Exception; {:try_start_1a .. :try_end_74} :catch_13f
.catchall {:try_start_1a .. :try_end_74} :catchall_13a
move-object v1, v4
.line 83
:goto_75
if-eqz v3, :cond_7a
.line 85
:try_start_77
invoke-virtual {v3}, Ljava/io/OutputStream;->close()V
:try_end_7a
.catch Ljava/io/IOException; {:try_start_77 .. :try_end_7a} :catch_11e
.line 91
:cond_7a
:goto_7a
if-eqz v2, :cond_7f
.line 93
:try_start_7c
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_7f
.catch Ljava/io/IOException; {:try_start_7c .. :try_end_7f} :catch_121
.line 99
:cond_7f
:goto_7f
if-eqz v0, :cond_176
.line 100
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->disconnect()V
move v8, v7
move-object v7, v6
move-object v6, v1
move-object v1, v0
move v0, v10
.line 103
:goto_89
if-eqz v0, :cond_8f
add-int/lit8 v0, v5, -0x1
if-gtz v5, :cond_157
.line 105
:cond_8f
invoke-virtual {p0, v8, v6, v7}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->onResponse(ILjava/lang/Object;Ljava/lang/Exception;)V
.line 106
return-void
.line 58
:cond_93
:try_start_93
invoke-virtual {v0}, Ljava/net/HttpURLConnection;->getInputStream()Ljava/io/InputStream;
move-result-object v2
.line 59
invoke-virtual {p0, v2}, Lcom/baidu/idl/util/NetUtil$RequestAdapter;->parseResponse(Ljava/io/InputStream;)Ljava/lang/Object;
:try_end_9a
.catch Ljava/net/SocketTimeoutException; {:try_start_93 .. :try_end_9a} :catch_14f
.catch Ljava/io/IOException; {:try_start_93 .. :try_end_9a} :catch_149
.catch Lorg/json/JSONException; {:try_start_93 .. :try_end_9a} :catch_144
.catch Ljava/lang/Exception; {:try_start_93 .. :try_end_9a} :catch_13f
.catchall {:try_start_93 .. :try_end_9a} :catchall_13a
move-result-object v1
move-object v6, v4
move v7, v10
goto :goto_75
.line 61
:catch_9e
move-exception v0
move-object v11, v2
move-object v2, v3
move-object v3, v1
move-object v1, v11
.line 62
:goto_a3
:try_start_a3
invoke-virtual {v0}, Ljava/net/SocketTimeoutException;->printStackTrace()V
:try_end_a6
.catchall {:try_start_a3 .. :try_end_a6} :catchall_109
.line 83
if-eqz v2, :cond_ab
.line 85
:try_start_a8
invoke-virtual {v2}, Ljava/io/OutputStream;->close()V
:try_end_ab
.catch Ljava/io/IOException; {:try_start_a8 .. :try_end_ab} :catch_124
.line 91
:cond_ab
:goto_ab
if-eqz v1, :cond_b0
.line 93
:try_start_ad
invoke-virtual {v1}, Ljava/io/InputStream;->close()V
:try_end_b0
.catch Ljava/io/IOException; {:try_start_ad .. :try_end_b0} :catch_126
.line 99
:cond_b0
:goto_b0
if-eqz v3, :cond_16c
.line 100
invoke-virtual {v3}, Ljava/net/HttpURLConnection;->disconnect()V
move-object v6, v4
move-object v7, v0
move v8, v9
move v0, v9
move-object v11, v2
move-object v2, v1
move-object v1, v3
move-object v3, v11
goto :goto_89
.line 67
:catch_be
move-exception v0
.line 68
:goto_bf
:try_start_bf
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
:try_end_c2
.catchall {:try_start_bf .. :try_end_c2} :catchall_138
.line 70
const/4 v6, 0x2
.line 83
if-eqz v3, :cond_c8
.line 85
:try_start_c5
invoke-virtual {v3}, Ljava/io/OutputStream;->close()V
:try_end_c8
.catch Ljava/io/IOException; {:try_start_c5 .. :try_end_c8} :catch_128
.line 91
:cond_c8
:goto_c8
if-eqz v2, :cond_cd
.line 93
:try_start_ca
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_cd
.catch Ljava/io/IOException; {:try_start_ca .. :try_end_cd} :catch_12a
.line 99
:cond_cd
:goto_cd
if-eqz v1, :cond_166
.line 100
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->disconnect()V
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto :goto_89
.line 72
:catch_d7
move-exception v0
.line 73
:goto_d8
:try_start_d8
invoke-virtual {v0}, Lorg/json/JSONException;->printStackTrace()V
:try_end_db
.catchall {:try_start_d8 .. :try_end_db} :catchall_138
.line 75
const/4 v6, 0x3
.line 83
if-eqz v3, :cond_e1
.line 85
:try_start_de
invoke-virtual {v3}, Ljava/io/OutputStream;->close()V
:try_end_e1
.catch Ljava/io/IOException; {:try_start_de .. :try_end_e1} :catch_12c
.line 91
:cond_e1
:goto_e1
if-eqz v2, :cond_e6
.line 93
:try_start_e3
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_e6
.catch Ljava/io/IOException; {:try_start_e3 .. :try_end_e6} :catch_12e
.line 99
:cond_e6
:goto_e6
if-eqz v1, :cond_160
.line 100
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->disconnect()V
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto :goto_89
.line 77
:catch_f0
move-exception v0
.line 78
:goto_f1
:try_start_f1
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
:try_end_f4
.catchall {:try_start_f1 .. :try_end_f4} :catchall_138
.line 80
const/4 v6, 0x5
.line 83
if-eqz v3, :cond_fa
.line 85
:try_start_f7
invoke-virtual {v3}, Ljava/io/OutputStream;->close()V
:try_end_fa
.catch Ljava/io/IOException; {:try_start_f7 .. :try_end_fa} :catch_130
.line 91
:cond_fa
:goto_fa
if-eqz v2, :cond_ff
.line 93
:try_start_fc
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_ff
.catch Ljava/io/IOException; {:try_start_fc .. :try_end_ff} :catch_132
.line 99
:cond_ff
:goto_ff
if-eqz v1, :cond_15a
.line 100
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->disconnect()V
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto :goto_89
.line 83
:catchall_109
move-exception v0
move-object v11, v1
move-object v1, v3
move-object v3, v2
move-object v2, v11
:goto_10e
if-eqz v3, :cond_113
.line 85
:try_start_110
invoke-virtual {v3}, Ljava/io/OutputStream;->close()V
:try_end_113
.catch Ljava/io/IOException; {:try_start_110 .. :try_end_113} :catch_134
.line 91
:cond_113
:goto_113
if-eqz v2, :cond_118
.line 93
:try_start_115
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_118
.catch Ljava/io/IOException; {:try_start_115 .. :try_end_118} :catch_136
.line 99
:cond_118
:goto_118
if-eqz v1, :cond_11d
.line 100
invoke-virtual {v1}, Ljava/net/HttpURLConnection;->disconnect()V
:cond_11d
throw v0
.line 86
:catch_11e
move-exception v8
goto/16 :goto_7a
.line 94
:catch_121
move-exception v8
goto/16 :goto_7f
.line 86
:catch_124
move-exception v6
goto :goto_ab
.line 94
:catch_126
move-exception v6
goto :goto_b0
.line 86
:catch_128
move-exception v7
goto :goto_c8
.line 94
:catch_12a
move-exception v7
goto :goto_cd
.line 86
:catch_12c
move-exception v7
goto :goto_e1
.line 94
:catch_12e
move-exception v7
goto :goto_e6
.line 86
:catch_130
move-exception v7
goto :goto_fa
.line 94
:catch_132
move-exception v7
goto :goto_ff
.line 86
:catch_134
move-exception v3
goto :goto_113
.line 94
:catch_136
move-exception v2
goto :goto_118
.line 83
:catchall_138
move-exception v0
goto :goto_10e
:catchall_13a
move-exception v1
move-object v11, v1
move-object v1, v0
move-object v0, v11
goto :goto_10e
.line 77
:catch_13f
move-exception v1
move-object v11, v1
move-object v1, v0
move-object v0, v11
goto :goto_f1
.line 72
:catch_144
move-exception v1
move-object v11, v1
move-object v1, v0
move-object v0, v11
goto :goto_d8
.line 67
:catch_149
move-exception v1
move-object v11, v1
move-object v1, v0
move-object v0, v11
goto/16 :goto_bf
.line 61
:catch_14f
move-exception v1
move-object v11, v1
move-object v1, v2
move-object v2, v3
move-object v3, v0
move-object v0, v11
goto/16 :goto_a3
:cond_157
move v5, v0
goto/16 :goto_b
:cond_15a
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto/16 :goto_89
:cond_160
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto/16 :goto_89
:cond_166
move-object v7, v0
move v8, v6
move-object v6, v4
move v0, v10
goto/16 :goto_89
:cond_16c
move-object v6, v4
move-object v7, v0
move v8, v9
move v0, v9
move-object v11, v2
move-object v2, v1
move-object v1, v3
move-object v3, v11
goto/16 :goto_89
:cond_176
move v8, v7
move-object v7, v6
move-object v6, v1
move-object v1, v0
move v0, v10
goto/16 :goto_89
.end method