a.smali

.class public Lorg/apache/thrift/transport/a;
.super Lorg/apache/thrift/transport/d;


# instance fields
.field protected a:Ljava/io/InputStream;

.field protected b:Ljava/io/OutputStream;


# direct methods
.method protected constructor <init>()V
    .registers 2

    const/4 v0, 0x0

    invoke-direct {p0}, Lorg/apache/thrift/transport/d;-><init>()V

    iput-object v0, p0, Lorg/apache/thrift/transport/a;->a:Ljava/io/InputStream;

    iput-object v0, p0, Lorg/apache/thrift/transport/a;->b:Ljava/io/OutputStream;

    return-void
.end method

.method public constructor <init>(Ljava/io/OutputStream;)V
    .registers 3

    const/4 v0, 0x0

    invoke-direct {p0}, Lorg/apache/thrift/transport/d;-><init>()V

    iput-object v0, p0, Lorg/apache/thrift/transport/a;->a:Ljava/io/InputStream;

    iput-object v0, p0, Lorg/apache/thrift/transport/a;->b:Ljava/io/OutputStream;

    iput-object p1, p0, Lorg/apache/thrift/transport/a;->b:Ljava/io/OutputStream;

    return-void
.end method


# virtual methods
.method public a([BII)I
    .registers 7

    iget-object v0, p0, Lorg/apache/thrift/transport/a;->a:Ljava/io/InputStream;

    if-nez v0, :cond_e

    new-instance v0, Lorg/apache/thrift/transport/e;

    const/4 v1, 0x1

    const-string/jumbo v2, "Cannot read from null inputStream"

    invoke-direct {v0, v1, v2}, Lorg/apache/thrift/transport/e;-><init>(ILjava/lang/String;)V

    throw v0

    :cond_e
    :try_start_e
    iget-object v0, p0, Lorg/apache/thrift/transport/a;->a:Ljava/io/InputStream;

    invoke-virtual {v0, p1, p2, p3}, Ljava/io/InputStream;->read([BII)I
    :try_end_13
    .catch Ljava/io/IOException; {:try_start_e .. :try_end_13} :catch_1d

    move-result v0

    if-gez v0, :cond_25

    new-instance v0, Lorg/apache/thrift/transport/e;

    const/4 v1, 0x4

    invoke-direct {v0, v1}, Lorg/apache/thrift/transport/e;-><init>(I)V

    throw v0

    :catch_1d
    move-exception v0

    new-instance v1, Lorg/apache/thrift/transport/e;

    const/4 v2, 0x0

    invoke-direct {v1, v2, v0}, Lorg/apache/thrift/transport/e;-><init>(ILjava/lang/Throwable;)V

    throw v1

    :cond_25
    return v0
.end method

.method public b([BII)V
    .registers 7

    iget-object v0, p0, Lorg/apache/thrift/transport/a;->b:Ljava/io/OutputStream;

    if-nez v0, :cond_e

    new-instance v0, Lorg/apache/thrift/transport/e;

    const/4 v1, 0x1

    const-string/jumbo v2, "Cannot write to null outputStream"

    invoke-direct {v0, v1, v2}, Lorg/apache/thrift/transport/e;-><init>(ILjava/lang/String;)V

    throw v0

    :cond_e
    :try_start_e
    iget-object v0, p0, Lorg/apache/thrift/transport/a;->b:Ljava/io/OutputStream;

    invoke-virtual {v0, p1, p2, p3}, Ljava/io/OutputStream;->write([BII)V
    :try_end_13
    .catch Ljava/io/IOException; {:try_start_e .. :try_end_13} :catch_14

    return-void

    :catch_14
    move-exception v0

    new-instance v1, Lorg/apache/thrift/transport/e;

    const/4 v2, 0x0

    invoke-direct {v1, v2, v0}, Lorg/apache/thrift/transport/e;-><init>(ILjava/lang/Throwable;)V

    throw v1
.end method