BioReadWriteProcessor.smali

.class public Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;
.super Ljava/lang/Object;
.source "BioReadWriteProcessor.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;,
        Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;,
        Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;
    }
.end annotation


# static fields
.field private static G_SOCKET_ID:I


# instance fields
.field private TAG:Ljava/lang/String;

.field private connect_timeout:J

.field private mClient:Lcom/open/net/client/structures/BaseClient;

.field private mConnectProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;

.field private mConnectStatusListener:Lcom/open/net/client/impl/tcp/bio/BioConnectListener;

.field private mConnectThread:Ljava/lang/Thread;

.field private mInputStream:Ljava/io/InputStream;

.field private mIp:Ljava/lang/String;

.field private mOutputStream:Ljava/io/OutputStream;

.field private mPort:I

.field private mReadProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;

.field private mReadThread:Ljava/lang/Thread;

.field private mSocket:Ljava/net/Socket;

.field private mSocketId:I

.field private mWriteProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;

.field private mWriteThread:Ljava/lang/Thread;

.field private r_w_count:I


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

    return-void
.end method

.method public constructor <init>(Ljava/lang/String;IJLcom/open/net/client/structures/BaseClient;Lcom/open/net/client/impl/tcp/bio/BioConnectListener;)V
    .registers 9

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

    const-string v0, "BioReadWriteProcessor"

    .line 19
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->TAG:Ljava/lang/String;

    const-string v0, "192.168.1.1"

    .line 24
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mIp:Ljava/lang/String;

    const/16 v0, 0x270f

    .line 25
    iput v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mPort:I

    const-wide/16 v0, 0x2710

    .line 26
    iput-wide v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->connect_timeout:J

    const/4 v0, 0x0

    .line 32
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;

    .line 33
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;

    .line 34
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;

    .line 40
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectThread:Ljava/lang/Thread;

    .line 41
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    .line 42
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    const/4 v0, 0x2

    .line 44
    iput v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->r_w_count:I

    .line 47
    sget v0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->G_SOCKET_ID:I

    add-int/lit8 v0, v0, 0x1

    sput v0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->G_SOCKET_ID:I

    .line 49
    iput v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocketId:I

    .line 50
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mIp:Ljava/lang/String;

    .line 51
    iput p2, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mPort:I

    .line 52
    iput-wide p3, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->connect_timeout:J

    .line 53
    iput-object p5, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mClient:Lcom/open/net/client/structures/BaseClient;

    .line 54
    iput-object p6, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectStatusListener:Lcom/open/net/client/impl/tcp/bio/BioConnectListener;

    return-void
.end method

