NioConnector$1.smali

.class Lcom/open/net/client/impl/tcp/nio/NioConnector$1;
.super Ljava/lang/Object;
.source "NioConnector.java"

# interfaces
.implements Lcom/open/net/client/impl/tcp/nio/NioConnectListener;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/open/net/client/impl/tcp/nio/NioConnector;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x0
    name = null
.end annotation


# instance fields
.field final synthetic this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;


# direct methods
.method constructor <init>(Lcom/open/net/client/impl/tcp/nio/NioConnector;)V
    .registers 2

    .line 31
    iput-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

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

    return-void
.end method


# virtual methods
.method public declared-synchronized onConnectFailed(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;)V
    .registers 3

    monitor-enter p0

    .line 52
    :try_start_1
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    # getter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->mSocketProcessor:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-static {v0}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$000(Lcom/open/net/client/impl/tcp/nio/NioConnector;)Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;

    move-result-object v0

    if-eq p1, v0, :cond_10

    if-eqz p1, :cond_e

    .line 55
    invoke-virtual {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->close()V
    :try_end_e
    .catchall {:try_start_1 .. :try_end_e} :catchall_1d

    .line 57
    :cond_e
    monitor-exit p0

    return-void

    .line 60
    :cond_10
    :try_start_10
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    const/4 v0, 0x1

    # setter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->state:I
    invoke-static {p1, v0}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$102(Lcom/open/net/client/impl/tcp/nio/NioConnector;I)I

    .line 61
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    invoke-virtual {p1}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->connect()V
    :try_end_1b
    .catchall {:try_start_10 .. :try_end_1b} :catchall_1d

    .line 66
    monitor-exit p0

    return-void

    :catchall_1d
    move-exception p1

    monitor-exit p0

    throw p1
.end method

.method public declared-synchronized onConnectSuccess(Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;Ljava/nio/channels/SocketChannel;)V
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    monitor-enter p0

    .line 34
    :try_start_1
    iget-object v0, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    # getter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->mSocketProcessor:Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;
    invoke-static {v0}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$000(Lcom/open/net/client/impl/tcp/nio/NioConnector;)Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;

    move-result-object v0

    if-eq p1, v0, :cond_10

    if-eqz p1, :cond_e

    .line 37
    invoke-virtual {p1}, Lcom/open/net/client/impl/tcp/nio/processor/NioReadWriteProcessor;->close()V
    :try_end_e
    .catchall {:try_start_1 .. :try_end_e} :catchall_32

    .line 39
    :cond_e
    monitor-exit p0

    return-void

    .line 42
    :cond_10
    :try_start_10
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    const/4 v0, 0x3

    # setter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->state:I
    invoke-static {p1, v0}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$102(Lcom/open/net/client/impl/tcp/nio/NioConnector;I)I

    .line 43
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    # getter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->mClient:Lcom/open/net/client/impl/tcp/nio/NioClient;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$200(Lcom/open/net/client/impl/tcp/nio/NioConnector;)Lcom/open/net/client/impl/tcp/nio/NioClient;

    move-result-object p1

    invoke-virtual {p1, p2}, Lcom/open/net/client/impl/tcp/nio/NioClient;->init(Ljava/nio/channels/SocketChannel;)V

    .line 45
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    # getter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->mIConnectListener:Lcom/open/net/client/structures/IConnectListener;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$300(Lcom/open/net/client/impl/tcp/nio/NioConnector;)Lcom/open/net/client/structures/IConnectListener;

    move-result-object p1

    if-eqz p1, :cond_30

    .line 46
    iget-object p1, p0, Lcom/open/net/client/impl/tcp/nio/NioConnector$1;->this$0:Lcom/open/net/client/impl/tcp/nio/NioConnector;

    # getter for: Lcom/open/net/client/impl/tcp/nio/NioConnector;->mIConnectListener:Lcom/open/net/client/structures/IConnectListener;
    invoke-static {p1}, Lcom/open/net/client/impl/tcp/nio/NioConnector;->access$300(Lcom/open/net/client/impl/tcp/nio/NioConnector;)Lcom/open/net/client/structures/IConnectListener;

    move-result-object p1

    invoke-interface {p1}, Lcom/open/net/client/structures/IConnectListener;->onConnectionSuccess()V
    :try_end_30
    .catchall {:try_start_10 .. :try_end_30} :catchall_32

    .line 48
    :cond_30
    monitor-exit p0

    return-void

    :catchall_32
    move-exception p1

    monitor-exit p0

    throw p1
.end method