FileCloudProvider.smali
.class public Lcom/cleanmaster/filecloud/provider/FileCloudProvider;
.super Ljava/lang/Object;
.source "FileCloudProvider.java"
# instance fields
.field private final REGEX_MARK:Ljava/lang/String;
.field private pattern:Ljava/util/regex/Pattern;
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 22
const-string v0, "//"
iput-object v0, p0, Lcom/cleanmaster/filecloud/provider/FileCloudProvider;->REGEX_MARK:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public connect()Z
.registers 2
.prologue
.line 104
:try_start_0
invoke-static {}, Lcom/cleanmaster/filecloud/provider/KFileCloudDataResolverImpl;->getInstance()Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;
move-result-object v0
invoke-interface {v0}, Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;->connect()Z
:try_end_7
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_7} :catch_9
move-result v0
.line 106
:goto_8
return v0
.line 105
:catch_9
move-exception v0
.line 106
const/4 v0, 0x1
goto :goto_8
.end method
.method public isEmpty()Z
.registers 5
.prologue
const/4 v0, 0x1
.line 96
:try_start_1
invoke-static {}, Lcom/cleanmaster/filecloud/provider/KFileCloudDataResolverImpl;->getInstance()Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;
move-result-object v1
const/4 v2, 0x0
const/4 v3, 0x0
invoke-interface {v1, v2, v3}, Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;->getCount(Ljava/lang/String;[Ljava/lang/String;)I
:try_end_a
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_a} :catch_10
move-result v1
if-nez v1, :cond_e
.line 98
:goto_d
return v0
.line 96
:cond_e
const/4 v0, 0x0
goto :goto_d
.line 97
:catch_10
move-exception v1
goto :goto_d
.end method
.method public queryFileCloudCache(Ljava/lang/String;Ljava/lang/String;)Ljava/util/ArrayList;
.registers 11
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Ljava/util/ArrayList",
"<",
"Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;",
">;"
}
.end annotation
.prologue
const/4 v0, 0x1
const/4 v2, 0x0
.line 25
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
.line 27
:try_start_7
invoke-static {}, Lcom/cleanmaster/filecloud/provider/KFileCloudDataResolverImpl;->getInstance()Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;
move-result-object v3
.line 28
if-eqz v3, :cond_ad
.line 29
const/4 v4, 0x6
new-array v4, v4, [Ljava/lang/String;
const/4 v5, 0x0
const-string v6, "path"
aput-object v6, v4, v5
const/4 v5, 0x1
const-string v6, "file_size"
aput-object v6, v4, v5
const/4 v5, 0x2
const-string v6, "modify_time"
aput-object v6, v4, v5
const/4 v5, 0x3
const-string v6, "path_md5"
aput-object v6, v4, v5
const/4 v5, 0x4
const-string v6, "file_md5"
aput-object v6, v4, v5
const/4 v5, 0x5
const-string v6, "package_md5"
aput-object v6, v4, v5
.line 39
const-string v5, "//"
invoke-virtual {p2, v5}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
move-result v5
if-eqz v5, :cond_3f
.line 41
const-string v2, "//"
const-string v5, "/"
invoke-virtual {p2, v2, v5}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object p2
move v2, v0
.line 47
:cond_3f
if-eqz v2, :cond_af
.line 48
const-string v0, "file_status = 3"
.line 49
const/4 v5, 0x0
invoke-interface {v3, p1, v4, v0, v5}, Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/util/List;
move-result-object v0
.line 57
:goto_48
if-eqz v0, :cond_c7
.line 58
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v3
:cond_4e
:goto_4e
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_c7
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/ContentValues;
.line 59
new-instance v4, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;
invoke-direct {v4}, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;-><init>()V
.line 60
const-string v5, "path"
invoke-virtual {v0, v5}, Landroid/content/ContentValues;->getAsString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
.line 61
if-eqz v2, :cond_83
.line 62
invoke-static {v5}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_4e
.line 65
iget-object v6, p0, Lcom/cleanmaster/filecloud/provider/FileCloudProvider;->pattern:Ljava/util/regex/Pattern;
if-nez v6, :cond_77
.line 66
invoke-static {p2}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;
move-result-object v6
iput-object v6, p0, Lcom/cleanmaster/filecloud/provider/FileCloudProvider;->pattern:Ljava/util/regex/Pattern;
.line 68
:cond_77
iget-object v6, p0, Lcom/cleanmaster/filecloud/provider/FileCloudProvider;->pattern:Ljava/util/regex/Pattern;
invoke-virtual {v6, v5}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
move-result-object v6
invoke-virtual {v6}, Ljava/util/regex/Matcher;->matches()Z
move-result v6
if-eqz v6, :cond_4e
.line 73
:cond_83
iput-object v5, v4, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;->filePath:Ljava/lang/String;
.line 74
const-string v5, "file_size"
invoke-virtual {v0, v5}, Landroid/content/ContentValues;->getAsLong(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Long;->longValue()J
move-result-wide v6
iput-wide v6, v4, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;->fileSize:J
.line 75
const-string v5, "modify_time"
invoke-virtual {v0, v5}, Landroid/content/ContentValues;->getAsLong(Ljava/lang/String;)Ljava/lang/Long;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Long;->longValue()J
move-result-wide v6
iput-wide v6, v4, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;->fileModifyTime:J
.line 76
const-string v5, "file_md5"
invoke-virtual {v0, v5}, Landroid/content/ContentValues;->getAsString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
iput-object v0, v4, Lcom/cm/plugincluster/junkengine/junk/bean/CacheItemInfo;->md5:Ljava/lang/String;
.line 77
invoke-virtual {v1, v4}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:try_end_a8
.catch Ljava/lang/Throwable; {:try_start_7 .. :try_end_a8} :catch_a9
goto :goto_4e
.line 87
:catch_a9
move-exception v0
.line 88
invoke-virtual {v0}, Ljava/lang/Throwable;->printStackTrace()V
:cond_ad
move-object v0, v1
.line 91
:goto_ae
return-object v0
.line 51
:cond_af
:try_start_af
const-string v0, "path > ? AND path < ? AND file_status = 3"
.line 53
const/4 v5, 0x2
new-array v5, v5, [Ljava/lang/String;
const/4 v6, 0x0
invoke-static {p2}, Lcom/cleanmaster/junk/util/FileUtils;->addSlash(Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
aput-object v7, v5, v6
const/4 v6, 0x1
invoke-static {p2}, Lcom/cleanmaster/junk/util/FileUtils;->replaceEndSlashBy0(Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
aput-object v7, v5, v6
invoke-interface {v3, p1, v4, v0, v5}, Lcom/cm/plugincluster/junkengine/filecloud/IKFileCloudDataResolver;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljava/util/List;
move-result-object v0
goto :goto_48
.line 81
:cond_c7
invoke-static {p1}, Lcom/cleanmaster/filecloud/utils/FileUtils;->getMD5(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
.line 82
invoke-static {v0, v1}, Lcom/cleanmaster/filecloud/db/RecycleBinFileDao;->filterWhiteFile(Ljava/lang/String;Ljava/util/ArrayList;)Ljava/util/ArrayList;
:try_end_ce
.catch Ljava/lang/Throwable; {:try_start_af .. :try_end_ce} :catch_a9
move-result-object v0
.line 83
if-eqz v0, :cond_ad
if-eq v0, v1, :cond_ad
goto :goto_ae
.end method