n.smali
.class public Lcom/ss/android/downloadlib/n;
.super Ljava/lang/Object;
.source "DownloadDispatcher.java"
# static fields
.field private static volatile a:Lcom/ss/android/downloadlib/n;
# instance fields
.field private final b:Landroid/os/Handler;
.field private final c:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List",
"<",
"Lcom/ss/android/downloadlib/a/r;",
">;"
}
.end annotation
.end field
.field private final d:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map",
"<",
"Ljava/lang/String;",
"Lcom/ss/android/downloadlib/a/r;",
">;"
}
.end annotation
.end field
.field private final e:Ljava/util/concurrent/CopyOnWriteArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/concurrent/CopyOnWriteArrayList",
"<",
"Lcom/ss/android/a/a/b/a/a;",
">;"
}
.end annotation
.end field
.field private f:J
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 36
const/4 v0, 0x0
sput-object v0, Lcom/ss/android/downloadlib/n;->a:Lcom/ss/android/downloadlib/n;
return-void
.end method
.method private constructor <init>()V
.registers 3
.prologue
.line 39
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 40
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
.line 41
new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;
invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V
iput-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
.line 42
new-instance v0, Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-direct {v0}, Ljava/util/concurrent/CopyOnWriteArrayList;-><init>()V
iput-object v0, p0, Lcom/ss/android/downloadlib/n;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
.line 43
new-instance v0, Landroid/os/Handler;
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v1
invoke-direct {v0, v1}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
iput-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
.line 44
return-void
.end method
.method public static a()Lcom/ss/android/downloadlib/n;
.registers 2
.prologue
.line 47
sget-object v0, Lcom/ss/android/downloadlib/n;->a:Lcom/ss/android/downloadlib/n;
if-nez v0, :cond_13
.line 48
const-class v1, Lcom/ss/android/downloadlib/n;
monitor-enter v1
.line 49
:try_start_7
sget-object v0, Lcom/ss/android/downloadlib/n;->a:Lcom/ss/android/downloadlib/n;
if-nez v0, :cond_12
.line 50
new-instance v0, Lcom/ss/android/downloadlib/n;
invoke-direct {v0}, Lcom/ss/android/downloadlib/n;-><init>()V
sput-object v0, Lcom/ss/android/downloadlib/n;->a:Lcom/ss/android/downloadlib/n;
.line 52
:cond_12
monitor-exit v1
:try_end_13
.catchall {:try_start_7 .. :try_end_13} :catchall_16
.line 54
:cond_13
sget-object v0, Lcom/ss/android/downloadlib/n;->a:Lcom/ss/android/downloadlib/n;
return-object v0
.line 52
: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/ss/android/downloadlib/n;)Ljava/util/concurrent/CopyOnWriteArrayList;
.registers 2
.prologue
.line 34
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
return-object v0
.end method
.method private b()V
.registers 7
.prologue
.line 221
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
.line 222
iget-wide v2, p0, Lcom/ss/android/downloadlib/n;->f:J
sub-long v2, v0, v2
const-wide/32 v4, 0x1d4c0
cmp-long v2, v2, v4
if-gez v2, :cond_10
.line 230
:cond_f
:goto_f
return-void
.line 225
:cond_10
iput-wide v0, p0, Lcom/ss/android/downloadlib/n;->f:J
.line 227
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-nez v0, :cond_f
.line 228
invoke-direct {p0}, Lcom/ss/android/downloadlib/n;->c()V
goto :goto_f
.end method
.method private declared-synchronized b(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
.registers 8
.prologue
.line 108
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-gtz v0, :cond_e
.line 109
invoke-direct {p0, p1, p2, p3, p4}, Lcom/ss/android/downloadlib/n;->c(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
:try_end_c
.catchall {:try_start_1 .. :try_end_c} :catchall_30
.line 118
:goto_c
monitor-exit p0
return-void
.line 111
:cond_e
:try_start_e
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
const/4 v1, 0x0
invoke-interface {v0, v1}, Ljava/util/List;->remove(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 112
invoke-interface {v0, p1}, Lcom/ss/android/downloadlib/a/r;->b(Landroid/content/Context;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 113
invoke-interface {v1, p2, p3}, Lcom/ss/android/downloadlib/a/r;->b(ILcom/ss/android/a/a/b/d;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 114
invoke-interface {v1, p4}, Lcom/ss/android/downloadlib/a/r;->b(Lcom/ss/android/a/a/b/c;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 115
invoke-interface {v1}, Lcom/ss/android/downloadlib/a/r;->a()V
.line 116
iget-object v1, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {p4}, Lcom/ss/android/a/a/b/c;->a()Ljava/lang/String;
move-result-object v2
invoke-interface {v1, v2, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_2f
.catchall {:try_start_e .. :try_end_2f} :catchall_30
goto :goto_c
.line 108
:catchall_30
move-exception v0
monitor-exit p0
throw v0
.end method
.method private c()V
.registers 11
.prologue
.line 233
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
.line 234
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 235
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v4
:cond_f
:goto_f
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_35
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 236
invoke-interface {v0}, Lcom/ss/android/downloadlib/a/r;->b()Z
move-result v5
if-nez v5, :cond_f
.line 239
invoke-interface {v0}, Lcom/ss/android/downloadlib/a/r;->d()J
move-result-wide v6
sub-long v6, v2, v6
const-wide/32 v8, 0x1d4c0
cmp-long v5, v6, v8
if-lez v5, :cond_f
.line 240
invoke-interface {v0}, Lcom/ss/android/downloadlib/a/r;->g()V
.line 241
invoke-interface {v1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_f
.line 244
:cond_35
invoke-interface {v1}, Ljava/util/List;->isEmpty()Z
move-result v0
if-nez v0, :cond_40
.line 245
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v0, v1}, Ljava/util/List;->removeAll(Ljava/util/Collection;)Z
.line 247
:cond_40
return-void
.end method
.method private c(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
.registers 8
.prologue
.line 124
if-nez p4, :cond_3
.line 135
:goto_2
return-void
.line 129
:cond_3
new-instance v0, Lcom/ss/android/downloadlib/a/m;
invoke-direct {v0}, Lcom/ss/android/downloadlib/a/m;-><init>()V
.line 130
invoke-interface {v0, p1}, Lcom/ss/android/downloadlib/a/r;->b(Landroid/content/Context;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 131
invoke-interface {v1, p2, p3}, Lcom/ss/android/downloadlib/a/r;->b(ILcom/ss/android/a/a/b/d;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 132
invoke-interface {v1, p4}, Lcom/ss/android/downloadlib/a/r;->b(Lcom/ss/android/a/a/b/c;)Lcom/ss/android/downloadlib/a/r;
move-result-object v1
.line 133
invoke-interface {v1}, Lcom/ss/android/downloadlib/a/r;->a()V
.line 134
iget-object v1, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {p4}, Lcom/ss/android/a/a/b/c;->a()Ljava/lang/String;
move-result-object v2
invoke-interface {v1, v2, v0}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_2
.end method
# virtual methods
.method public a(Ljava/lang/String;)Lcom/ss/android/downloadlib/a/m;
.registers 5
.prologue
const/4 v1, 0x0
.line 93
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
if-eqz v0, :cond_13
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0}, Ljava/util/Map;->size()I
move-result v0
if-eqz v0, :cond_13
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_15
:cond_13
move-object v0, v1
.line 101
:goto_14
return-object v0
.line 96
:cond_15
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 97
instance-of v2, v0, Lcom/ss/android/downloadlib/a/m;
if-eqz v2, :cond_24
.line 98
check-cast v0, Lcom/ss/android/downloadlib/a/m;
goto :goto_14
:cond_24
move-object v0, v1
.line 101
goto :goto_14
.end method
.method public a(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
.registers 7
.prologue
.line 68
if-eqz p4, :cond_c
invoke-interface {p4}, Lcom/ss/android/a/a/b/c;->a()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_d
.line 84
:cond_c
:goto_c
return-void
.line 71
:cond_d
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {p4}, Lcom/ss/android/a/a/b/c;->a()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 73
if-eqz v0, :cond_2b
.line 74
invoke-interface {v0, p1}, Lcom/ss/android/downloadlib/a/r;->b(Landroid/content/Context;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
invoke-interface {v0, p2, p3}, Lcom/ss/android/downloadlib/a/r;->b(ILcom/ss/android/a/a/b/d;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
invoke-interface {v0, p4}, Lcom/ss/android/downloadlib/a/r;->b(Lcom/ss/android/a/a/b/c;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
invoke-interface {v0}, Lcom/ss/android/downloadlib/a/r;->a()V
goto :goto_c
.line 77
:cond_2b
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-nez v0, :cond_37
.line 79
invoke-direct {p0, p1, p2, p3, p4}, Lcom/ss/android/downloadlib/n;->b(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
goto :goto_c
.line 82
:cond_37
invoke-direct {p0, p1, p2, p3, p4}, Lcom/ss/android/downloadlib/n;->c(Landroid/content/Context;ILcom/ss/android/a/a/b/d;Lcom/ss/android/a/a/b/c;)V
goto :goto_c
.end method
.method public a(Lcom/ss/android/a/a/b/a/a;)V
.registers 3
.prologue
.line 203
if-eqz p1, :cond_7
.line 204
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->e:Ljava/util/concurrent/CopyOnWriteArrayList;
invoke-virtual {v0, p1}, Ljava/util/concurrent/CopyOnWriteArrayList;->add(Ljava/lang/Object;)Z
.line 206
:cond_7
return-void
.end method
.method public a(Lcom/ss/android/a/a/b/c;Lcom/ss/android/a/a/b/a;Lcom/ss/android/a/a/b/b;)V
.registers 6
.param p2 # Lcom/ss/android/a/a/b/a;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
.param p3 # Lcom/ss/android/a/a/b/b;
.annotation build Landroid/support/annotation/Nullable;
.end annotation
.end param
.prologue
.line 252
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
new-instance v1, Lcom/ss/android/downloadlib/o;
invoke-direct {v1, p0, p1, p2, p3}, Lcom/ss/android/downloadlib/o;-><init>(Lcom/ss/android/downloadlib/n;Lcom/ss/android/a/a/b/c;Lcom/ss/android/a/a/b/a;Lcom/ss/android/a/a/b/b;)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 260
return-void
.end method
.method public a(Lcom/ss/android/socialbase/downloader/g/c;)V
.registers 4
.prologue
.line 296
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
new-instance v1, Lcom/ss/android/downloadlib/t;
invoke-direct {v1, p0, p1}, Lcom/ss/android/downloadlib/t;-><init>(Lcom/ss/android/downloadlib/n;Lcom/ss/android/socialbase/downloader/g/c;)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 304
return-void
.end method
.method public a(Lcom/ss/android/socialbase/downloader/g/c;Lcom/ss/android/socialbase/downloader/e/a;Ljava/lang/String;)V
.registers 6
.prologue
.line 263
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
new-instance v1, Lcom/ss/android/downloadlib/p;
invoke-direct {v1, p0, p1, p2, p3}, Lcom/ss/android/downloadlib/p;-><init>(Lcom/ss/android/downloadlib/n;Lcom/ss/android/socialbase/downloader/g/c;Lcom/ss/android/socialbase/downloader/e/a;Ljava/lang/String;)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 271
return-void
.end method
.method public a(Lcom/ss/android/socialbase/downloader/g/c;Ljava/lang/String;)V
.registers 5
.prologue
.line 274
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
new-instance v1, Lcom/ss/android/downloadlib/q;
invoke-direct {v1, p0, p1, p2}, Lcom/ss/android/downloadlib/q;-><init>(Lcom/ss/android/downloadlib/n;Lcom/ss/android/socialbase/downloader/g/c;Ljava/lang/String;)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 282
return-void
.end method
.method public a(Ljava/lang/String;I)V
.registers 5
.prologue
.line 138
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
.line 153
:cond_6
:goto_6
return-void
.line 141
:cond_7
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 143
if-eqz v0, :cond_6
.line 144
invoke-interface {v0, p2}, Lcom/ss/android/downloadlib/a/r;->a(I)Z
move-result v1
.line 148
if-eqz v1, :cond_21
.line 149
iget-object v1, p0, Lcom/ss/android/downloadlib/n;->c:Ljava/util/List;
invoke-interface {v1, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 150
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->remove(Ljava/lang/Object;)Ljava/lang/Object;
.line 152
:cond_21
invoke-direct {p0}, Lcom/ss/android/downloadlib/n;->b()V
goto :goto_6
.end method
.method public a(Ljava/lang/String;JI)V
.registers 13
.prologue
const/4 v5, 0x0
.line 170
move-object v0, p0
move-object v1, p1
move-wide v2, p2
move v4, p4
move-object v6, v5
invoke-virtual/range {v0 .. v6}, Lcom/ss/android/downloadlib/n;->a(Ljava/lang/String;JILcom/ss/android/a/a/b/b;Lcom/ss/android/a/a/b/a;)V
.line 171
return-void
.end method
.method public a(Ljava/lang/String;JILcom/ss/android/a/a/b/b;Lcom/ss/android/a/a/b/a;)V
.registers 15
.prologue
.line 175
const/4 v7, 0x0
check-cast v7, Lcom/ss/android/a/a/a/s;
move-object v0, p0
move-object v1, p1
move-wide v2, p2
move v4, p4
move-object v5, p5
move-object v6, p6
invoke-virtual/range {v0 .. v7}, Lcom/ss/android/downloadlib/n;->a(Ljava/lang/String;JILcom/ss/android/a/a/b/b;Lcom/ss/android/a/a/b/a;Lcom/ss/android/a/a/a/s;)V
.line 176
return-void
.end method
.method public a(Ljava/lang/String;JILcom/ss/android/a/a/b/b;Lcom/ss/android/a/a/b/a;Lcom/ss/android/a/a/a/s;)V
.registers 10
.prologue
.line 179
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
.line 189
:cond_6
:goto_6
return-void
.line 182
:cond_7
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 183
if-eqz v0, :cond_6
.line 184
invoke-interface {v0, p5}, Lcom/ss/android/downloadlib/a/r;->b(Lcom/ss/android/a/a/b/b;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
.line 185
invoke-interface {v0, p6}, Lcom/ss/android/downloadlib/a/r;->b(Lcom/ss/android/a/a/b/a;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
.line 186
invoke-interface {v0, p7}, Lcom/ss/android/downloadlib/a/r;->a(Lcom/ss/android/a/a/a/s;)Lcom/ss/android/downloadlib/a/r;
move-result-object v0
.line 187
invoke-interface {v0, p2, p3, p4}, Lcom/ss/android/downloadlib/a/r;->a(JI)V
goto :goto_6
.end method
.method public a(Ljava/lang/String;Z)V
.registers 4
.prologue
.line 160
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_7
.line 167
:cond_6
:goto_6
return-void
.line 163
:cond_7
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->d:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ss/android/downloadlib/a/r;
.line 164
if-eqz v0, :cond_6
.line 165
invoke-interface {v0, p2}, Lcom/ss/android/downloadlib/a/r;->a(Z)V
goto :goto_6
.end method
.method public b(Lcom/ss/android/socialbase/downloader/g/c;Ljava/lang/String;)V
.registers 5
.prologue
.line 285
iget-object v0, p0, Lcom/ss/android/downloadlib/n;->b:Landroid/os/Handler;
new-instance v1, Lcom/ss/android/downloadlib/s;
invoke-direct {v1, p0, p1, p2}, Lcom/ss/android/downloadlib/s;-><init>(Lcom/ss/android/downloadlib/n;Lcom/ss/android/socialbase/downloader/g/c;Ljava/lang/String;)V
invoke-virtual {v0, v1}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
.line 293
return-void
.end method