2026-07-06 19:54:44 +08:00

792 lines
30 KiB
Smali

.class Lcom/vilyever/socketclient/SocketClient$ReceiveThread;
.super Ljava/lang/Thread;
.source "SocketClient.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/vilyever/socketclient/SocketClient;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2
name = "ReceiveThread"
.end annotation
# instance fields
.field final synthetic this$0:Lcom/vilyever/socketclient/SocketClient;
# direct methods
.method private constructor <init>(Lcom/vilyever/socketclient/SocketClient;)V
.locals 0
.line 1206
iput-object p1, p0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
return-void
.end method
.method synthetic constructor <init>(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/SocketClient$1;)V
.locals 0
.line 1206
invoke-direct {p0, p1}, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;-><init>(Lcom/vilyever/socketclient/SocketClient;)V
return-void
.end method
# virtual methods
.method public run()V
.locals 18
move-object/from16 v0, p0
.line 1209
invoke-super/range {p0 .. p0}, Ljava/lang/Thread;->run()V
.line 1211
iget-object v1, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v1, v1, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v1}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v1
invoke-virtual {v1}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v1
invoke-virtual {v1}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReadStrategy()Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
move-result-object v1
sget-object v2, Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;->Manually:Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
if-ne v1, v2, :cond_0
return-void
:cond_0
:goto_0
const/4 v1, 0x0
.line 1216
:try_start_0
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v2}, Lcom/vilyever/socketclient/SocketClient;->isConnected()Z
move-result v2
if-eqz v2, :cond_e
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
.line 1217
invoke-virtual {v2}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v2
if-eqz v2, :cond_e
.line 1218
invoke-static {}, Ljava/lang/Thread;->interrupted()Z
move-result v2
if-nez v2, :cond_e
.line 1219
new-instance v2, Lcom/vilyever/socketclient/helper/SocketResponsePacket;
invoke-direct {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;-><init>()V
.line 1220
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3, v2}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
.line 1222
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReceiveHeaderData()[B
move-result-object v3
const/4 v10, 0x0
if-nez v3, :cond_1
move v11, v10
goto :goto_1
.line 1223
:cond_1
array-length v4, v3
move v11, v4
.line 1225
:goto_1
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v4
invoke-virtual {v4}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v4
invoke-virtual {v4}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReceiveTrailerData()[B
move-result-object v4
if-nez v4, :cond_2
move v12, v10
goto :goto_2
.line 1226
:cond_2
array-length v5, v4
move v12, v5
.line 1228
:goto_2
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReceivePacketLengthDataLength()I
move-result v13
.line 1233
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v5, v2}, Lcom/vilyever/socketclient/SocketClient;->access$200(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
if-lez v11, :cond_3
.line 1236
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v5
const/4 v6, 0x1
invoke-virtual {v5, v3, v6}, Lcom/vilyever/socketclient/helper/SocketInputReader;->readToData([BZ)[B
move-result-object v3
.line 1237
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Lcom/vilyever/socketclient/SocketClient;->setLastReceiveMessageTime(J)Lcom/vilyever/socketclient/SocketClient;
.line 1238
invoke-virtual {v2, v3}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setHeaderData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
add-int/lit8 v3, v11, 0x0
goto :goto_3
:cond_3
move v3, v10
.line 1243
:goto_3
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReadStrategy()Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
move-result-object v5
sget-object v6, Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;->AutoReadByLength:Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
if-ne v5, v6, :cond_a
if-gez v13, :cond_4
.line 1245
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v4, v2}, Lcom/vilyever/socketclient/SocketClient;->access$500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1246
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
goto :goto_4
:cond_4
if-nez v13, :cond_5
.line 1249
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v4, v2}, Lcom/vilyever/socketclient/SocketClient;->access$300(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1250
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
.line 1253
:cond_5
:goto_4
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v4
invoke-virtual {v4, v13}, Lcom/vilyever/socketclient/helper/SocketInputReader;->readToLength(I)[B
move-result-object v4
.line 1254
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Lcom/vilyever/socketclient/SocketClient;->setLastReceiveMessageTime(J)Lcom/vilyever/socketclient/SocketClient;
.line 1255
invoke-virtual {v2, v4}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setPacketLengthData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
add-int/2addr v3, v13
.line 1259
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v5
invoke-virtual {v5, v4}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReceivePacketDataLength([B)I
move-result v4
sub-int v14, v4, v12
if-lez v14, :cond_8
.line 1264
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v4
invoke-virtual {v4}, Ljava/net/Socket;->getReceiveBufferSize()I
move-result v4
.line 1265
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->isReceiveSegmentEnabled()Z
move-result v5
if-eqz v5, :cond_6
.line 1266
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v5
invoke-virtual {v5}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReceiveSegmentLength()I
move-result v5
invoke-static {v4, v5}, Ljava/lang/Math;->min(II)I
move-result v4
:cond_6
move v15, v4
move v4, v10
:goto_5
if-ge v4, v14, :cond_9
add-int v5, v4, v15
.line 1271
invoke-static {v5, v14}, Ljava/lang/Math;->min(II)I
move-result v16
.line 1272
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v5}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v5
sub-int v4, v16, v4
invoke-virtual {v5, v4}, Lcom/vilyever/socketclient/helper/SocketInputReader;->readToLength(I)[B
move-result-object v5
.line 1273
iget-object v6, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v6, v6, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v7
invoke-virtual {v6, v7, v8}, Lcom/vilyever/socketclient/SocketClient;->setLastReceiveMessageTime(J)Lcom/vilyever/socketclient/SocketClient;
.line 1275
invoke-virtual {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->getData()[B
move-result-object v6
if-nez v6, :cond_7
.line 1276
invoke-virtual {v2, v5}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
goto :goto_6
.line 1279
:cond_7
invoke-virtual {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->getData()[B
move-result-object v6
array-length v6, v6
array-length v7, v5
add-int/2addr v6, v7
new-array v6, v6, [B
.line 1281
invoke-virtual {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->getData()[B
move-result-object v7
invoke-virtual {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->getData()[B
move-result-object v8
array-length v8, v8
invoke-static {v7, v10, v6, v10, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1282
invoke-virtual {v2}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->getData()[B
move-result-object v7
array-length v7, v7
array-length v8, v5
invoke-static {v5, v10, v6, v7, v8}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1284
invoke-virtual {v2, v6}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
:goto_6
add-int v17, v3, v4
.line 1289
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
move-object v4, v2
move/from16 v5, v17
move v6, v11
move v7, v13
move v8, v14
move v9, v12
invoke-static/range {v3 .. v9}, Lcom/vilyever/socketclient/SocketClient;->access$1500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;IIIII)V
move/from16 v4, v16
move/from16 v3, v17
goto :goto_5
:cond_8
if-gez v14, :cond_9
.line 1295
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v4, v2}, Lcom/vilyever/socketclient/SocketClient;->access$500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1296
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
:cond_9
if-lez v12, :cond_c
.line 1300
iget-object v4, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v4, v4, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v4}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v4
invoke-virtual {v4, v12}, Lcom/vilyever/socketclient/helper/SocketInputReader;->readToLength(I)[B
move-result-object v4
.line 1301
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Lcom/vilyever/socketclient/SocketClient;->setLastReceiveMessageTime(J)Lcom/vilyever/socketclient/SocketClient;
.line 1302
invoke-virtual {v2, v4}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setTrailerData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
add-int v5, v3, v12
.line 1306
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
move-object v4, v2
move v6, v11
move v7, v13
move v8, v14
move v9, v12
invoke-static/range {v3 .. v9}, Lcom/vilyever/socketclient/SocketClient;->access$1500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;IIIII)V
goto :goto_7
.line 1309
:cond_a
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getSocketPacketHelper()Lcom/vilyever/socketclient/helper/SocketPacketHelper;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketPacketHelper;->getReadStrategy()Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
move-result-object v3
sget-object v5, Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;->AutoReadToTrailer:Lcom/vilyever/socketclient/helper/SocketPacketHelper$ReadStrategy;
if-ne v3, v5, :cond_c
if-lez v12, :cond_b
.line 1311
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketInputReader()Lcom/vilyever/socketclient/helper/SocketInputReader;
move-result-object v3
invoke-virtual {v3, v4, v10}, Lcom/vilyever/socketclient/helper/SocketInputReader;->readToData([BZ)[B
move-result-object v3
.line 1312
iget-object v5, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v5, v5, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v6
invoke-virtual {v5, v6, v7}, Lcom/vilyever/socketclient/SocketClient;->setLastReceiveMessageTime(J)Lcom/vilyever/socketclient/SocketClient;
.line 1313
invoke-virtual {v2, v3}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
.line 1314
invoke-virtual {v2, v4}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setTrailerData([B)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
.line 1316
array-length v3, v3
goto :goto_7
.line 1319
:cond_b
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v3, v2}, Lcom/vilyever/socketclient/SocketClient;->access$500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1320
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
.line 1324
:cond_c
:goto_7
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getHeartBeatHelper()Lcom/vilyever/socketclient/helper/SocketHeartBeatHelper;
move-result-object v3
invoke-virtual {v3, v2}, Lcom/vilyever/socketclient/helper/SocketHeartBeatHelper;->isReceiveHeartBeatPacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Z
move-result v3
invoke-virtual {v2, v3}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->setHeartBeat(Z)Lcom/vilyever/socketclient/helper/SocketResponsePacket;
.line 1326
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getCharsetName()Ljava/lang/String;
move-result-object v3
if-eqz v3, :cond_d
.line 1327
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getSocketConfigure()Lcom/vilyever/socketclient/helper/SocketConfigure;
move-result-object v3
invoke-virtual {v3}, Lcom/vilyever/socketclient/helper/SocketConfigure;->getCharsetName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Lcom/vilyever/socketclient/helper/SocketResponsePacket;->buildStringWithCharsetName(Ljava/lang/String;)V
.line 1330
:cond_d
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v3, v2}, Lcom/vilyever/socketclient/SocketClient;->access$300(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1331
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v3, v2}, Lcom/vilyever/socketclient/SocketClient;->access$400(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1332
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v2, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
goto/16 :goto_0
.line 1337
:catch_0
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v2}, Lcom/vilyever/socketclient/SocketClient;->disconnect()V
.line 1339
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v2}, Lcom/vilyever/socketclient/SocketClient;->getReceivingResponsePacket()Lcom/vilyever/socketclient/helper/SocketResponsePacket;
move-result-object v2
if-eqz v2, :cond_e
.line 1340
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v3, v3, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v3}, Lcom/vilyever/socketclient/SocketClient;->getReceivingResponsePacket()Lcom/vilyever/socketclient/helper/SocketResponsePacket;
move-result-object v3
invoke-static {v2, v3}, Lcom/vilyever/socketclient/SocketClient;->access$500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1341
iget-object v2, v0, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v2, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
:cond_e
return-void
.end method