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