a.smali
.class public Lcom/cleanmaster/gameboost/util/a;
.super Ljava/lang/Object;
.source "IconLoader.java"
# instance fields
.field private a:Landroid/support/v4/util/LruCache;
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/support/v4/util/LruCache",
"<",
"Ljava/lang/String;",
"Landroid/graphics/drawable/Drawable;",
">;"
}
.end annotation
.end field
.field private final b:I
.field private c:Landroid/content/pm/PackageManager;
.field private d:Ljava/util/concurrent/ExecutorService;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 6
.prologue
.line 29
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 24
const/4 v0, 0x2
iput v0, p0, Lcom/cleanmaster/gameboost/util/a;->b:I
.line 27
const/4 v0, 0x0
iput-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->d:Ljava/util/concurrent/ExecutorService;
.line 30
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
iput-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->c:Landroid/content/pm/PackageManager;
.line 33
invoke-static {}, Ljava/lang/Runtime;->getRuntime()Ljava/lang/Runtime;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Runtime;->maxMemory()J
move-result-wide v0
const-wide/16 v2, 0x400
div-long/2addr v0, v2
long-to-int v0, v0
.line 34
div-int/lit8 v0, v0, 0x20
.line 35
new-instance v1, Lcom/cleanmaster/gameboost/util/b;
invoke-direct {v1, p0, v0}, Lcom/cleanmaster/gameboost/util/b;-><init>(Lcom/cleanmaster/gameboost/util/a;I)V
iput-object v1, p0, Lcom/cleanmaster/gameboost/util/a;->a:Landroid/support/v4/util/LruCache;
.line 41
return-void
.end method
.method static synthetic a(Lcom/cleanmaster/gameboost/util/a;)Landroid/content/pm/PackageManager;
.registers 2
.prologue
.line 21
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->c:Landroid/content/pm/PackageManager;
return-object v0
.end method
.method private declared-synchronized a(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
.registers 3
.prologue
.line 62
monitor-enter p0
:try_start_1
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
:try_end_4
.catchall {:try_start_1 .. :try_end_4} :catchall_13
move-result v0
if-eqz v0, :cond_a
const/4 v0, 0x0
.line 63
:goto_8
monitor-exit p0
return-object v0
:cond_a
:try_start_a
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->a:Landroid/support/v4/util/LruCache;
invoke-virtual {v0, p1}, Landroid/support/v4/util/LruCache;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/graphics/drawable/Drawable;
:try_end_12
.catchall {:try_start_a .. :try_end_12} :catchall_13
goto :goto_8
.line 62
:catchall_13
move-exception v0
monitor-exit p0
throw v0
.end method
.method private a()Ljava/util/concurrent/ExecutorService;
.registers 3
.prologue
.line 44
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->d:Ljava/util/concurrent/ExecutorService;
if-nez v0, :cond_13
.line 45
const-class v1, Ljava/util/concurrent/ExecutorService;
monitor-enter v1
.line 46
:try_start_7
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->d:Ljava/util/concurrent/ExecutorService;
if-nez v0, :cond_12
.line 47
const/4 v0, 0x2
invoke-static {v0}, Ljava/util/concurrent/Executors;->newFixedThreadPool(I)Ljava/util/concurrent/ExecutorService;
move-result-object v0
iput-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->d:Ljava/util/concurrent/ExecutorService;
.line 49
:cond_12
monitor-exit v1
:try_end_13
.catchall {:try_start_7 .. :try_end_13} :catchall_16
.line 51
:cond_13
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->d:Ljava/util/concurrent/ExecutorService;
return-object v0
.line 49
:catchall_16
move-exception v0
:try_start_17
monitor-exit v1
:try_end_18
.catchall {:try_start_17 .. :try_end_18} :catchall_16
throw v0
.end method
.method static synthetic a(Lcom/cleanmaster/gameboost/util/a;Ljava/lang/String;Landroid/graphics/drawable/Drawable;)V
.registers 3
.prologue
.line 21
invoke-direct {p0, p1, p2}, Lcom/cleanmaster/gameboost/util/a;->a(Ljava/lang/String;Landroid/graphics/drawable/Drawable;)V
return-void
.end method
.method private declared-synchronized a(Ljava/lang/String;Landroid/graphics/drawable/Drawable;)V
.registers 4
.prologue
.line 55
monitor-enter p0
:try_start_1
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
:try_end_4
.catchall {:try_start_1 .. :try_end_4} :catchall_17
move-result v0
if-eqz v0, :cond_9
.line 59
:cond_7
:goto_7
monitor-exit p0
return-void
.line 56
:cond_9
:try_start_9
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/util/a;->a(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
move-result-object v0
if-nez v0, :cond_7
if-eqz p2, :cond_7
.line 57
iget-object v0, p0, Lcom/cleanmaster/gameboost/util/a;->a:Landroid/support/v4/util/LruCache;
invoke-virtual {v0, p1, p2}, Landroid/support/v4/util/LruCache;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_16
.catchall {:try_start_9 .. :try_end_16} :catchall_17
goto :goto_7
.line 55
:catchall_17
move-exception v0
monitor-exit p0
throw v0
.end method
.method private b(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
.registers 4
.prologue
const/4 v0, 0x0
.line 67
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-eqz v1, :cond_8
.line 71
:cond_7
:goto_7
return-object v0
.line 68
:cond_8
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/util/a;->a(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
move-result-object v1
if-eqz v1, :cond_7
.line 69
invoke-direct {p0, p1}, Lcom/cleanmaster/gameboost/util/a;->a(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
move-result-object v0
goto :goto_7
.end method
# virtual methods
.method public a(Landroid/widget/ImageView;Ljava/lang/String;)V
.registers 5
.prologue
.line 75
if-eqz p1, :cond_8
invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_9
.line 113
:cond_8
:goto_8
return-void
.line 78
:cond_9
invoke-virtual {p1, p2}, Landroid/widget/ImageView;->setTag(Ljava/lang/Object;)V
.line 79
invoke-direct {p0, p2}, Lcom/cleanmaster/gameboost/util/a;->b(Ljava/lang/String;)Landroid/graphics/drawable/Drawable;
move-result-object v0
.line 80
if-eqz v0, :cond_16
.line 81
invoke-virtual {p1, v0}, Landroid/widget/ImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
goto :goto_8
.line 84
:cond_16
invoke-direct {p0}, Lcom/cleanmaster/gameboost/util/a;->a()Ljava/util/concurrent/ExecutorService;
move-result-object v0
new-instance v1, Lcom/cleanmaster/gameboost/util/c;
invoke-direct {v1, p0, p2, p1}, Lcom/cleanmaster/gameboost/util/c;-><init>(Lcom/cleanmaster/gameboost/util/a;Ljava/lang/String;Landroid/widget/ImageView;)V
invoke-interface {v0, v1}, Ljava/util/concurrent/ExecutorService;->execute(Ljava/lang/Runnable;)V
goto :goto_8
.end method