NioClient.smali
.class public Lorg/bitcoinj/net/NioClient;
.super Ljava/lang/Object;
.source "NioClient.java"
# interfaces
.implements Lorg/bitcoinj/net/MessageWriteTarget;
# static fields
.field private static final log:Lorg/slf4j/Logger;
# instance fields
.field private final handler:Lorg/bitcoinj/net/NioClient$Handler;
.field private final manager:Lorg/bitcoinj/net/NioClientManager;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 32
const-class v0, Lorg/bitcoinj/net/NioClient;
invoke-static {v0}, Lorg/slf4j/LoggerFactory;->getLogger(Ljava/lang/Class;)Lorg/slf4j/Logger;
move-result-object v0
sput-object v0, Lorg/bitcoinj/net/NioClient;->log:Lorg/slf4j/Logger;
return-void
.end method
.method public constructor <init>(Ljava/net/SocketAddress;Lorg/bitcoinj/net/StreamConnection;I)V
.registers 6
.prologue
.line 101
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 35
new-instance v0, Lorg/bitcoinj/net/NioClientManager;
invoke-direct {v0}, Lorg/bitcoinj/net/NioClientManager;-><init>()V
iput-object v0, p0, Lorg/bitcoinj/net/NioClient;->manager:Lorg/bitcoinj/net/NioClientManager;
.line 102
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->manager:Lorg/bitcoinj/net/NioClientManager;
invoke-virtual {v0}, Lorg/bitcoinj/net/NioClientManager;->startAsync()Lcom/google/common/util/concurrent/Service;
.line 103
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->manager:Lorg/bitcoinj/net/NioClientManager;
invoke-virtual {v0}, Lorg/bitcoinj/net/NioClientManager;->awaitRunning()V
.line 104
new-instance v0, Lorg/bitcoinj/net/NioClient$Handler;
invoke-direct {v0, p0, p2, p3}, Lorg/bitcoinj/net/NioClient$Handler;-><init>(Lorg/bitcoinj/net/NioClient;Lorg/bitcoinj/net/StreamConnection;I)V
iput-object v0, p0, Lorg/bitcoinj/net/NioClient;->handler:Lorg/bitcoinj/net/NioClient$Handler;
.line 105
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->manager:Lorg/bitcoinj/net/NioClientManager;
iget-object v1, p0, Lorg/bitcoinj/net/NioClient;->handler:Lorg/bitcoinj/net/NioClient$Handler;
invoke-virtual {v0, p1, v1}, Lorg/bitcoinj/net/NioClientManager;->openConnection(Ljava/net/SocketAddress;Lorg/bitcoinj/net/StreamConnection;)Lcom/google/common/util/concurrent/y;
move-result-object v0
new-instance v1, Lorg/bitcoinj/net/NioClient$1;
invoke-direct {v1, p0, p1}, Lorg/bitcoinj/net/NioClient$1;-><init>(Lorg/bitcoinj/net/NioClient;Ljava/net/SocketAddress;)V
invoke-static {v0, v1}, Lcom/google/common/util/concurrent/r;->a(Lcom/google/common/util/concurrent/y;Lcom/google/common/util/concurrent/q;)V
.line 115
return-void
.end method
.method static synthetic access$000(Lorg/bitcoinj/net/NioClient;)Lorg/bitcoinj/net/NioClientManager;
.registers 2
.prologue
.line 31
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->manager:Lorg/bitcoinj/net/NioClientManager;
return-object v0
.end method
.method static synthetic access$100()Lorg/slf4j/Logger;
.registers 1
.prologue
.line 31
sget-object v0, Lorg/bitcoinj/net/NioClient;->log:Lorg/slf4j/Logger;
return-object v0
.end method
# virtual methods
.method public closeConnection()V
.registers 2
.prologue
.line 119
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->handler:Lorg/bitcoinj/net/NioClient$Handler;
# getter for: Lorg/bitcoinj/net/NioClient$Handler;->writeTarget:Lorg/bitcoinj/net/MessageWriteTarget;
invoke-static {v0}, Lorg/bitcoinj/net/NioClient$Handler;->access$200(Lorg/bitcoinj/net/NioClient$Handler;)Lorg/bitcoinj/net/MessageWriteTarget;
move-result-object v0
invoke-interface {v0}, Lorg/bitcoinj/net/MessageWriteTarget;->closeConnection()V
.line 120
return-void
.end method
.method public declared-synchronized writeBytes([B)V
.registers 3
.prologue
.line 124
monitor-enter p0
:try_start_1
iget-object v0, p0, Lorg/bitcoinj/net/NioClient;->handler:Lorg/bitcoinj/net/NioClient$Handler;
# getter for: Lorg/bitcoinj/net/NioClient$Handler;->writeTarget:Lorg/bitcoinj/net/MessageWriteTarget;
invoke-static {v0}, Lorg/bitcoinj/net/NioClient$Handler;->access$200(Lorg/bitcoinj/net/NioClient$Handler;)Lorg/bitcoinj/net/MessageWriteTarget;
move-result-object v0
invoke-interface {v0, p1}, Lorg/bitcoinj/net/MessageWriteTarget;->writeBytes([B)V
:try_end_a
.catchall {:try_start_1 .. :try_end_a} :catchall_c
.line 125
monitor-exit p0
return-void
.line 124
:catchall_c
move-exception v0
monitor-exit p0
throw v0
.end method