YD_AllInOneApp/decompiled/smali_classes2/com/vilyever/socketclient/SocketClient$DisconnectionThread.smali
2026-07-06 19:54:44 +08:00

458 lines
19 KiB
Smali

.class Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;
.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 = "DisconnectionThread"
.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 1004
iput-object p1, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->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 1004
invoke-direct {p0, p1}, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;-><init>(Lcom/vilyever/socketclient/SocketClient;)V
return-void
.end method
# virtual methods
.method public run()V
.locals 3
.line 1007
invoke-super {p0}, Ljava/lang/Thread;->run()V
.line 1009
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1600(Lcom/vilyever/socketclient/SocketClient;)Lcom/vilyever/socketclient/SocketClient$ConnectionThread;
move-result-object v0
const/4 v1, 0x0
if-eqz v0, :cond_0
.line 1010
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getConnectionThread()Lcom/vilyever/socketclient/SocketClient$ConnectionThread;
move-result-object v0
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient$ConnectionThread;->interrupt()V
.line 1011
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setConnectionThread(Lcom/vilyever/socketclient/SocketClient$ConnectionThread;)Lcom/vilyever/socketclient/SocketClient;
.line 1014
:cond_0
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v0
invoke-virtual {v0}, Ljava/net/Socket;->isClosed()Z
move-result v0
if-eqz v0, :cond_1
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
.line 1015
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->isConnecting()Z
move-result v0
if-eqz v0, :cond_2
.line 1017
:cond_1
:try_start_0
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v0
invoke-virtual {v0}, Ljava/net/Socket;->getOutputStream()Ljava/io/OutputStream;
move-result-object v0
invoke-virtual {v0}, Ljava/io/OutputStream;->close()V
.line 1018
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v0
invoke-virtual {v0}, Ljava/net/Socket;->getInputStream()Ljava/io/InputStream;
move-result-object v0
invoke-virtual {v0}, Ljava/io/InputStream;->close()V
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_2
.catchall {:try_start_0 .. :try_end_0} :catchall_0
.line 1025
:try_start_1
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v0
invoke-virtual {v0}, Ljava/net/Socket;->close()V
:try_end_1
.catch Ljava/io/IOException; {:try_start_1 .. :try_end_1} :catch_0
goto :goto_2
:catch_0
move-exception v0
goto :goto_1
:catchall_0
move-exception v0
:try_start_2
iget-object v2, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->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;->getRunningSocket()Ljava/net/Socket;
move-result-object v2
invoke-virtual {v2}, Ljava/net/Socket;->close()V
:try_end_2
.catch Ljava/io/IOException; {:try_start_2 .. :try_end_2} :catch_1
goto :goto_0
:catch_1
move-exception v2
.line 1028
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 1030
:goto_0
iget-object v2, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->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;->setRunningSocket(Ljava/net/Socket;)Lcom/vilyever/socketclient/SocketClient;
throw v0
.line 1025
:catch_2
:try_start_3
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getRunningSocket()Ljava/net/Socket;
move-result-object v0
invoke-virtual {v0}, Ljava/net/Socket;->close()V
:try_end_3
.catch Ljava/io/IOException; {:try_start_3 .. :try_end_3} :catch_3
goto :goto_2
:catch_3
move-exception v0
.line 1028
:goto_1
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
.line 1030
:goto_2
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setRunningSocket(Ljava/net/Socket;)Lcom/vilyever/socketclient/SocketClient;
.line 1034
:cond_2
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1700(Lcom/vilyever/socketclient/SocketClient;)Lcom/vilyever/socketclient/SocketClient$SendThread;
move-result-object v0
if-eqz v0, :cond_3
.line 1035
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getSendThread()Lcom/vilyever/socketclient/SocketClient$SendThread;
move-result-object v0
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient$SendThread;->interrupt()V
.line 1036
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setSendThread(Lcom/vilyever/socketclient/SocketClient$SendThread;)Lcom/vilyever/socketclient/SocketClient;
.line 1038
:cond_3
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1800(Lcom/vilyever/socketclient/SocketClient;)Lcom/vilyever/socketclient/SocketClient$ReceiveThread;
move-result-object v0
if-eqz v0, :cond_4
.line 1039
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getReceiveThread()Lcom/vilyever/socketclient/SocketClient$ReceiveThread;
move-result-object v0
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient$ReceiveThread;->interrupt()V
.line 1040
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceiveThread(Lcom/vilyever/socketclient/SocketClient$ReceiveThread;)Lcom/vilyever/socketclient/SocketClient;
.line 1043
:cond_4
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
const/4 v2, 0x0
invoke-virtual {v0, v2}, Lcom/vilyever/socketclient/SocketClient;->setDisconnecting(Z)Lcom/vilyever/socketclient/SocketClient;
.line 1044
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
sget-object v2, Lcom/vilyever/socketclient/SocketClient$State;->Disconnected:Lcom/vilyever/socketclient/SocketClient$State;
invoke-virtual {v0, v2}, Lcom/vilyever/socketclient/SocketClient;->setState(Lcom/vilyever/socketclient/SocketClient$State;)Lcom/vilyever/socketclient/SocketClient;
.line 1045
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setSocketInputReader(Lcom/vilyever/socketclient/helper/SocketInputReader;)Lcom/vilyever/socketclient/SocketClient;
.line 1046
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setSocketConfigure(Lcom/vilyever/socketclient/helper/SocketConfigure;)Lcom/vilyever/socketclient/SocketClient;
.line 1048
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1900(Lcom/vilyever/socketclient/SocketClient;)Landroid/os/CountDownTimer;
move-result-object v0
if-eqz v0, :cond_5
.line 1049
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1900(Lcom/vilyever/socketclient/SocketClient;)Landroid/os/CountDownTimer;
move-result-object v0
invoke-virtual {v0}, Landroid/os/CountDownTimer;->cancel()V
.line 1052
:cond_5
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getSendingPacket()Lcom/vilyever/socketclient/helper/SocketPacket;
move-result-object v0
if-eqz v0, :cond_6
.line 1053
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->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;->getSendingPacket()Lcom/vilyever/socketclient/helper/SocketPacket;
move-result-object v2
invoke-static {v0, v2}, Lcom/vilyever/socketclient/SocketClient;->access$100(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketPacket;)V
.line 1054
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setSendingPacket(Lcom/vilyever/socketclient/helper/SocketPacket;)Lcom/vilyever/socketclient/SocketClient;
.line 1058
:cond_6
:goto_3
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getSendingPacketQueue()Ljava/util/concurrent/LinkedBlockingQueue;
move-result-object v0
invoke-virtual {v0}, Ljava/util/concurrent/LinkedBlockingQueue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/vilyever/socketclient/helper/SocketPacket;
if-eqz v0, :cond_7
.line 1059
iget-object v2, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, v2, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v2, v0}, Lcom/vilyever/socketclient/SocketClient;->access$100(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketPacket;)V
goto :goto_3
.line 1062
:cond_7
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0}, Lcom/vilyever/socketclient/SocketClient;->getReceivingResponsePacket()Lcom/vilyever/socketclient/helper/SocketResponsePacket;
move-result-object v0
if-eqz v0, :cond_8
.line 1063
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
iget-object v2, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->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
invoke-static {v0, v2}, Lcom/vilyever/socketclient/SocketClient;->access$500(Lcom/vilyever/socketclient/SocketClient;Lcom/vilyever/socketclient/helper/SocketResponsePacket;)V
.line 1064
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setReceivingResponsePacket(Lcom/vilyever/socketclient/helper/SocketResponsePacket;)Lcom/vilyever/socketclient/SocketClient;
.line 1067
:cond_8
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-virtual {v0, v1}, Lcom/vilyever/socketclient/SocketClient;->setDisconnectionThread(Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;)Lcom/vilyever/socketclient/SocketClient;
.line 1069
iget-object v0, p0, Lcom/vilyever/socketclient/SocketClient$DisconnectionThread;->this$0:Lcom/vilyever/socketclient/SocketClient;
iget-object v0, v0, Lcom/vilyever/socketclient/SocketClient;->self:Lcom/vilyever/socketclient/SocketClient;
invoke-static {v0}, Lcom/vilyever/socketclient/SocketClient;->access$1100(Lcom/vilyever/socketclient/SocketClient;)V
return-void
.end method