f$b.smali
.class Lcom/qq/e/comm/plugin/aa/b/f$b;
.super Ljava/lang/Object;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/qq/e/comm/plugin/aa/b/f;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "b"
.end annotation
# static fields
.field private static volatile a:Lcom/qq/e/comm/plugin/aa/b/f$b;
# instance fields
.field private b:Ljava/util/concurrent/ArrayBlockingQueue;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/ArrayBlockingQueue",
"<",
"Ljava/lang/ref/WeakReference",
"<",
"Lcom/qq/e/comm/plugin/aa/b/f;",
">;>;"
}
.end annotation
.end field
.field private c:I
# direct methods
.method static constructor <clinit>()V
.registers 1
const/4 v0, 0x0
sput-object v0, Lcom/qq/e/comm/plugin/aa/b/f$b;->a:Lcom/qq/e/comm/plugin/aa/b/f$b;
return-void
.end method
.method private constructor <init>()V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
iput-object v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
const/4 v0, -0x1
iput v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->c:I
new-instance v0, Ljava/util/concurrent/ArrayBlockingQueue;
const/16 v1, 0x10
invoke-direct {v0, v1}, Ljava/util/concurrent/ArrayBlockingQueue;-><init>(I)V
iput-object v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
return-void
.end method
.method public static a()Lcom/qq/e/comm/plugin/aa/b/f$b;
.registers 2
sget-object v0, Lcom/qq/e/comm/plugin/aa/b/f$b;->a:Lcom/qq/e/comm/plugin/aa/b/f$b;
if-nez v0, :cond_15
const-class v0, Lcom/qq/e/comm/plugin/aa/b/f$b;
monitor-enter v0
:try_start_7
sget-object v0, Lcom/qq/e/comm/plugin/aa/b/f$b;->a:Lcom/qq/e/comm/plugin/aa/b/f$b;
if-nez v0, :cond_12
new-instance v0, Lcom/qq/e/comm/plugin/aa/b/f$b;
invoke-direct {v0}, Lcom/qq/e/comm/plugin/aa/b/f$b;-><init>()V
sput-object v0, Lcom/qq/e/comm/plugin/aa/b/f$b;->a:Lcom/qq/e/comm/plugin/aa/b/f$b;
:cond_12
const-class v0, Lcom/qq/e/comm/plugin/aa/b/f$b;
monitor-exit v0
:try_end_15
.catchall {:try_start_7 .. :try_end_15} :catchall_18
:cond_15
sget-object v0, Lcom/qq/e/comm/plugin/aa/b/f$b;->a:Lcom/qq/e/comm/plugin/aa/b/f$b;
return-object v0
:catchall_18
move-exception v0
:try_start_19
const-class v1, Lcom/qq/e/comm/plugin/aa/b/f$b;
monitor-exit v1
:try_end_1c
.catchall {:try_start_19 .. :try_end_1c} :catchall_18
throw v0
.end method
.method private b()I
.registers 5
const/4 v0, 0x5
iget v1, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->c:I
if-ltz v1, :cond_8
iget v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->c:I
:goto_7
return v0
:cond_8
invoke-static {}, Lcom/qq/e/comm/managers/GDTADManager;->getInstance()Lcom/qq/e/comm/managers/GDTADManager;
move-result-object v1
invoke-virtual {v1}, Lcom/qq/e/comm/managers/GDTADManager;->getSM()Lcom/qq/e/comm/managers/setting/SM;
move-result-object v1
if-eqz v1, :cond_65
const-string v2, "maxCachedPlayerCount"
invoke-virtual {v1, v2}, Lcom/qq/e/comm/managers/setting/SM;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "player cache count str = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_65
:try_start_34
invoke-static {v1}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
:try_end_37
.catch Ljava/lang/Exception; {:try_start_34 .. :try_end_37} :catch_5d
move-result v1
:goto_38
if-gez v1, :cond_67
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "player cache count = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ", set to default: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->i(Ljava/lang/String;)V
:goto_5a
iput v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->c:I
goto :goto_7
:catch_5d
move-exception v1
invoke-virtual {v1}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->e(Ljava/lang/String;)V
:cond_65
move v1, v0
goto :goto_38
:cond_67
move v0, v1
goto :goto_5a
.end method
# virtual methods
.method public a(Lcom/qq/e/comm/plugin/aa/b/f;)Z
.registers 6
const/4 v0, 0x0
if-nez p1, :cond_9
const-string v1, "view == null, return"
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->e(Ljava/lang/String;)V
:goto_8
return v0
:cond_9
invoke-direct {p0}, Lcom/qq/e/comm/plugin/aa/b/f$b;->b()I
move-result v1
if-nez v1, :cond_15
const-string v1, "maxCount == 0, return"
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
goto :goto_8
:cond_15
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v0}, Ljava/util/concurrent/ArrayBlockingQueue;->size()I
move-result v0
invoke-direct {p0}, Lcom/qq/e/comm/plugin/aa/b/f$b;->b()I
move-result v2
if-ne v0, v2, :cond_54
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v0}, Ljava/util/concurrent/ArrayBlockingQueue;->poll()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/ref/WeakReference;
if-eqz v0, :cond_95
invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/qq/e/comm/plugin/aa/b/f;
if-eqz v0, :cond_8f
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, "\'s player will be released, maxCacheCount = "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->e(Ljava/lang/String;)V
invoke-virtual {v0}, Lcom/qq/e/comm/plugin/aa/b/f;->m()V
:cond_54
:goto_54
new-instance v0, Ljava/lang/ref/WeakReference;
invoke-direct {v0, p1}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iget-object v1, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v1, v0}, Ljava/util/concurrent/ArrayBlockingQueue;->offer(Ljava/lang/Object;)Z
move-result v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Object;->hashCode()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " add to cache, result = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ", size = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v2}, Ljava/util/concurrent/ArrayBlockingQueue;->size()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
goto/16 :goto_8
:cond_8f
const-string v0, "player is released, remove it"
invoke-static {v0}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
goto :goto_54
:cond_95
const-string v0, "queue is empty, why?!"
invoke-static {v0}, Lcom/qq/e/comm/util/GDTLogger;->e(Ljava/lang/String;)V
goto :goto_54
.end method
.method public b(Lcom/qq/e/comm/plugin/aa/b/f;)Z
.registers 6
const/4 v1, 0x0
if-nez p1, :cond_5
move v0, v1
:goto_4
return v0
:cond_5
iget-object v0, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v0}, Ljava/util/concurrent/ArrayBlockingQueue;->iterator()Ljava/util/Iterator;
move-result-object v2
:cond_b
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_70
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/ref/WeakReference;
invoke-virtual {v0}, Ljava/lang/ref/WeakReference;->get()Ljava/lang/Object;
move-result-object v3
if-ne p1, v3, :cond_b
:goto_1d
if-eqz v0, :cond_54
iget-object v1, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v1, v0}, Ljava/util/concurrent/ArrayBlockingQueue;->remove(Ljava/lang/Object;)Z
move-result v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Object;->hashCode()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " removed from cache, result = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ", size = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-object v2, p0, Lcom/qq/e/comm/plugin/aa/b/f$b;->b:Ljava/util/concurrent/ArrayBlockingQueue;
invoke-virtual {v2}, Ljava/util/concurrent/ArrayBlockingQueue;->size()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v1}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
goto :goto_4
:cond_54
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Object;->hashCode()I
move-result v2
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string v2, " not in cache"
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/qq/e/comm/util/GDTLogger;->d(Ljava/lang/String;)V
move v0, v1
goto :goto_4
:cond_70
const/4 v0, 0x0
goto :goto_1d
.end method