dx$c.smali

.class public final Lcom/imo/android/imoim/util/dx$c;
.super Ljava/lang/Object;
.source "SourceFile"

# interfaces
.implements Lcom/imo/android/imoim/util/dx$b;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/imo/android/imoim/util/dx;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x19
    name = null
.end annotation


# instance fields
.field final synthetic a:Lcom/imo/android/imoim/util/dx;

.field final synthetic b:Ljava/util/Map;


# direct methods
.method constructor <init>(Lcom/imo/android/imoim/util/dx;Ljava/util/Map;)V
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Map;",
            ")V"
        }
    .end annotation

    .line 234
    iput-object p1, p0, Lcom/imo/android/imoim/util/dx$c;->a:Lcom/imo/android/imoim/util/dx;

    iput-object p2, p0, Lcom/imo/android/imoim/util/dx$c;->b:Ljava/util/Map;

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

    return-void
.end method


# virtual methods
.method public final a(J)V
    .registers 18

    move-object v0, p0

    .line 236
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    .line 240
    iget-object v2, v0, Lcom/imo/android/imoim/util/dx$c;->a:Lcom/imo/android/imoim/util/dx;

    invoke-static {}, Lcom/imo/android/imoim/IMO;->a()Lcom/imo/android/imoim/IMO;

    move-result-object v3

    const-string v4, "IMO.getInstance()"

    invoke-static {v3, v4}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V

    invoke-virtual {v3}, Lcom/imo/android/imoim/IMO;->getCacheDir()Ljava/io/File;

    move-result-object v3

    iget-object v5, v0, Lcom/imo/android/imoim/util/dx$c;->b:Ljava/util/Map;

    invoke-static {v2, v3, v5}, Lcom/imo/android/imoim/util/dx;->a(Lcom/imo/android/imoim/util/dx;Ljava/io/File;Ljava/util/Map;)J

    move-result-wide v2

    .line 243
    invoke-static {}, Lcom/imo/android/imoim/filetransfer/d/d;->f()Z

    move-result v5

    const-wide/16 v6, 0x0

    if-eqz v5, :cond_63

    .line 244
    invoke-static {}, Lcom/imo/android/imoim/filetransfer/d/d;->g()J

    move-result-wide v8

    .line 245
    invoke-static {}, Lcom/imo/android/imoim/filetransfer/d/d;->h()J

    move-result-wide v10

    .line 247
    iget-object v5, v0, Lcom/imo/android/imoim/util/dx$c;->a:Lcom/imo/android/imoim/util/dx;

    invoke-static {}, Lcom/imo/android/imoim/IMO;->a()Lcom/imo/android/imoim/IMO;

    move-result-object v12

    invoke-static {v12, v4}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V

    invoke-virtual {v12}, Lcom/imo/android/imoim/IMO;->getExternalCacheDir()Ljava/io/File;

    move-result-object v4

    iget-object v12, v0, Lcom/imo/android/imoim/util/dx$c;->b:Ljava/util/Map;

    invoke-static {v5, v4, v12}, Lcom/imo/android/imoim/util/dx;->a(Lcom/imo/android/imoim/util/dx;Ljava/io/File;Ljava/util/Map;)J

    move-result-wide v4

    add-long/2addr v2, v4

    const-string v4, "android.permission.READ_EXTERNAL_STORAGE"

    .line 249
    invoke-static {v4}, Lcom/imo/android/imoim/managers/ImoPermission;->a(Ljava/lang/String;)Z

    move-result v4

    if-eqz v4, :cond_60

    const-string v4, "android.permission.WRITE_EXTERNAL_STORAGE"

    .line 250
    invoke-static {v4}, Lcom/imo/android/imoim/managers/ImoPermission;->a(Ljava/lang/String;)Z

    move-result v4

    if-eqz v4, :cond_60

    .line 251
    iget-object v4, v0, Lcom/imo/android/imoim/util/dx$c;->a:Lcom/imo/android/imoim/util/dx;

    new-instance v5, Ljava/io/File;

    invoke-static {}, Lcom/imo/android/imoim/managers/bu;->b()Ljava/lang/String;

    move-result-object v6

    invoke-direct {v5, v6}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    iget-object v6, v0, Lcom/imo/android/imoim/util/dx$c;->b:Ljava/util/Map;

    invoke-static {v4, v5, v6}, Lcom/imo/android/imoim/util/dx;->a(Lcom/imo/android/imoim/util/dx;Ljava/io/File;Ljava/util/Map;)J

    move-result-wide v6

    :cond_60
    move-wide v4, v6

    move-wide v6, v8

    goto :goto_65

    :cond_63
    move-wide v4, v6

    move-wide v10, v4

    .line 1140
    :goto_65
    invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;

    move-result-object v8

    .line 1141
    new-instance v9, Landroid/os/StatFs;

    invoke-virtual {v8}, Ljava/io/File;->getPath()Ljava/lang/String;

    move-result-object v8

    invoke-direct {v9, v8}, Landroid/os/StatFs;-><init>(Ljava/lang/String;)V

    .line 1143
    sget v8, Landroid/os/Build$VERSION;->SDK_INT:I

    const/16 v12, 0x12

    if-lt v8, v12, :cond_81

    .line 1144
    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockSizeLong()J

    move-result-wide v13

    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockCountLong()J

    move-result-wide v8

    goto :goto_8b

    .line 1146
    :cond_81
    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockSize()I

    move-result v8

    int-to-long v13, v8

    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockCount()I

    move-result v8

    int-to-long v8, v8

    :goto_8b
    mul-long v13, v13, v8

    add-long/2addr v13, v6

    .line 255
    invoke-static {v13, v14}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v8

    const-string v13, "total"

    invoke-virtual {v1, v13, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 1153
    invoke-static {}, Landroid/os/Environment;->getDataDirectory()Ljava/io/File;

    move-result-object v8

    .line 1154
    new-instance v9, Landroid/os/StatFs;

    invoke-virtual {v8}, Ljava/io/File;->getPath()Ljava/lang/String;

    move-result-object v8

    invoke-direct {v9, v8}, Landroid/os/StatFs;-><init>(Ljava/lang/String;)V

    .line 1156
    sget v8, Landroid/os/Build$VERSION;->SDK_INT:I

    if-lt v8, v12, :cond_b1

    .line 1157
    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockSizeLong()J

    move-result-wide v12

    invoke-virtual {v9}, Landroid/os/StatFs;->getAvailableBlocksLong()J

    move-result-wide v8

    goto :goto_bb

    .line 1159
    :cond_b1
    invoke-virtual {v9}, Landroid/os/StatFs;->getBlockSize()I

    move-result v8

    int-to-long v12, v8

    invoke-virtual {v9}, Landroid/os/StatFs;->getAvailableBlocks()I

    move-result v8

    int-to-long v8, v8

    :goto_bb
    mul-long v12, v12, v8

    add-long/2addr v12, v10

    .line 256
    invoke-static {v12, v13}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v8

    const-string v12, "free"

    invoke-virtual {v1, v12, v8, v9}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 257
    invoke-static {v6, v7}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v6

    const-string v8, "extcard_space"

    invoke-virtual {v1, v8, v6, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 258
    invoke-static {v10, v11}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v6

    const-string v8, "extcard_free"

    invoke-virtual {v1, v8, v6, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 259
    invoke-static/range {p1 .. p2}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v6

    const-string v8, "imo_usage"

    invoke-virtual {v1, v8, v6, v7}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 260
    invoke-static {v2, v3}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v2

    const-string v6, "imo_cache"

    invoke-virtual {v1, v6, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 261
    invoke-static {v4, v5}, Lcom/imo/android/imoim/util/bi;->b(J)J

    move-result-wide v2

    const-string v4, "imo_user"

    invoke-virtual {v1, v4, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;

    .line 263
    sget-object v2, Lcom/imo/android/imoim/IMO;->b:Lcom/imo/android/imoim/managers/bb;

    const-string v3, "storage_space"

    invoke-virtual {v2, v3, v1}, Lcom/imo/android/imoim/managers/bb;->b(Ljava/lang/String;Lorg/json/JSONObject;)V

    return-void
.end method