NioReadWriteProcessor$ConnectRunnable.smali 
.class Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;
.super Ljava/lang/Object;
.source "NioReadWriteProcessor.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x2
    name = "ConnectRunnable"
.end annotation
# instance fields
.field final synthetic this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
# direct methods
.method private constructor <init>(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)V
    .registers 2
    .line 104
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V
    return-void
.end method
.method synthetic constructor <init>(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$1;)V
    .registers 3
    .line 104
    invoke-direct {p0, p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;-><init>(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)V
    return-void
.end method
.method private connect(J)Z
    .registers 6
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation
    const-wide/16 v0, -0x1
    cmp-long v0, p1, v0
    if-nez v0, :cond_11
    .line 192
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object p1
    invoke-virtual {p1}, Ljava/nio/channels/Selector;->select()I
    move-result p1
    goto :goto_1b
    .line 194
    :cond_11
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v0}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v0
    invoke-virtual {v0, p1, p2}, Ljava/nio/channels/Selector;->select(J)I
    move-result p1
    :goto_1b
    const/4 p2, 0x0
    const/4 v0, 0x0
    if-lez p1, :cond_5d
    .line 197
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object p1
    invoke-virtual {p1}, Ljava/nio/channels/Selector;->selectedKeys()Ljava/util/Set;
    move-result-object p1
    invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
    move-result-object p1
    .line 198
    :cond_2d
    :goto_2d
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
    move-result v1
    if-eqz v1, :cond_89
    .line 199
    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
    move-result-object v1
    check-cast v1, Ljava/nio/channels/SelectionKey;
    .line 200
    invoke-interface {p1}, Ljava/util/Iterator;->remove()V
    .line 202
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->isValid()Z
    move-result v2
    if-nez v2, :cond_43
    goto :goto_2d
    .line 206
    :cond_43
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->isConnectable()Z
    move-result v2
    if-eqz v2, :cond_2d
    .line 207
    invoke-direct {p0, v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->finishConnection(Ljava/nio/channels/SelectionKey;)Z
    move-result v0
    if-nez v0, :cond_2d
    .line 210
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->cancel()V
    .line 211
    invoke-virtual {v1, p2}, Ljava/nio/channels/SelectionKey;->attach(Ljava/lang/Object;)Ljava/lang/Object;
    .line 212
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->channel()Ljava/nio/channels/SelectableChannel;
    move-result-object p1
    invoke-virtual {p1}, Ljava/nio/channels/SelectableChannel;->close()V
    goto :goto_89
    .line 220
    :cond_5d
    :try_start_5d
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object p1
    invoke-virtual {p1}, Ljava/nio/channels/Selector;->keys()Ljava/util/Set;
    move-result-object p1
    invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
    move-result-object p1
    .line 221
    :goto_6b
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
    move-result v1
    if-eqz v1, :cond_89
    .line 222
    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
    move-result-object v1
    check-cast v1, Ljava/nio/channels/SelectionKey;
    .line 223
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->cancel()V
    .line 224
    invoke-virtual {v1, p2}, Ljava/nio/channels/SelectionKey;->attach(Ljava/lang/Object;)Ljava/lang/Object;
    .line 225
    invoke-virtual {v1}, Ljava/nio/channels/SelectionKey;->channel()Ljava/nio/channels/SelectableChannel;
    move-result-object v1
    invoke-virtual {v1}, Ljava/nio/channels/SelectableChannel;->close()V
    :try_end_84
    .catch Ljava/lang/Exception; {:try_start_5d .. :try_end_84} :catch_85
    goto :goto_6b
    :catch_85
    move-exception p1
    .line 228
    invoke-virtual {p1}, Ljava/lang/Exception;->printStackTrace()V
    :cond_89
    :goto_89
    return v0
.end method
.method private finishConnection(Ljava/nio/channels/SelectionKey;)Z
    .registers 5
    const/4 v0, 0x1
    .line 238
    :try_start_1
    invoke-virtual {p1}, Ljava/nio/channels/SelectionKey;->channel()Ljava/nio/channels/SelectableChannel;
    move-result-object v1
    check-cast v1, Ljava/nio/channels/SocketChannel;
    .line 239
    invoke-virtual {v1}, Ljava/nio/channels/SocketChannel;->finishConnect()Z
    move-result v1
    if-eqz v1, :cond_2d
    .line 241
    invoke-virtual {p1, v0}, Ljava/nio/channels/SelectionKey;->interestOps(I)Ljava/nio/channels/SelectionKey;
    .line 242
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mNioConnectListener:Lcom/open/net/client/impl/tcp/nio/NioConnectListener;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$800(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Lcom/open/net/client/impl/tcp/nio/NioConnectListener;
    move-result-object p1
    if-eqz p1, :cond_2d
    .line 243
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mNioConnectListener:Lcom/open/net/client/impl/tcp/nio/NioConnectListener;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$800(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Lcom/open/net/client/impl/tcp/nio/NioConnectListener;
    move-result-object p1
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$200(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/SocketChannel;
    move-result-object v2
    invoke-interface {p1, v1, v2}, Lcom/open/net/client/impl/tcp/nio/NioConnectListener;->onConnectSuccess(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;Ljava/nio/channels/SocketChannel;)V
    :try_end_27
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
    goto :goto_2d
    :catch_28
    move-exception p1
    .line 247
    invoke-virtual {p1}, Ljava/lang/Exception;->printStackTrace()V
    const/4 v0, 0x0
    :cond_2d
    :goto_2d
    return v0
.end method
# virtual methods
.method public run()V
    .registers 7
    const/4 v0, 0x1
    .line 116
    :try_start_1
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-static {}, Ljava/nio/channels/spi/SelectorProvider;->provider()Ljava/nio/channels/spi/SelectorProvider;
    move-result-object v2
    invoke-virtual {v2}, Ljava/nio/channels/spi/SelectorProvider;->openSelector()Ljava/nio/channels/spi/AbstractSelector;
    move-result-object v2
    # setter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v1, v2}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$102(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;Ljava/nio/channels/Selector;)Ljava/nio/channels/Selector;
    .line 117
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-static {}, Ljava/nio/channels/SocketChannel;->open()Ljava/nio/channels/SocketChannel;
    move-result-object v2
    # setter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v1, v2}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$202(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;Ljava/nio/channels/SocketChannel;)Ljava/nio/channels/SocketChannel;
    .line 118
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$200(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/SocketChannel;
    move-result-object v1
    const/4 v2, 0x0
    invoke-virtual {v1, v2}, Ljava/nio/channels/SocketChannel;->configureBlocking(Z)Ljava/nio/channels/SelectableChannel;
    .line 120
    new-instance v1, Ljava/net/InetSocketAddress;
    iget-object v3, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mIp:Ljava/lang/String;
    invoke-static {v3}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$300(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/lang/String;
    move-result-object v3
    iget-object v4, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mPort:I
    invoke-static {v4}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$400(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)I
    move-result v4
    invoke-direct {v1, v3, v4}, Ljava/net/InetSocketAddress;-><init>(Ljava/lang/String;I)V
    .line 121
    iget-object v3, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v3}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$200(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/SocketChannel;
    move-result-object v3
    invoke-virtual {v3, v1}, Ljava/nio/channels/SocketChannel;->connect(Ljava/net/SocketAddress;)Z
    .line 122
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$200(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/SocketChannel;
    move-result-object v1
    iget-object v3, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v3}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v3
    const/16 v4, 0x8
    iget-object v5, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mClient:Lcom/open/net/client/structures/BaseClient;
    invoke-static {v5}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$500(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Lcom/open/net/client/structures/BaseClient;
    move-result-object v5
    invoke-virtual {v1, v3, v4, v5}, Ljava/nio/channels/SocketChannel;->register(Ljava/nio/channels/Selector;ILjava/lang/Object;)Ljava/nio/channels/SelectionKey;
    .line 125
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->connect_timeout:J
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$600(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)J
    move-result-wide v3
    invoke-direct {p0, v3, v4}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->connect(J)Z
    move-result v1
    if-eqz v1, :cond_10b
    :cond_5e
    :goto_5e
    if-nez v2, :cond_10b
    .line 132
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v1
    invoke-virtual {v1}, Ljava/nio/channels/Selector;->select()I
    move-result v1
    if-lez v1, :cond_d6
    .line 134
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v1
    invoke-virtual {v1}, Ljava/nio/channels/Selector;->selectedKeys()Ljava/util/Set;
    move-result-object v1
    invoke-interface {v1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
    move-result-object v1
    .line 135
    :cond_7a
    :goto_7a
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
    move-result v3
    if-eqz v3, :cond_d6
    .line 136
    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
    move-result-object v3
    check-cast v3, Ljava/nio/channels/SelectionKey;
    .line 137
    invoke-interface {v1}, Ljava/util/Iterator;->remove()V
    .line 139
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->isValid()Z
    move-result v4
    if-nez v4, :cond_90
    goto :goto_7a
    .line 143
    :cond_90
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->isReadable()Z
    move-result v4
    const/4 v5, 0x0
    if-eqz v4, :cond_b2
    .line 144
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->attachment()Ljava/lang/Object;
    move-result-object v4
    check-cast v4, Lcom/open/net/client/structures/BaseClient;
    .line 145
    invoke-virtual {v4}, Lcom/open/net/client/structures/BaseClient;->onRead()Z
    move-result v4
    if-nez v4, :cond_7a
    .line 148
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->cancel()V
    .line 149
    invoke-virtual {v3, v5}, Ljava/nio/channels/SelectionKey;->attach(Ljava/lang/Object;)Ljava/lang/Object;
    .line 150
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->channel()Ljava/nio/channels/SelectableChannel;
    move-result-object v1
    invoke-virtual {v1}, Ljava/nio/channels/SelectableChannel;->close()V
    :goto_b0
    move v2, v0
    goto :goto_d6
    .line 154
    :cond_b2
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->isWritable()Z
    move-result v4
    if-eqz v4, :cond_7a
    .line 155
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->attachment()Ljava/lang/Object;
    move-result-object v4
    check-cast v4, Lcom/open/net/client/structures/BaseClient;
    .line 156
    invoke-virtual {v4}, Lcom/open/net/client/structures/BaseClient;->onWrite()Z
    move-result v4
    if-nez v4, :cond_d2
    .line 159
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->cancel()V
    .line 160
    invoke-virtual {v3, v5}, Ljava/nio/channels/SelectionKey;->attach(Ljava/lang/Object;)Ljava/lang/Object;
    .line 161
    invoke-virtual {v3}, Ljava/nio/channels/SelectionKey;->channel()Ljava/nio/channels/SelectableChannel;
    move-result-object v1
    invoke-virtual {v1}, Ljava/nio/channels/SelectableChannel;->close()V
    goto :goto_b0
    .line 164
    :cond_d2
    invoke-virtual {v3, v0}, Ljava/nio/channels/SelectionKey;->interestOps(I)Ljava/nio/channels/SelectionKey;
    goto :goto_7a
    :cond_d6
    :goto_d6
    if-nez v2, :cond_10b
    .line 169
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->closed:Z
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$700(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Z
    move-result v1
    if-eqz v1, :cond_e1
    goto :goto_10b
    .line 173
    :cond_e1
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mClient:Lcom/open/net/client/structures/BaseClient;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$500(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Lcom/open/net/client/structures/BaseClient;
    move-result-object v1
    iget-object v1, v1, Lcom/open/net/client/structures/BaseClient;->mWriteMessageQueen:Lcom/open/net/client/structures/message/MessageWriteQueen;
    iget-object v1, v1, Lcom/open/net/client/structures/message/MessageWriteQueen;->mWriteQueen:Ljava/util/LinkedList;
    invoke-virtual {v1}, Ljava/util/LinkedList;->isEmpty()Z
    move-result v1
    if-nez v1, :cond_5e
    .line 174
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSocketChannel:Ljava/nio/channels/SocketChannel;
    invoke-static {v1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$200(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/SocketChannel;
    move-result-object v1
    iget-object v3, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v3}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v3
    invoke-virtual {v1, v3}, Ljava/nio/channels/SocketChannel;->keyFor(Ljava/nio/channels/Selector;)Ljava/nio/channels/SelectionKey;
    move-result-object v1
    const/4 v3, 0x4
    .line 175
    invoke-virtual {v1, v3}, Ljava/nio/channels/SelectionKey;->interestOps(I)Ljava/nio/channels/SelectionKey;
    :try_end_105
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_105} :catch_107
    goto/16 :goto_5e
    :catch_107
    move-exception v1
    .line 181
    invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
    .line 184
    :cond_10b
    :goto_10b
    iget-object v1, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-virtual {v1, v0}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->onSocketExit(I)V
    return-void
.end method
.method public wakeUp()V
    .registers 2
    .line 107
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v0}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v0
    if-eqz v0, :cond_11
    .line 108
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor$ConnectRunnable;->this$0:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    # getter for: Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->mSelector:Ljava/nio/channels/Selector;
    invoke-static {v0}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->access$100(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)Ljava/nio/channels/Selector;
    move-result-object v0
    invoke-virtual {v0}, Ljava/nio/channels/Selector;->wakeup()Ljava/nio/channels/Selector;
    :cond_11
    return-void
.end method