RequestQueue.smali

.class public Lcom/avast/android/cleaner/api/RequestQueue;
.super Ljava/lang/Object;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/avast/android/cleaner/api/RequestQueue$Task;,
        Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;
    }
.end annotation


# instance fields
.field private final a:Lcom/avast/android/cleaner/service/ApiService;

.field private final b:Ljava/util/Map;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;",
            ">;"
        }
    .end annotation
.end field

.field private final c:Lcom/avast/android/cleaner/api/MemoryCache;

.field private final d:Ljava/util/concurrent/ThreadPoolExecutor;

.field private final e:Leu/inmite/android/fw/helper/LowPriorityThreadFactory;


# direct methods
.method public constructor <init>(Lcom/avast/android/cleaner/service/ApiService;Lcom/avast/android/cleaner/api/MemoryCache;)V
    .registers 12

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

    new-instance v0, Ljava/util/LinkedHashMap;

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

    iput-object v0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    new-instance v0, Leu/inmite/android/fw/helper/LowPriorityThreadFactory;

    invoke-direct {v0}, Leu/inmite/android/fw/helper/LowPriorityThreadFactory;-><init>()V

    iput-object v0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->e:Leu/inmite/android/fw/helper/LowPriorityThreadFactory;

    iput-object p1, p0, Lcom/avast/android/cleaner/api/RequestQueue;->a:Lcom/avast/android/cleaner/service/ApiService;

    iput-object p2, p0, Lcom/avast/android/cleaner/api/RequestQueue;->c:Lcom/avast/android/cleaner/api/MemoryCache;

    new-instance p1, Ljava/util/concurrent/ThreadPoolExecutor;

    sget-object v6, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;

    new-instance v7, Ljava/util/concurrent/LinkedBlockingQueue;

    invoke-direct {v7}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>()V

    iget-object v8, p0, Lcom/avast/android/cleaner/api/RequestQueue;->e:Leu/inmite/android/fw/helper/LowPriorityThreadFactory;

    const/4 v2, 0x4

    const/4 v3, 0x4

    const-wide/16 v4, 0x3c

    move-object v1, p1

    invoke-direct/range {v1 .. v8}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V

    iput-object p1, p0, Lcom/avast/android/cleaner/api/RequestQueue;->d:Ljava/util/concurrent/ThreadPoolExecutor;

    const/4 p2, 0x1

    invoke-virtual {p1, p2}, Ljava/util/concurrent/ThreadPoolExecutor;->allowCoreThreadTimeOut(Z)V

    return-void
.end method

.method static synthetic a(Lcom/avast/android/cleaner/api/RequestQueue;)Lcom/avast/android/cleaner/api/MemoryCache;
    .registers 2

    const/4 v0, 0x0

    iget-object p0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->c:Lcom/avast/android/cleaner/api/MemoryCache;

    return-object p0
.end method

.method static synthetic b(Lcom/avast/android/cleaner/api/RequestQueue;)Ljava/util/Map;
    .registers 2

    const/4 v0, 0x2

    iget-object p0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    return-object p0
.end method

.method static synthetic c(Lcom/avast/android/cleaner/api/RequestQueue;)Lcom/avast/android/cleaner/service/ApiService;
    .registers 2

    const/4 v0, 0x3

    iget-object p0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->a:Lcom/avast/android/cleaner/service/ApiService;

    const/4 v0, 0x6

    return-object p0
.end method

