d.smali

.class public final Lcom/imo/android/imoim/av/c/d;
.super Ljava/lang/Object;
.source "SourceFile"

# interfaces
.implements Lcom/imo/android/imoim/av/c/b;


# instance fields
.field a:Ljava/lang/String;

.field public b:I

.field public c:[B

.field d:Lcom/imo/android/imoim/av/c/a;

.field private e:Ljava/lang/String;

.field private f:Lcom/android/volley/j;

.field private g:Ljava/util/LinkedList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/LinkedList<",
            "[B>;"
        }
    .end annotation
.end field

.field private h:Z


# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/lang/String;)V
    .registers 7

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

    const/16 v0, 0xf

    .line 27
    iput v0, p0, Lcom/imo/android/imoim/av/c/d;->b:I

    .line 29
    new-instance v0, Ljava/util/LinkedList;

    invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V

    iput-object v0, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    const/4 v0, 0x0

    .line 30
    iput-boolean v0, p0, Lcom/imo/android/imoim/av/c/d;->h:Z

    const/4 v0, 0x0

    .line 31
    iput-object v0, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    .line 36
    new-instance v0, Lcom/android/volley/j;

    new-instance v1, Lcom/android/volley/toolbox/o;

    invoke-direct {v1}, Lcom/android/volley/toolbox/o;-><init>()V

    new-instance v2, Lcom/android/volley/toolbox/c;

    new-instance v3, Lcom/android/volley/toolbox/j;

    invoke-direct {v3}, Lcom/android/volley/toolbox/j;-><init>()V

    invoke-direct {v2, v3}, Lcom/android/volley/toolbox/c;-><init>(Lcom/android/volley/toolbox/b;)V

    const/4 v3, 0x1

    invoke-direct {v0, v1, v2, v3}, Lcom/android/volley/j;-><init>(Lcom/android/volley/a;Lcom/android/volley/f;I)V

    iput-object v0, p0, Lcom/imo/android/imoim/av/c/d;->f:Lcom/android/volley/j;

    .line 37
    invoke-virtual {v0}, Lcom/android/volley/j;->a()V

    .line 38
    iput-object p1, p0, Lcom/imo/android/imoim/av/c/d;->e:Ljava/lang/String;

    .line 39
    iput-object p2, p0, Lcom/imo/android/imoim/av/c/d;->a:Ljava/lang/String;

    return-void
.end method

