b.smali
.class public Lr0/b;
.super Ljava/lang/Object;
.source "ConnectionPool.java"
# instance fields
.field public a:I
.field public b:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lr0/h;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(I)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput p1, p0, Lr0/b;->a:I
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, p1}, Ljava/util/ArrayList;-><init>(I)V
iput-object v0, p0, Lr0/b;->b:Ljava/util/List;
return-void
.end method
# virtual methods
.method public a(Ljava/lang/String;I)Lr0/h;
.registers 6
iget-object v0, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_6
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1f
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lr0/h;
invoke-virtual {v1, p1, p2}, Lr0/h;->a(Ljava/lang/String;I)Z
move-result v2
if-eqz v2, :cond_6
invoke-virtual {v1}, Lr0/h;->c()Z
move-result v2
if-nez v2, :cond_6
return-object v1
:cond_1f
invoke-virtual {p0}, Lr0/b;->a()V
iget-object v0, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
iget v1, p0, Lr0/b;->a:I
if-lt v0, v1, :cond_2e
const/4 p1, 0x0
return-object p1
:cond_2e
const/4 v0, 0x0
new-array v0, v0, [Ljava/lang/Object;
const-string v1, "new-connection-created"
invoke-static {v1, v0}, Lt0/a;->b(Ljava/lang/String;[Ljava/lang/Object;)V
new-instance v0, Lr0/h;
invoke-direct {v0, p1, p2}, Lr0/h;-><init>(Ljava/lang/String;I)V
iget-object p1, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {p1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-object v0
.end method
.method public final a()V
.registers 6
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iget-object v1, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
iget v2, p0, Lr0/b;->a:I
const/4 v3, 0x1
if-lt v1, v2, :cond_3d
iget-object v1, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
sub-int/2addr v1, v3
:goto_17
if-ltz v1, :cond_3d
iget-object v2, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v2, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lr0/h;
invoke-virtual {v2}, Lr0/h;->c()Z
move-result v4
if-nez v4, :cond_2a
invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_2a
iget-object v2, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v4
sub-int/2addr v2, v4
iget v4, p0, Lr0/b;->a:I
if-ge v2, v4, :cond_3a
goto :goto_3d
:cond_3a
add-int/lit8 v1, v1, -0x1
goto :goto_17
:cond_3d
:goto_3d
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v1
if-nez v1, :cond_6e
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_47
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_57
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lr0/h;
invoke-virtual {v2}, Lr0/h;->a()V
goto :goto_47
:cond_57
new-array v1, v3, [Ljava/lang/Object;
const/4 v2, 0x0
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v3
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v1, v2
const-string v2, "clean connection pool by %d"
invoke-static {v2, v1}, Lt0/a;->b(Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v1, p0, Lr0/b;->b:Ljava/util/List;
invoke-interface {v1, v0}, Ljava/util/List;->removeAll(Ljava/util/Collection;)Z
:cond_6e
return-void
.end method