UpdateIni.smali

.class public Lcom/cleanmaster/hpsharelib/security/update/UpdateIni;
.super Ljava/lang/Object;
.source "UpdateIni.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/cleanmaster/hpsharelib/security/update/UpdateIni$Item;
    }
.end annotation


# static fields
.field public static final DATA_SWITCH_KEY:Ljava/lang/String; = "data_switch"

.field public static final DELTA_BINARY:I = 0x1

.field public static final DELTA_NONE:I = 0x0

.field public static final DELTA_SQLITE:I = 0x2

.field public static final FILE_COMPRESSED:Ljava/lang/String; = "compressed"

.field public static final FILE_DELTA:Ljava/lang/String; = "delta"

.field public static final FILE_DESCRIPTION:Ljava/lang/String; = "description"

.field public static final FILE_MD5:Ljava/lang/String; = "md5"

.field public static final FILE_MD5_TARGET:Ljava/lang/String; = "md5_target"

.field public static final FILE_PATH:Ljava/lang/String; = "path"

.field public static final FILE_PATH2:Ljava/lang/String; = "path2"

.field public static final FILE_SIZE:Ljava/lang/String; = "size"

.field public static final GLOBAL_DESCRIPTION:Ljava/lang/String; = "description"

.field public static final KEY_SUFFIX_MIN_VERSION_CODE:Ljava/lang/String; = "_minvercode"

.field public static final SECION_GLOBAL:Ljava/lang/String; = "global"

.field public static final SECION_INFO:Ljava/lang/String; = "info"

.field public static final SECION_VERSION:Ljava/lang/String; = "version"

.field public static final SECTION_SETTING:Ljava/lang/String; = "setting"

.field public static final SECTION_SWITCH:Ljava/lang/String; = "switch"

.field public static final SHOW_INTERVAL:Ljava/lang/String; = "show_gap"

.field public static final SHOW_TYPE:Ljava/lang/String; = "show_type"

.field public static final SHOW_TYPE_ENTER_APP:I = 0x1

.field public static final SHOW_TYPE_EXIT_APP:I = 0x2

.field public static final SWITCH_ALLOW:I = 0x2

.field public static final SWITCH_ALLOW_APK:I = 0x3

.field public static final SWITCH_ALLOW_CHOICE:I = 0x8

.field public static final SWITCH_ALLOW_DATA:I = 0x4

.field public static final SWITCH_DENY:I = 0x5

.field public static final SWITCH_DENY_APK:I = 0x6

.field public static final SWITCH_DENY_DATA:I = 0x7

.field public static final SWITCH_FORCE:I = 0x1

.field public static final SWITCH_UNKNOWN:I


# direct methods
.method public constructor <init>()V
    .registers 1

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

    return-void
.end method

