c.smali
.class public Lcom/pgl/sys/ces/a/c;
.super Ljava/lang/Object;
# static fields
.field private static final a:Ljava/io/FileFilter;
# direct methods
.method static constructor <clinit>()V
.registers 1
new-instance v0, Lcom/pgl/sys/ces/a/b;
invoke-direct {v0}, Lcom/pgl/sys/ces/a/b;-><init>()V
sput-object v0, Lcom/pgl/sys/ces/a/c;->a:Ljava/io/FileFilter;
return-void
.end method
.method public static a()Ljava/lang/String;
.registers 4
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
:try_start_5
invoke-static {}, Lcom/pgl/sys/ces/a/c;->b()Ljava/util/HashMap;
move-result-object v1
const-string v2, "core"
invoke-static {}, Lcom/pgl/sys/ces/a/c;->c()I
move-result v3
invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
const-string v2, "Hardware"
invoke-static {v1, v2}, Lcom/pgl/sys/ces/a/c;->a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
const-string v3, "hw"
invoke-virtual {v0, v3, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "max"
const-string v3, "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq"
invoke-static {v3}, Lcom/pgl/sys/ces/a/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "min"
const-string v3, "/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq"
invoke-static {v3}, Lcom/pgl/sys/ces/a/c;->a(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-virtual {v0, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string v2, "Features"
invoke-static {v1, v2}, Lcom/pgl/sys/ces/a/c;->a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
const-string v2, "ft"
invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
:try_end_3e
.catch Ljava/lang/Throwable; {:try_start_5 .. :try_end_3e} :catch_3e
:catch_3e
invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v0
if-nez v0, :cond_47
const-string v0, "{}"
goto :goto_4b
:cond_47
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
:goto_4b
return-object v0
.end method
.method private static a(Ljava/lang/String;)Ljava/lang/String;
.registers 4
const/4 v0, 0x0
:try_start_1
new-instance v1, Ljava/io/FileReader;
invoke-direct {v1, p0}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
:try_end_6
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_6} :catch_30
.catchall {:try_start_1 .. :try_end_6} :catchall_21
:try_start_6
new-instance p0, Ljava/io/BufferedReader;
invoke-direct {p0, v1}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_end_b
.catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_b} :catch_1f
.catchall {:try_start_6 .. :try_end_b} :catchall_1d
:try_start_b
invoke-virtual {p0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v0
:try_end_f
.catch Ljava/lang/Throwable; {:try_start_b .. :try_end_f} :catch_1b
.catchall {:try_start_b .. :try_end_f} :catchall_16
:try_start_f
invoke-virtual {p0}, Ljava/io/BufferedReader;->close()V
:try_end_12
.catch Ljava/lang/Throwable; {:try_start_f .. :try_end_12} :catch_12
:catch_12
:goto_12
:try_start_12
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_15
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_15} :catch_3c
goto :goto_3c
:catchall_16
move-exception v0
move-object v2, v0
move-object v0, p0
move-object p0, v2
goto :goto_23
:catch_1b
nop
goto :goto_32
:catchall_1d
move-exception p0
goto :goto_23
:catch_1f
move-object p0, v0
goto :goto_32
:catchall_21
move-exception p0
move-object v1, v0
:goto_23
if-eqz v0, :cond_2a
:try_start_25
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_28
.catch Ljava/lang/Throwable; {:try_start_25 .. :try_end_28} :catch_29
goto :goto_2a
:catch_29
nop
:cond_2a
:goto_2a
if-eqz v1, :cond_2f
:try_start_2c
invoke-virtual {v1}, Ljava/io/FileReader;->close()V
:try_end_2f
.catch Ljava/lang/Throwable; {:try_start_2c .. :try_end_2f} :catch_2f
:catch_2f
:cond_2f
throw p0
:catch_30
move-object p0, v0
move-object v1, p0
:goto_32
if-eqz p0, :cond_39
:try_start_34
invoke-virtual {p0}, Ljava/io/BufferedReader;->close()V
:try_end_37
.catch Ljava/lang/Throwable; {:try_start_34 .. :try_end_37} :catch_38
goto :goto_39
:catch_38
nop
:cond_39
:goto_39
if-eqz v1, :cond_3c
goto :goto_12
:catch_3c
:cond_3c
:goto_3c
if-nez v0, :cond_41
const-string p0, "0"
goto :goto_45
:cond_41
invoke-virtual {v0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p0
:goto_45
return-object p0
.end method
.method private static a(Ljava/util/HashMap;Ljava/lang/String;)Ljava/lang/String;
.registers 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;",
"Ljava/lang/String;",
")",
"Ljava/lang/String;"
}
.end annotation
:try_start_0
invoke-virtual {p0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/String;
:try_end_6
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_6} :catch_7
goto :goto_8
:catch_7
const/4 p0, 0x0
:goto_8
if-nez p0, :cond_d
const-string p0, ""
goto :goto_11
:cond_d
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p0
:goto_11
return-object p0
.end method
.method private static b()Ljava/util/HashMap;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/lang/String;",
">;"
}
.end annotation
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
const/4 v1, 0x0
:try_start_6
new-instance v2, Ljava/io/FileReader;
const-string v3, "/proc/cpuinfo"
invoke-direct {v2, v3}, Ljava/io/FileReader;-><init>(Ljava/lang/String;)V
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_6 .. :try_end_d} :catch_5c
.catchall {:try_start_6 .. :try_end_d} :catchall_4c
:try_start_d
new-instance v3, Ljava/io/BufferedReader;
invoke-direct {v3, v2}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
:try_end_12
.catch Ljava/lang/Throwable; {:try_start_d .. :try_end_12} :catch_4a
.catchall {:try_start_d .. :try_end_12} :catchall_47
:goto_12
:try_start_12
invoke-virtual {v3}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v1
:try_end_16
.catch Ljava/lang/Throwable; {:try_start_12 .. :try_end_16} :catch_45
.catchall {:try_start_12 .. :try_end_16} :catchall_43
if-nez v1, :cond_1f
:try_start_18
invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
:try_end_1b
.catch Ljava/lang/Throwable; {:try_start_18 .. :try_end_1b} :catch_1b
:catch_1b
:goto_1b
:try_start_1b
invoke-virtual {v2}, Ljava/io/FileReader;->close()V
:try_end_1e
.catch Ljava/lang/Throwable; {:try_start_1b .. :try_end_1e} :catch_68
goto :goto_68
:cond_1f
:try_start_1f
const-string v4, ":"
const/4 v5, 0x2
invoke-virtual {v1, v4, v5}, Ljava/lang/String;->split(Ljava/lang/String;I)[Ljava/lang/String;
move-result-object v1
array-length v4, v1
if-ge v4, v5, :cond_2a
goto :goto_12
:cond_2a
const/4 v4, 0x0
aget-object v4, v1, v4
invoke-virtual {v4}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v4
const/4 v5, 0x1
aget-object v1, v1, v5
invoke-virtual {v1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v4}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
if-eqz v5, :cond_3f
goto :goto_12
:cond_3f
invoke-virtual {v0, v4, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_42
.catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_42} :catch_45
.catchall {:try_start_1f .. :try_end_42} :catchall_43
goto :goto_12
:catchall_43
move-exception v0
goto :goto_4f
:catch_45
nop
goto :goto_5e
:catchall_47
move-exception v0
move-object v3, v1
goto :goto_4f
:catch_4a
move-object v3, v1
goto :goto_5e
:catchall_4c
move-exception v0
move-object v2, v1
move-object v3, v2
:goto_4f
if-eqz v3, :cond_56
:try_start_51
invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
:try_end_54
.catch Ljava/lang/Throwable; {:try_start_51 .. :try_end_54} :catch_55
goto :goto_56
:catch_55
nop
:cond_56
:goto_56
if-eqz v2, :cond_5b
:try_start_58
invoke-virtual {v2}, Ljava/io/FileReader;->close()V
:try_end_5b
.catch Ljava/lang/Throwable; {:try_start_58 .. :try_end_5b} :catch_5b
:catch_5b
:cond_5b
throw v0
:catch_5c
move-object v2, v1
move-object v3, v2
:goto_5e
if-eqz v3, :cond_65
:try_start_60
invoke-virtual {v3}, Ljava/io/BufferedReader;->close()V
:try_end_63
.catch Ljava/lang/Throwable; {:try_start_60 .. :try_end_63} :catch_64
goto :goto_65
:catch_64
nop
:cond_65
:goto_65
if-eqz v2, :cond_68
goto :goto_1b
:catch_68
:cond_68
:goto_68
return-object v0
.end method
.method private static c()I
.registers 2
:try_start_0
new-instance v0, Ljava/io/File;
const-string v1, "/sys/devices/system/cpu/"
invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
sget-object v1, Lcom/pgl/sys/ces/a/c;->a:Ljava/io/FileFilter;
invoke-virtual {v0, v1}, Ljava/io/File;->listFiles(Ljava/io/FileFilter;)[Ljava/io/File;
move-result-object v0
array-length v0, v0
:try_end_e
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_e} :catch_f
goto :goto_10
:catch_f
const/4 v0, -0x1
:goto_10
return v0
.end method