792 lines
30 KiB
Smali
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
|