.method private f(Lcom/avast/android/cleaner/api/request/parent/Request;Lcom/avast/android/cleaner/service/ApiService$CallApiListener;)V
    .registers 9

    iget-object v0, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    monitor-enter v0

    :try_start_3
    invoke-virtual {p1}, Lcom/avast/android/cleaner/api/request/parent/Request;->d()Ljava/lang/String;

    move-result-object v1

    const/4 v5, 0x4

    iget-object v2, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    invoke-interface {v2, v1}, Ljava/util/Map;->containsKey(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_35

    const/4 v5, 0x0

    new-instance p1, Ljava/lang/StringBuilder;

    const/4 v5, 0x0

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

    const-string v3, "ussu qernegeexdmesQ-site)iq.R u Iurs(ueed:tta  et"

    const-string v3, "RequestQueue.addItem() - reuse existing request: "

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

    const/4 v5, 0x2

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

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

    move-result-object p1

    const/4 v5, 0x3

    invoke-static {p1}, Leu/inmite/android/fw/DebugLog;->s(Ljava/lang/String;)I

    const/4 v5, 0x6

    iget-object p1, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    invoke-interface {p1, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    const/4 v5, 0x2

    check-cast p1, Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;

    goto :goto_56

    :cond_35
    new-instance v3, Ljava/lang/StringBuilder;

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

    const-string v4, "RequestQueue.addItem() - addItem new request: "

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

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

    const/4 v5, 0x7

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

    move-result-object v3

    const/4 v5, 0x7

    invoke-static {v3}, Leu/inmite/android/fw/DebugLog;->s(Ljava/lang/String;)I

    new-instance v3, Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;

    invoke-direct {v3, p0, p1}, Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;-><init>(Lcom/avast/android/cleaner/api/RequestQueue;Lcom/avast/android/cleaner/api/request/parent/Request;)V

    iget-object p1, p0, Lcom/avast/android/cleaner/api/RequestQueue;->b:Ljava/util/Map;

    invoke-interface {p1, v1, v3}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    move-object p1, v3

    :goto_56
    const/4 v5, 0x7

    if-eqz p2, :cond_5d

    const/4 v5, 0x1

    invoke-virtual {p1, p2}, Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;->a(Lcom/avast/android/cleaner/service/ApiService$CallApiListener;)V

    :cond_5d
    if-nez v2, :cond_73

    const/4 v5, 0x6

    new-instance p2, Lcom/avast/android/cleaner/api/RequestQueue$Task;

    const/4 v5, 0x1

    invoke-direct {p2, p0}, Lcom/avast/android/cleaner/api/RequestQueue$Task;-><init>(Lcom/avast/android/cleaner/api/RequestQueue;)V

    iget-object v1, p0, Lcom/avast/android/cleaner/api/RequestQueue;->d:Ljava/util/concurrent/ThreadPoolExecutor;

    const/4 v2, 0x1

    move v5, v2

    new-array v2, v2, [Lcom/avast/android/cleaner/api/RequestQueue$RequestQueueItem;

    const/4 v5, 0x4

    const/4 v3, 0x0

    aput-object p1, v2, v3

    invoke-virtual {p2, v1, v2}, Landroid/os/AsyncTask;->executeOnExecutor(Ljava/util/concurrent/Executor;[Ljava/lang/Object;)Landroid/os/AsyncTask;

    :cond_73
    monitor-exit v0

    const/4 v5, 0x6

    return-void

    :catchall_76
    move-exception p1

    const/4 v5, 0x3

    monitor-exit v0
    :try_end_79
    .catchall {:try_start_3 .. :try_end_79} :catchall_76

    const/4 v5, 0x6

    throw p1
.end method


# virtual methods
.method public d(Lcom/avast/android/cleaner/api/request/parent/Request;)V
    .registers 4

    const/4 v1, 0x4

    const/4 v0, 0x0

    const/4 v1, 0x5

    invoke-direct {p0, p1, v0}, Lcom/avast/android/cleaner/api/RequestQueue;->f(Lcom/avast/android/cleaner/api/request/parent/Request;Lcom/avast/android/cleaner/service/ApiService$CallApiListener;)V

    return-void
.end method

.method public e(Lcom/avast/android/cleaner/api/request/parent/Request;Lcom/avast/android/cleaner/service/ApiService$CallApiListener;)V
    .registers 4

    const/4 v0, 0x0

    invoke-direct {p0, p1, p2}, Lcom/avast/android/cleaner/api/RequestQueue;->f(Lcom/avast/android/cleaner/api/request/parent/Request;Lcom/avast/android/cleaner/service/ApiService$CallApiListener;)V

    return-void
.end method