.method public static matchFullUpdateBranch(Lcom/cleanmaster/hpsharelib/security/update/IniResolver;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 8

    .prologue
    const/4 v1, 0x0

    .line 265
    invoke-virtual {p0, p1}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getAllKey(Ljava/lang/String;)Ljava/util/Collection;

    move-result-object v0

    .line 266
    if-nez v0, :cond_9

    move-object v0, v1

    .line 283
    :goto_8
    return-object v0

    .line 271
    :cond_9
    invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;

    move-result-object v2

    .line 272
    const-string v3, "*"

    .line 273
    :cond_f
    invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_44

    .line 275
    invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    .line 276
    invoke-virtual {v3, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v4

    if-eqz v4, :cond_f

    .line 278
    invoke-static {}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->getLogInstance()Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;

    move-result-object v1

    new-instance v2, Ljava/lang/StringBuilder;

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

    const-string v3, "return branch = "

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

    move-result-object v2

    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

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

    move-result-object v2

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

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->log(Ljava/lang/String;)V

    .line 279
    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    goto :goto_8

    :cond_44
    move-object v0, v1

    .line 283
    goto :goto_8
.end method

.method public static matchPreferDelta(Lcom/cleanmaster/hpsharelib/security/update/IniResolver;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 8

    .prologue
    const/4 v1, 0x0

    .line 227
    invoke-virtual {p0, p1}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getAllKey(Ljava/lang/String;)Ljava/util/Collection;

    move-result-object v2

    .line 228
    if-nez v2, :cond_9

    move-object v0, v1

    .line 257
    :goto_8
    return-object v0

    .line 234
    :cond_9
    invoke-interface {v2}, Ljava/util/Collection;->size()I

    move-result v0

    const/4 v3, 0x1

    if-le v0, v3, :cond_51

    .line 235
    invoke-interface {v2}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;

    move-result-object v3

    .line 236
    :cond_14
    invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_51

    .line 238
    invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    .line 239
    const-string v4, "*"

    invoke-virtual {v0, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z

    move-result v4

    if-nez v4, :cond_14

    invoke-static {v0, p2}, Lcom/cleanmaster/base/util/misc/Miscellaneous;->wildcardMatch(Ljava/lang/String;Ljava/lang/String;)Z

    move-result v4

    if-eqz v4, :cond_14

    .line 241
    invoke-static {}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->getLogInstance()Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;

    move-result-object v1

    new-instance v2, Ljava/lang/StringBuilder;

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

    const-string v3, " return branch = "

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

    move-result-object v2

    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

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

    move-result-object v2

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

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->log(Ljava/lang/String;)V

    .line 242
    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    goto :goto_8

    .line 246
    :cond_51
    invoke-interface {v2}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;

    move-result-object v2

    .line 247
    :cond_55
    invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_8b

    .line 249
    invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    .line 250
    invoke-static {v0, p2}, Lcom/cleanmaster/base/util/misc/Miscellaneous;->wildcardMatch(Ljava/lang/String;Ljava/lang/String;)Z

    move-result v3

    if-eqz v3, :cond_55

    .line 252
    invoke-static {}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->getLogInstance()Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;

    move-result-object v1

    new-instance v2, Ljava/lang/StringBuilder;

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

    const-string v3, "return branch = "

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

    move-result-object v2

    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

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

    move-result-object v2

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

    move-result-object v2

    invoke-virtual {v1, v2}, Lcom/cleanmaster/hpsharelib/security/update/UpdateLog;->log(Ljava/lang/String;)V

    .line 253
    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    goto/16 :goto_8

    :cond_8b
    move-object v0, v1

    .line 257
    goto/16 :goto_8
.end method

.method public static matchWildcard(Lcom/cleanmaster/hpsharelib/security/update/IniResolver;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    .registers 7

    .prologue
    const/4 v1, 0x0

    .line 203
    invoke-virtual {p0, p1}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getAllKey(Ljava/lang/String;)Ljava/util/Collection;

    move-result-object v0

    .line 204
    if-nez v0, :cond_9

    move-object v0, v1

    .line 219
    :goto_8
    return-object v0

    .line 209
    :cond_9
    invoke-interface {v0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;

    move-result-object v2

    .line 210
    :cond_d
    invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_24

    .line 212
    invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    .line 213
    invoke-static {v0, p2}, Lcom/cleanmaster/base/util/misc/Miscellaneous;->wildcardMatch(Ljava/lang/String;Ljava/lang/String;)Z

    move-result v3

    if-eqz v3, :cond_d

    .line 215
    invoke-virtual {p0, p1, v0}, Lcom/cleanmaster/hpsharelib/security/update/IniResolver;->getValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    goto :goto_8

    :cond_24
    move-object v0, v1

    .line 219
    goto :goto_8
.end method

.method public static parseUpdateSwitch(Lcom/cleanmaster/hpsharelib/security/update/IniResolver;Ljava/lang/String;)I
    .registers 3

    .prologue
    .line 194
    const-string/jumbo v0, "switch"

    invoke-static {p0, v0, p1}, Lcom/cleanmaster/hpsharelib/security/update/UpdateIni;->matchWildcard(Lcom/cleanmaster/hpsharelib/security/update/IniResolver;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 195
    invoke-static {v0}, Lcom/cleanmaster/hpsharelib/security/update/UpdateIni;->switchTranslate(Ljava/lang/String;)I

    move-result v0

    return v0
.end method

.method public static switchTranslate(Ljava/lang/String;)I
    .registers 3

    .prologue
    const/4 v0, 0x0

    .line 164
    invoke-static {p0}, Lcom/cleanmaster/base/util/misc/Miscellaneous;->isEmpty(Ljava/lang/String;)Z

    move-result v1

    if-eqz v1, :cond_8

    .line 185
    :cond_7
    :goto_7
    return v0

    .line 168
    :cond_8
    const-string v1, "force"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_12

    .line 169
    const/4 v0, 0x1

    goto :goto_7

    .line 170
    :cond_12
    const-string v1, "allow"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_1c

    .line 171
    const/4 v0, 0x2

    goto :goto_7

    .line 172
    :cond_1c
    const-string v1, "allow_apk"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_26

    .line 173
    const/4 v0, 0x3

    goto :goto_7

    .line 174
    :cond_26
    const-string v1, "allow_data"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_30

    .line 175
    const/4 v0, 0x4

    goto :goto_7

    .line 176
    :cond_30
    const-string v1, "deny"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_3a

    .line 177
    const/4 v0, 0x5

    goto :goto_7

    .line 178
    :cond_3a
    const-string v1, "deny_apk"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_44

    .line 179
    const/4 v0, 0x6

    goto :goto_7

    .line 180
    :cond_44
    const-string v1, "deny_data"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_4e

    .line 181
    const/4 v0, 0x7

    goto :goto_7

    .line 182
    :cond_4e
    const-string v1, "allow_choice"

    invoke-virtual {v1, p0}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I

    move-result v1

    if-nez v1, :cond_7

    .line 183
    const/16 v0, 0x8

    goto :goto_7
.end method