FileCloudManager.smali
.class public Lcom/cleanmaster/filecloud/FileCloudManager;
.super Ljava/lang/Object;
.source "FileCloudManager.java"
# static fields
.field private static final TAG:Ljava/lang/String; = "FileCloudManager"
# direct methods
.method public constructor <init>()V
.registers 1
.prologue
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static executeScan(Ljava/util/List;Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)Z
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List",
"<",
"Lcom/cleanmaster/filecloud/beans/ScanItem;",
">;",
"Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;",
")Z"
}
.end annotation
.prologue
.line 65
if-eqz p0, :cond_8
invoke-interface {p0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-eqz v0, :cond_f
.line 66
:cond_8
if-eqz p1, :cond_d
.line 67
invoke-interface {p1}, Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;->onResultReceiverBackFail()V
.line 69
:cond_d
const/4 v0, 0x0
.line 87
:goto_e
return v0
.line 75
:cond_f
invoke-interface {p0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_13
:goto_13
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_48
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cleanmaster/filecloud/beans/ScanItem;
.line 76
invoke-virtual {v0}, Lcom/cleanmaster/filecloud/beans/ScanItem;->getDirPaths()Ljava/util/List;
move-result-object v2
.line 77
if-eqz v2, :cond_13
invoke-interface {v2}, Ljava/util/List;->isEmpty()Z
move-result v3
if-nez v3, :cond_13
.line 81
new-instance v3, Lcom/cleanmaster/filecloud/impl/FileScanHandler;
invoke-direct {v3, v0}, Lcom/cleanmaster/filecloud/impl/FileScanHandler;-><init>(Lcom/cleanmaster/filecloud/beans/ScanItem;)V
.line 82
invoke-interface {v2}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v2
:goto_34
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_44
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/String;
.line 83
invoke-static {v0, v3}, Lcom/cleanmaster/filecloud/utils/FileUtils;->scan(Ljava/lang/String;Lcom/cleanmaster/filecloud/interfaces/OnScanUpdateListener;)V
goto :goto_34
.line 85
:cond_44
invoke-virtual {v3, p1}, Lcom/cleanmaster/filecloud/impl/FileScanHandler;->onScanFinished(Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
goto :goto_13
.line 87
:cond_48
const/4 v0, 0x1
goto :goto_e
.end method
.method private static reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
.registers 2
.prologue
.line 58
invoke-static {p0}, Lcom/cleanmaster/filecloud/report/cm_cn_wechat_cloud_dev;->reportScanFail(I)V
.line 59
if-eqz p1, :cond_8
.line 60
invoke-interface {p1}, Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;->onResultReceiverBackFail()V
.line 62
:cond_8
return-void
.end method
.method public static scan(Ljava/util/List;Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List",
"<",
"Lcom/cleanmaster/filecloud/beans/ScanItem;",
">;",
"Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;",
")V"
}
.end annotation
.prologue
.line 24
invoke-static {}, Lcom/cleanmaster/filecloud/report/cm_cn_wechat_cloud_dev;->reportScanStart()V
.line 26
if-eqz p0, :cond_b
invoke-interface {p0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-eqz v0, :cond_11
.line 27
:cond_b
const/16 v0, 0x2719
invoke-static {v0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
.line 55
:goto_10
return-void
.line 31
:cond_11
invoke-static {}, Lcom/cleanmaster/filecloud/utils/Utils;->getContext()Landroid/content/Context;
move-result-object v0
.line 32
invoke-static {v0}, Lcom/cleanmaster/filecloud/utils/Utils;->isNetworkAvailable(Landroid/content/Context;)Z
move-result v0
if-nez v0, :cond_21
.line 33
const/16 v0, 0x271a
invoke-static {v0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
goto :goto_10
.line 38
:cond_21
:try_start_21
invoke-static {}, Landroid/os/Environment;->getExternalStorageDirectory()Ljava/io/File;
move-result-object v0
.line 39
if-eqz v0, :cond_2d
invoke-virtual {v0}, Ljava/io/File;->canRead()Z
move-result v0
if-nez v0, :cond_3a
.line 40
:cond_2d
const/16 v0, 0x271b
invoke-static {v0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
:try_end_32
.catch Ljava/lang/Exception; {:try_start_21 .. :try_end_32} :catch_33
goto :goto_10
.line 43
:catch_33
move-exception v0
.line 44
const/16 v0, 0x271c
invoke-static {v0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
goto :goto_10
.line 48
:cond_3a
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
.line 49
invoke-static {p0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->executeScan(Ljava/util/List;Lcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)Z
move-result v2
if-eqz v2, :cond_4f
.line 50
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
.line 51
sub-long v0, v2, v0
long-to-int v0, v0
invoke-static {v0}, Lcom/cleanmaster/filecloud/report/cm_cn_wechat_cloud_dev;->reportScanSuccess(I)V
goto :goto_10
.line 53
:cond_4f
const/16 v0, 0x271d
invoke-static {v0, p1}, Lcom/cleanmaster/filecloud/FileCloudManager;->reportError(ILcom/cleanmaster/filecloud/FileCloudService$IResultReceiver;)V
goto :goto_10
.end method