.method static synthetic access$100(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/net/Socket;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;

    return-object p0
.end method

.method static synthetic access$102(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Ljava/net/Socket;)Ljava/net/Socket;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;

    return-object p1
.end method

.method static synthetic access$1100(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/lang/Thread;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    return-object p0
.end method

.method static synthetic access$1102(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Ljava/lang/Thread;)Ljava/lang/Thread;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    return-object p1
.end method

.method static synthetic access$1200(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/lang/Thread;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    return-object p0
.end method

.method static synthetic access$1202(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Ljava/lang/Thread;)Ljava/lang/Thread;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    return-object p1
.end method

.method static synthetic access$1300(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Lcom/open/net/client/impl/tcp/bio/BioConnectListener;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectStatusListener:Lcom/open/net/client/impl/tcp/bio/BioConnectListener;

    return-object p0
.end method

.method static synthetic access$1400(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Lcom/open/net/client/structures/BaseClient;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mClient:Lcom/open/net/client/structures/BaseClient;

    return-object p0
.end method

.method static synthetic access$200(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/lang/String;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mIp:Ljava/lang/String;

    return-object p0
.end method

.method static synthetic access$300(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)I
    .registers 1

    .line 17
    iget p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mPort:I

    return p0
.end method

.method static synthetic access$400(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)J
    .registers 3

    .line 17
    iget-wide v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->connect_timeout:J

    return-wide v0
.end method

.method static synthetic access$500(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/io/OutputStream;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;

    return-object p0
.end method

.method static synthetic access$502(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Ljava/io/OutputStream;)Ljava/io/OutputStream;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;

    return-object p1
.end method

.method static synthetic access$600(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Ljava/io/InputStream;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;

    return-object p0
.end method

.method static synthetic access$602(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Ljava/io/InputStream;)Ljava/io/InputStream;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;

    return-object p1
.end method

.method static synthetic access$700(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;

    return-object p0
.end method

.method static synthetic access$702(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;)Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;

    return-object p1
.end method

.method static synthetic access$900(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;
    .registers 1

    .line 17
    iget-object p0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;

    return-object p0
.end method

.method static synthetic access$902(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;)Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;
    .registers 2

    .line 17
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ReadRunnable;

    return-object p1
.end method


# virtual methods
.method public declared-synchronized close()V
    .registers 3

    monitor-enter p0

    .line 66
    :try_start_1
    invoke-virtual {p0}, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->wakeUp()V
    :try_end_4
    .catchall {:try_start_1 .. :try_end_4} :catchall_7c

    const/4 v0, 0x0

    .line 69
    :try_start_5
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;

    if-eqz v1, :cond_c

    .line 70
    invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
    :try_end_c
    .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_c} :catch_12
    .catchall {:try_start_5 .. :try_end_c} :catchall_f

    .line 75
    :cond_c
    :goto_c
    :try_start_c
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;
    :try_end_e
    .catchall {:try_start_c .. :try_end_e} :catchall_7c

    goto :goto_17

    :catchall_f
    move-exception v1

    goto/16 :goto_79

    :catch_12
    move-exception v1

    .line 73
    :try_start_13
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_16
    .catchall {:try_start_13 .. :try_end_16} :catchall_f

    goto :goto_c

    .line 79
    :goto_17
    :try_start_17
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;

    if-eqz v1, :cond_1e

    .line 80
    invoke-virtual {v1}, Ljava/io/InputStream;->close()V
    :try_end_1e
    .catch Ljava/lang/Exception; {:try_start_17 .. :try_end_1e} :catch_23
    .catchall {:try_start_17 .. :try_end_1e} :catchall_21

    .line 85
    :cond_1e
    :goto_1e
    :try_start_1e
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;
    :try_end_20
    .catchall {:try_start_1e .. :try_end_20} :catchall_7c

    goto :goto_28

    :catchall_21
    move-exception v1

    goto :goto_76

    :catch_23
    move-exception v1

    .line 83
    :try_start_24
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_27
    .catchall {:try_start_24 .. :try_end_27} :catchall_21

    goto :goto_1e

    .line 89
    :goto_28
    :try_start_28
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;

    if-eqz v1, :cond_2f

    .line 90
    invoke-virtual {v1}, Ljava/net/Socket;->close()V
    :try_end_2f
    .catch Ljava/lang/Exception; {:try_start_28 .. :try_end_2f} :catch_34
    .catchall {:try_start_28 .. :try_end_2f} :catchall_32

    .line 95
    :cond_2f
    :goto_2f
    :try_start_2f
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;
    :try_end_31
    .catchall {:try_start_2f .. :try_end_31} :catchall_7c

    goto :goto_39

    :catchall_32
    move-exception v1

    goto :goto_73

    :catch_34
    move-exception v1

    .line 93
    :try_start_35
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_38
    .catchall {:try_start_35 .. :try_end_38} :catchall_32

    goto :goto_2f

    .line 99
    :goto_39
    :try_start_39
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    if-eqz v1, :cond_48

    invoke-virtual {v1}, Ljava/lang/Thread;->isAlive()Z

    move-result v1

    if-eqz v1, :cond_48

    .line 100
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    invoke-virtual {v1}, Ljava/lang/Thread;->interrupt()V
    :try_end_48
    .catch Ljava/lang/Exception; {:try_start_39 .. :try_end_48} :catch_4d
    .catchall {:try_start_39 .. :try_end_48} :catchall_4b

    .line 105
    :cond_48
    :goto_48
    :try_start_48
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;
    :try_end_4a
    .catchall {:try_start_48 .. :try_end_4a} :catchall_7c

    goto :goto_52

    :catchall_4b
    move-exception v1

    goto :goto_70

    :catch_4d
    move-exception v1

    .line 103
    :try_start_4e
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_51
    .catchall {:try_start_4e .. :try_end_51} :catchall_4b

    goto :goto_48

    .line 109
    :goto_52
    :try_start_52
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    if-eqz v1, :cond_61

    invoke-virtual {v1}, Ljava/lang/Thread;->isAlive()Z

    move-result v1

    if-eqz v1, :cond_61

    .line 110
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    invoke-virtual {v1}, Ljava/lang/Thread;->interrupt()V
    :try_end_61
    .catch Ljava/lang/Exception; {:try_start_52 .. :try_end_61} :catch_66
    .catchall {:try_start_52 .. :try_end_61} :catchall_64

    .line 115
    :cond_61
    :goto_61
    :try_start_61
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;
    :try_end_63
    .catchall {:try_start_61 .. :try_end_63} :catchall_7c

    goto :goto_6b

    :catchall_64
    move-exception v1

    goto :goto_6d

    :catch_66
    move-exception v1

    .line 113
    :try_start_67
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    :try_end_6a
    .catchall {:try_start_67 .. :try_end_6a} :catchall_64

    goto :goto_61

    .line 117
    :goto_6b
    monitor-exit p0

    return-void

    .line 115
    :goto_6d
    :try_start_6d
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mReadThread:Ljava/lang/Thread;

    throw v1

    .line 105
    :goto_70
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteThread:Ljava/lang/Thread;

    throw v1

    .line 95
    :goto_73
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocket:Ljava/net/Socket;

    throw v1

    .line 85
    :goto_76
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mInputStream:Ljava/io/InputStream;

    throw v1

    .line 75
    :goto_79
    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mOutputStream:Ljava/io/OutputStream;

    throw v1
    :try_end_7c
    .catchall {:try_start_6d .. :try_end_7c} :catchall_7c

    :catchall_7c
    move-exception v0

    monitor-exit p0

    throw v0
.end method

.method public declared-synchronized onSocketExit(I)V
    .registers 7

    monitor-enter p0

    .line 127
    :try_start_1
    iget v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->r_w_count:I

    const/4 v1, 0x1

    sub-int/2addr v0, v1

    iput v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->r_w_count:I

    if-gtz v0, :cond_b

    move v0, v1

    goto :goto_c

    :cond_b
    const/4 v0, 0x0

    .line 129
    :goto_c
    sget-object v2, Ljava/lang/System;->out:Ljava/io/PrintStream;

    new-instance v3, Ljava/lang/StringBuilder;

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

    iget-object v4, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->TAG:Ljava/lang/String;

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v4, "onSocketExit mSocketId "

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    iget v4, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mSocketId:I

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v4, " exit_code "

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    if-ne p1, v1, :cond_2f

    const-string p1, " onWrite"

    goto :goto_31

    :cond_2f
    const-string p1, " onRead"

    :goto_31
    invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string p1, " isWriterReaderExit "

    invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v2, p1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V

    .line 130
    invoke-virtual {p0}, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->close()V

    if-eqz v0, :cond_4f

    .line 132
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectStatusListener:Lcom/open/net/client/impl/tcp/bio/BioConnectListener;

    if-eqz p1, :cond_4f

    .line 133
    invoke-interface {p1, p0}, Lcom/open/net/client/impl/tcp/bio/BioConnectListener;->onConnectFailed(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;)V
    :try_end_4f
    .catchall {:try_start_1 .. :try_end_4f} :catchall_51

    .line 136
    :cond_4f
    monitor-exit p0

    return-void

    :catchall_51
    move-exception p1

    monitor-exit p0

    throw p1
.end method

.method public start()V
    .registers 3

    .line 59
    new-instance v0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;

    const/4 v1, 0x0

    invoke-direct {v0, p0, v1}, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;-><init>(Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$1;)V

    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;

    .line 60
    new-instance v0, Ljava/lang/Thread;

    iget-object v1, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$ConnectRunnable;

    invoke-direct {v0, v1}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V

    iput-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mConnectThread:Ljava/lang/Thread;

    .line 61
    invoke-virtual {v0}, Ljava/lang/Thread;->start()V

    return-void
.end method

.method public wakeUp()V
    .registers 2

    .line 120
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor;->mWriteProcessor:Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;

    if-eqz v0, :cond_7

    .line 121
    invoke-virtual {v0}, Lcom/open/net/client/impl/tcp/bio/processor/BioReadWriteProcessor$WriteRunnable;->wakeup()V

    :cond_7
    return-void
.end method