i.smali

.class Lcom/baidu/location/g/i;
.super Ljava/lang/Object;

# interfaces
.implements Ljava/lang/Runnable;


# instance fields
.field final synthetic a:Ljava/lang/String;

.field final synthetic b:Lcom/baidu/location/g/e;


# direct methods
.method static constructor <clinit>()V
    .registers 1

    return-void
.end method

.method constructor <init>(Lcom/baidu/location/g/e;Ljava/lang/String;)V
    .registers 3

    iput-object p1, p0, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iput-object p2, p0, Lcom/baidu/location/g/i;->a:Ljava/lang/String;

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    return-void
.end method


# virtual methods
.method public run()V
    .registers 17

    move-object/from16 v1, p0

    const-string v0, "gzip"

    const-string v2, "close baos IOException!"

    const-string v3, "close is IOException!"

    const-string v4, "close os IOException!"

    iget-object v5, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    invoke-virtual {v5}, Lcom/baidu/location/g/e;->a()V

    iget-object v5, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iget-object v6, v1, Lcom/baidu/location/g/i;->a:Ljava/lang/String;

    iput-object v6, v5, Lcom/baidu/location/g/e;->h:Ljava/lang/String;

    const/4 v5, 0x0

    const/4 v6, 0x0

    :try_start_17
    new-instance v7, Ljava/lang/StringBuffer;

    invoke-direct {v7}, Ljava/lang/StringBuffer;-><init>()V

    new-instance v8, Ljava/net/URL;

    iget-object v9, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iget-object v9, v9, Lcom/baidu/location/g/e;->h:Ljava/lang/String;

    invoke-direct {v8, v9}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
    :try_end_25
    .catch Ljava/lang/Exception; {:try_start_17 .. :try_end_25} :catch_1ad
    .catch Ljava/lang/Error; {:try_start_17 .. :try_end_25} :catch_171
    .catchall {:try_start_17 .. :try_end_25} :catchall_169

    :try_start_25
    invoke-virtual {v8}, Ljava/net/URL;->openConnection()Ljava/net/URLConnection;

    move-result-object v9

    check-cast v9, Ljavax/net/ssl/HttpsURLConnection;
    :try_end_2b
    .catch Ljava/lang/Exception; {:try_start_25 .. :try_end_2b} :catch_165
    .catch Ljava/lang/Error; {:try_start_25 .. :try_end_2b} :catch_161
    .catchall {:try_start_25 .. :try_end_2b} :catchall_15c

    :try_start_2b
    invoke-virtual {v9, v5}, Ljavax/net/ssl/HttpsURLConnection;->setInstanceFollowRedirects(Z)V

    const/4 v10, 0x1

    invoke-virtual {v9, v10}, Ljavax/net/ssl/HttpsURLConnection;->setDoOutput(Z)V

    invoke-virtual {v9, v10}, Ljavax/net/ssl/HttpsURLConnection;->setDoInput(Z)V

    sget v11, Lcom/baidu/location/g/a;->b:I

    invoke-virtual {v9, v11}, Ljavax/net/ssl/HttpsURLConnection;->setConnectTimeout(I)V

    sget v11, Lcom/baidu/location/g/a;->c:I

    invoke-virtual {v9, v11}, Ljavax/net/ssl/HttpsURLConnection;->setReadTimeout(I)V

    const-string v11, "POST"

    invoke-virtual {v9, v11}, Ljavax/net/ssl/HttpsURLConnection;->setRequestMethod(Ljava/lang/String;)V

    const-string v11, "Content-Type"

    const-string v12, "application/x-www-form-urlencoded; charset=utf-8"

    invoke-virtual {v9, v11, v12}, Ljavax/net/ssl/HttpsURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V

    const-string v11, "Accept-Encoding"

    invoke-virtual {v9, v11, v0}, Ljavax/net/ssl/HttpsURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V

    sget-object v11, Lcom/baidu/location/g/k;->ax:Ljava/lang/String;

    if-eqz v11, :cond_5b

    const-string v11, "bd-loc-android"

    sget-object v12, Lcom/baidu/location/g/k;->ax:Ljava/lang/String;

    invoke-virtual {v9, v11, v12}, Ljavax/net/ssl/HttpsURLConnection;->setRequestProperty(Ljava/lang/String;Ljava/lang/String;)V

    :cond_5b
    iget-object v11, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iget-object v11, v11, Lcom/baidu/location/g/e;->k:Ljava/util/Map;

    invoke-interface {v11}, Ljava/util/Map;->entrySet()Ljava/util/Set;

    move-result-object v11

    invoke-interface {v11}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object v11

    :goto_67
    invoke-interface {v11}, Ljava/util/Iterator;->hasNext()Z

    move-result v12

    if-eqz v12, :cond_8e

    invoke-interface {v11}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v12

    check-cast v12, Ljava/util/Map$Entry;

    invoke-interface {v12}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;

    move-result-object v13

    check-cast v13, Ljava/lang/String;

    invoke-virtual {v7, v13}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    const-string v13, "="

    invoke-virtual {v7, v13}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    invoke-interface {v12}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;

    move-result-object v12

    invoke-virtual {v7, v12}, Ljava/lang/StringBuffer;->append(Ljava/lang/Object;)Ljava/lang/StringBuffer;

    const-string v12, "&"

    invoke-virtual {v7, v12}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;

    goto :goto_67

    :cond_8e
    invoke-virtual {v7}, Ljava/lang/StringBuffer;->length()I

    move-result v11

    if-lez v11, :cond_9c

    invoke-virtual {v7}, Ljava/lang/StringBuffer;->length()I

    move-result v11

    sub-int/2addr v11, v10

    invoke-virtual {v7, v11}, Ljava/lang/StringBuffer;->deleteCharAt(I)Ljava/lang/StringBuffer;

    :cond_9c
    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->getOutputStream()Ljava/io/OutputStream;

    move-result-object v11
    :try_end_a0
    .catch Ljava/lang/Exception; {:try_start_2b .. :try_end_a0} :catch_157
    .catch Ljava/lang/Error; {:try_start_2b .. :try_end_a0} :catch_153
    .catchall {:try_start_2b .. :try_end_a0} :catchall_14c

    :try_start_a0
    invoke-virtual {v7}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v7}, Ljava/lang/String;->getBytes()[B

    move-result-object v7

    invoke-virtual {v11, v7}, Ljava/io/OutputStream;->write([B)V

    invoke-virtual {v11}, Ljava/io/OutputStream;->flush()V

    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->getResponseCode()I

    move-result v7

    const/16 v12, 0xc8

    if-ne v7, v12, :cond_10f

    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->getInputStream()Ljava/io/InputStream;

    move-result-object v7
    :try_end_ba
    .catch Ljava/lang/Exception; {:try_start_a0 .. :try_end_ba} :catch_147
    .catch Ljava/lang/Error; {:try_start_a0 .. :try_end_ba} :catch_143
    .catchall {:try_start_a0 .. :try_end_ba} :catchall_13d

    :try_start_ba
    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->getContentEncoding()Ljava/lang/String;

    move-result-object v12

    if-eqz v12, :cond_d1

    invoke-virtual {v12, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_d1

    new-instance v0, Ljava/util/zip/GZIPInputStream;

    new-instance v12, Ljava/io/BufferedInputStream;

    invoke-direct {v12, v7}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;)V

    invoke-direct {v0, v12}, Ljava/util/zip/GZIPInputStream;-><init>(Ljava/io/InputStream;)V

    move-object v7, v0

    :cond_d1
    new-instance v12, Ljava/io/ByteArrayOutputStream;

    invoke-direct {v12}, Ljava/io/ByteArrayOutputStream;-><init>()V
    :try_end_d6
    .catch Ljava/lang/Exception; {:try_start_ba .. :try_end_d6} :catch_10b
    .catch Ljava/lang/Error; {:try_start_ba .. :try_end_d6} :catch_107
    .catchall {:try_start_ba .. :try_end_d6} :catchall_102

    const/16 v0, 0x400

    :try_start_d8
    new-array v0, v0, [B

    :goto_da
    invoke-virtual {v7, v0}, Ljava/io/InputStream;->read([B)I

    move-result v13

    const/4 v14, -0x1

    if-eq v13, v14, :cond_e5

    invoke-virtual {v12, v0, v5, v13}, Ljava/io/ByteArrayOutputStream;->write([BII)V

    goto :goto_da

    :cond_e5
    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    new-instance v13, Ljava/lang/String;

    invoke-virtual {v12}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B

    move-result-object v14

    const-string/jumbo v15, "utf-8"

    invoke-direct {v13, v14, v15}, Ljava/lang/String;-><init>([BLjava/lang/String;)V

    iput-object v13, v0, Lcom/baidu/location/g/e;->j:Ljava/lang/String;

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    invoke-virtual {v0, v10}, Lcom/baidu/location/g/e;->a(Z)V
    :try_end_fa
    .catch Ljava/lang/Exception; {:try_start_d8 .. :try_end_fa} :catch_ff
    .catch Ljava/lang/Error; {:try_start_d8 .. :try_end_fa} :catch_fc
    .catchall {:try_start_d8 .. :try_end_fa} :catchall_1f0

    move-object v6, v7

    goto :goto_119

    :catch_fc
    move-exception v0

    goto/16 :goto_177

    :catch_ff
    move-exception v0

    goto/16 :goto_1b3

    :catchall_102
    move-exception v0

    move-object v5, v0

    move-object v12, v6

    goto/16 :goto_1f2

    :catch_107
    move-exception v0

    move-object v12, v6

    goto/16 :goto_177

    :catch_10b
    move-exception v0

    move-object v12, v6

    goto/16 :goto_1b3

    :cond_10f
    :try_start_10f
    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iput-object v6, v0, Lcom/baidu/location/g/e;->j:Ljava/lang/String;

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    invoke-virtual {v0, v5}, Lcom/baidu/location/g/e;->a(Z)V
    :try_end_118
    .catch Ljava/lang/Exception; {:try_start_10f .. :try_end_118} :catch_147
    .catch Ljava/lang/Error; {:try_start_10f .. :try_end_118} :catch_143
    .catchall {:try_start_10f .. :try_end_118} :catchall_13d

    move-object v12, v6

    :goto_119
    if-eqz v9, :cond_11e

    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->disconnect()V

    :cond_11e
    if-eqz v11, :cond_12a

    :try_start_120
    invoke-virtual {v11}, Ljava/io/OutputStream;->close()V
    :try_end_123
    .catch Ljava/lang/Exception; {:try_start_120 .. :try_end_123} :catch_124

    goto :goto_12a

    :catch_124
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_12a
    :goto_12a
    if-eqz v6, :cond_136

    :try_start_12c
    invoke-virtual {v6}, Ljava/io/InputStream;->close()V
    :try_end_12f
    .catch Ljava/lang/Exception; {:try_start_12c .. :try_end_12f} :catch_130

    goto :goto_136

    :catch_130
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_136
    :goto_136
    if-eqz v12, :cond_1ef

    :try_start_138
    invoke-virtual {v12}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_13b
    .catch Ljava/lang/Exception; {:try_start_138 .. :try_end_13b} :catch_1e9

    goto/16 :goto_1ef

    :catchall_13d
    move-exception v0

    move-object v5, v0

    move-object v7, v6

    move-object v12, v7

    goto/16 :goto_1f2

    :catch_143
    move-exception v0

    move-object v7, v6

    move-object v12, v7

    goto :goto_177

    :catch_147
    move-exception v0

    move-object v7, v6

    move-object v12, v7

    goto/16 :goto_1b3

    :catchall_14c
    move-exception v0

    move-object v5, v0

    move-object v7, v6

    move-object v11, v7

    move-object v12, v11

    goto/16 :goto_1f2

    :catch_153
    move-exception v0

    move-object v7, v6

    move-object v11, v7

    goto :goto_176

    :catch_157
    move-exception v0

    move-object v7, v6

    move-object v11, v7

    goto/16 :goto_1b2

    :catchall_15c
    move-exception v0

    move-object v5, v0

    move-object v7, v6

    move-object v11, v7

    goto :goto_16e

    :catch_161
    move-exception v0

    move-object v7, v6

    move-object v9, v7

    goto :goto_175

    :catch_165
    move-exception v0

    move-object v7, v6

    move-object v9, v7

    goto :goto_1b1

    :catchall_169
    move-exception v0

    move-object v5, v0

    move-object v7, v6

    move-object v8, v7

    move-object v11, v8

    :goto_16e
    move-object v12, v11

    goto/16 :goto_1f3

    :catch_171
    move-exception v0

    move-object v7, v6

    move-object v8, v7

    move-object v9, v8

    :goto_175
    move-object v11, v9

    :goto_176
    move-object v12, v11

    :goto_177
    :try_start_177
    invoke-virtual {v0}, Ljava/lang/Error;->printStackTrace()V

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    const-string v10, "https NetworkCommunicationError!"

    invoke-static {v0, v10}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iput-object v6, v0, Lcom/baidu/location/g/e;->j:Ljava/lang/String;

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    invoke-virtual {v0, v5}, Lcom/baidu/location/g/e;->a(Z)V
    :try_end_18a
    .catchall {:try_start_177 .. :try_end_18a} :catchall_1f0

    if-eqz v9, :cond_18f

    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->disconnect()V

    :cond_18f
    if-eqz v11, :cond_19b

    :try_start_191
    invoke-virtual {v11}, Ljava/io/OutputStream;->close()V
    :try_end_194
    .catch Ljava/lang/Exception; {:try_start_191 .. :try_end_194} :catch_195

    goto :goto_19b

    :catch_195
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_19b
    :goto_19b
    if-eqz v7, :cond_1a7

    :try_start_19d
    invoke-virtual {v7}, Ljava/io/InputStream;->close()V
    :try_end_1a0
    .catch Ljava/lang/Exception; {:try_start_19d .. :try_end_1a0} :catch_1a1

    goto :goto_1a7

    :catch_1a1
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1a7
    :goto_1a7
    if-eqz v12, :cond_1ef

    :try_start_1a9
    invoke-virtual {v12}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_1ac
    .catch Ljava/lang/Exception; {:try_start_1a9 .. :try_end_1ac} :catch_1e9

    goto :goto_1ef

    :catch_1ad
    move-exception v0

    move-object v7, v6

    move-object v8, v7

    move-object v9, v8

    :goto_1b1
    move-object v11, v9

    :goto_1b2
    move-object v12, v11

    :goto_1b3
    :try_start_1b3
    invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    const-string v10, "https NetworkCommunicationException!"

    invoke-static {v0, v10}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    iput-object v6, v0, Lcom/baidu/location/g/e;->j:Ljava/lang/String;

    iget-object v0, v1, Lcom/baidu/location/g/i;->b:Lcom/baidu/location/g/e;

    invoke-virtual {v0, v5}, Lcom/baidu/location/g/e;->a(Z)V
    :try_end_1c6
    .catchall {:try_start_1b3 .. :try_end_1c6} :catchall_1f0

    if-eqz v9, :cond_1cb

    invoke-virtual {v9}, Ljavax/net/ssl/HttpsURLConnection;->disconnect()V

    :cond_1cb
    if-eqz v11, :cond_1d7

    :try_start_1cd
    invoke-virtual {v11}, Ljava/io/OutputStream;->close()V
    :try_end_1d0
    .catch Ljava/lang/Exception; {:try_start_1cd .. :try_end_1d0} :catch_1d1

    goto :goto_1d7

    :catch_1d1
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1d7
    :goto_1d7
    if-eqz v7, :cond_1e3

    :try_start_1d9
    invoke-virtual {v7}, Ljava/io/InputStream;->close()V
    :try_end_1dc
    .catch Ljava/lang/Exception; {:try_start_1d9 .. :try_end_1dc} :catch_1dd

    goto :goto_1e3

    :catch_1dd
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1e3
    :goto_1e3
    if-eqz v12, :cond_1ef

    :try_start_1e5
    invoke-virtual {v12}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_1e8
    .catch Ljava/lang/Exception; {:try_start_1e5 .. :try_end_1e8} :catch_1e9

    goto :goto_1ef

    :catch_1e9
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_1ef
    :goto_1ef
    return-void

    :catchall_1f0
    move-exception v0

    move-object v5, v0

    :goto_1f2
    move-object v6, v9

    :goto_1f3
    if-eqz v6, :cond_1f8

    invoke-virtual {v6}, Ljavax/net/ssl/HttpsURLConnection;->disconnect()V

    :cond_1f8
    if-eqz v11, :cond_204

    :try_start_1fa
    invoke-virtual {v11}, Ljava/io/OutputStream;->close()V
    :try_end_1fd
    .catch Ljava/lang/Exception; {:try_start_1fa .. :try_end_1fd} :catch_1fe

    goto :goto_204

    :catch_1fe
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_204
    :goto_204
    if-eqz v7, :cond_210

    :try_start_206
    invoke-virtual {v7}, Ljava/io/InputStream;->close()V
    :try_end_209
    .catch Ljava/lang/Exception; {:try_start_206 .. :try_end_209} :catch_20a

    goto :goto_210

    :catch_20a
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_210
    :goto_210
    if-eqz v12, :cond_21c

    :try_start_212
    invoke-virtual {v12}, Ljava/io/ByteArrayOutputStream;->close()V
    :try_end_215
    .catch Ljava/lang/Exception; {:try_start_212 .. :try_end_215} :catch_216

    goto :goto_21c

    :catch_216
    move-exception v0

    sget-object v0, Lcom/baidu/location/g/a;->a:Ljava/lang/String;

    invoke-static {v0, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    :cond_21c
    :goto_21c
    goto :goto_21e

    :goto_21d
    throw v5

    :goto_21e
    goto :goto_21d
.end method