UdpNioConnector$1.smali

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

# interfaces
.implements Lcom/open/net/client/impl/udp/nio/UdpNioConnectListener;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/open/net/client/impl/udp/nio/UdpNioConnector;
.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/udp/nio/UdpNioConnector;


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

    .line 30
    iput-object p1, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    return-void
.end method


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

    monitor-enter p0

    .line 51
    :try_start_1
    iget-object v0, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    move-result-object v0

    if-eq p1, v0, :cond_10

    if-eqz p1, :cond_e

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

    .line 56
    :cond_e
    monitor-exit p0

    return-void

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

    const/4 v0, 0x1

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

    .line 60
    iget-object p1, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    .line 65
    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/udp/nio/processor/UdpNioReadWriteProcessor;Ljava/nio/channels/DatagramChannel;)V
    .registers 4
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/io/IOException;
        }
    .end annotation

    monitor-enter p0

    .line 33
    :try_start_1
    iget-object v0, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    move-result-object v0

    if-eq p1, v0, :cond_10

    if-eqz p1, :cond_e

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

    .line 38
    :cond_e
    monitor-exit p0

    return-void

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

    const/4 v0, 0x3

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

    .line 42
    iget-object p1, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    move-result-object p1

    invoke-virtual {p1, p2}, Lcom/open/net/client/impl/udp/nio/UdpNioClient;->init(Ljava/nio/channels/DatagramChannel;)V

    .line 44
    iget-object p1, p0, Lcom/open/net/client/impl/udp/nio/UdpNioConnector$1;->this$0:Lcom/open/net/client/impl/udp/nio/UdpNioConnector;

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

    move-result-object p1

    if-eqz p1, :cond_30

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

    # getter for: Lcom/open/net/client/impl/udp/nio/UdpNioConnector;->mIConnectListener:Lcom/open/net/client/structures/IConnectListener;
    invoke-static {p1}, Lcom/open/net/client/impl/udp/nio/UdpNioConnector;->access$300(Lcom/open/net/client/impl/udp/nio/UdpNioConnector;)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 47
    :cond_30
    monitor-exit p0

    return-void

    :catchall_32
    move-exception p1

    monitor-exit p0

    throw p1
.end method