.method private declared-synchronized d()V
    .registers 9

    monitor-enter p0

    .line 65
    :try_start_1
    iget-boolean v0, p0, Lcom/imo/android/imoim/av/c/d;->h:Z

    if-nez v0, :cond_a0

    iget-object v0, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v0}, Ljava/util/LinkedList;->size()I

    move-result v0

    if-lez v0, :cond_a0

    const/4 v0, 0x1

    .line 66
    iput-boolean v0, p0, Lcom/imo/android/imoim/av/c/d;->h:Z

    .line 69
    iget-object v1, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v1}, Ljava/util/LinkedList;->iterator()Ljava/util/Iterator;

    move-result-object v1

    const/4 v2, 0x0

    const/4 v3, 0x0

    const/4 v4, 0x0

    :goto_19
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v5

    if-eqz v5, :cond_42

    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v5

    check-cast v5, [B

    if-nez v3, :cond_3d

    .line 70
    iget-object v6, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    if-eqz v6, :cond_3d

    iget-object v6, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    array-length v6, v6

    if-lez v6, :cond_3d

    iget-object v6, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    .line 72
    invoke-static {v5, v6}, Ljava/util/Arrays;->equals([B[B)Z

    move-result v6

    if-nez v6, :cond_3d

    .line 73
    iget-object v4, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    array-length v4, v4

    add-int/2addr v3, v4

    const/4 v4, 0x1

    .line 76
    :cond_3d
    array-length v5, v5

    add-int/lit8 v5, v5, 0x2

    add-int/2addr v3, v5

    goto :goto_19

    .line 78
    :cond_42
    new-array v0, v3, [B

    const/4 v1, 0x0

    .line 80
    :goto_45
    iget-object v3, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v3}, Ljava/util/LinkedList;->size()I

    move-result v3

    if-lez v3, :cond_80

    .line 81
    iget-object v3, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v3}, Ljava/util/LinkedList;->poll()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, [B

    .line 82
    array-length v5, v3

    if-eqz v4, :cond_5c

    .line 84
    iget-object v6, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    array-length v6, v6

    add-int/2addr v5, v6

    :cond_5c
    add-int/lit8 v6, v1, 0x1

    shr-int/lit8 v7, v5, 0x8

    int-to-byte v7, v7

    .line 86
    aput-byte v7, v0, v1

    add-int/lit8 v1, v6, 0x1

    and-int/lit16 v5, v5, 0xff

    int-to-byte v5, v5

    .line 87
    aput-byte v5, v0, v6

    if-eqz v4, :cond_78

    .line 89
    iget-object v4, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    iget-object v5, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    array-length v5, v5

    invoke-static {v4, v2, v0, v1, v5}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    .line 90
    iget-object v4, p0, Lcom/imo/android/imoim/av/c/d;->c:[B

    array-length v4, v4

    add-int/2addr v1, v4

    .line 92
    :cond_78
    array-length v4, v3

    invoke-static {v3, v2, v0, v1, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V

    .line 93
    array-length v3, v3

    add-int/2addr v1, v3

    const/4 v4, 0x0

    goto :goto_45

    .line 1118
    :cond_80
    new-instance v1, Lcom/imo/android/imoim/av/c/d$2;

    iget-object v3, p0, Lcom/imo/android/imoim/av/c/d;->e:Ljava/lang/String;

    new-instance v4, Lcom/imo/android/imoim/av/c/d$1;

    invoke-direct {v4, p0}, Lcom/imo/android/imoim/av/c/d$1;-><init>(Lcom/imo/android/imoim/av/c/d;)V

    invoke-direct {v1, p0, v3, v4, v0}, Lcom/imo/android/imoim/av/c/d$2;-><init>(Lcom/imo/android/imoim/av/c/d;Ljava/lang/String;Lcom/android/volley/k$a;[B)V

    .line 1160
    new-instance v0, Lcom/android/volley/c;

    const/16 v3, 0x9c4

    const/high16 v4, 0x3f800000    # 1.0f

    invoke-direct {v0, v3, v2, v4}, Lcom/android/volley/c;-><init>(IIF)V

    invoke-virtual {v1, v0}, Lcom/android/volley/i;->setRetryPolicy(Lcom/android/volley/m;)Lcom/android/volley/i;

    .line 1164
    invoke-virtual {v1, v2}, Lcom/android/volley/i;->setShouldCache(Z)Lcom/android/volley/i;

    .line 1165
    iget-object v0, p0, Lcom/imo/android/imoim/av/c/d;->f:Lcom/android/volley/j;

    invoke-virtual {v0, v1}, Lcom/android/volley/j;->a(Lcom/android/volley/i;)Lcom/android/volley/i;
    :try_end_a0
    .catchall {:try_start_1 .. :try_end_a0} :catchall_a2

    .line 98
    :cond_a0
    monitor-exit p0

    return-void

    :catchall_a2
    move-exception v0

    monitor-exit p0

    goto :goto_a6

    :goto_a5
    throw v0

    :goto_a6
    goto :goto_a5
.end method


# virtual methods
.method public final a()V
    .registers 2

    .line 53
    iget-object v0, p0, Lcom/imo/android/imoim/av/c/d;->f:Lcom/android/volley/j;

    invoke-virtual {v0}, Lcom/android/volley/j;->b()V

    return-void
.end method

.method public final a(Lcom/imo/android/imoim/av/c/a;)V
    .registers 2

    .line 44
    iput-object p1, p0, Lcom/imo/android/imoim/av/c/d;->d:Lcom/imo/android/imoim/av/c/a;

    return-void
.end method

.method public final declared-synchronized a([B)V
    .registers 5

    monitor-enter p0

    :try_start_1
    const-string v0, "http"

    .line 102
    new-instance v1, Ljava/lang/StringBuilder;

    const-string v2, "Adding "

    invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V

    array-length v2, p1

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    const-string v2, " bytes. Queue size "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    iget-object v2, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v2}, Ljava/util/LinkedList;->size()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    .line 2071
    invoke-static {v0, v1}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 103
    iget-object v0, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {v0, p1}, Ljava/util/LinkedList;->offer(Ljava/lang/Object;)Z

    .line 104
    :goto_28
    iget-object p1, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {p1}, Ljava/util/LinkedList;->size()I

    move-result p1

    iget v0, p0, Lcom/imo/android/imoim/av/c/d;->b:I

    if-le p1, v0, :cond_3f

    const-string p1, "http"

    const-string v0, "Dropping item from queue"

    .line 3071
    invoke-static {p1, v0}, Lcom/imo/android/imoim/util/bt;->d(Ljava/lang/String;Ljava/lang/String;)V

    .line 106
    iget-object p1, p0, Lcom/imo/android/imoim/av/c/d;->g:Ljava/util/LinkedList;

    invoke-virtual {p1}, Ljava/util/LinkedList;->poll()Ljava/lang/Object;

    goto :goto_28

    .line 108
    :cond_3f
    invoke-direct {p0}, Lcom/imo/android/imoim/av/c/d;->d()V
    :try_end_42
    .catchall {:try_start_1 .. :try_end_42} :catchall_44

    .line 109
    monitor-exit p0

    return-void

    :catchall_44
    move-exception p1

    monitor-exit p0

    goto :goto_48

    :goto_47
    throw p1

    :goto_48
    goto :goto_47
.end method

.method public final b()V
    .registers 1

    return-void
.end method

.method final declared-synchronized c()V
    .registers 2

    monitor-enter p0

    const/4 v0, 0x0

    .line 112
    :try_start_2
    iput-boolean v0, p0, Lcom/imo/android/imoim/av/c/d;->h:Z

    .line 113
    invoke-direct {p0}, Lcom/imo/android/imoim/av/c/d;->d()V
    :try_end_7
    .catchall {:try_start_2 .. :try_end_7} :catchall_9

    .line 114
    monitor-exit p0

    return-void

    :catchall_9
    move-exception v0

    monitor-exit p0

    throw v0
.end method