Utils.smali
.class public Lcom/krishna/fileloader/utility/Utils;
.super Ljava/lang/Object;
.source "Utils.java"
# direct methods
.method public constructor <init>()V
.registers 1
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private static deserializeJson(Ljava/io/File;Ljava/lang/Class;)Ljava/lang/Object;
.registers 3
.line 32
invoke-static {p0}, Lcom/krishna/fileloader/utility/AndroidFileManager;->readFileAsString(Ljava/io/File;)Ljava/lang/String;
move-result-object p0
.line 33
new-instance v0, Lcom/google/gson/Gson;
invoke-direct {v0}, Lcom/google/gson/Gson;-><init>()V
.line 34
invoke-virtual {v0, p0, p1}, Lcom/google/gson/Gson;->fromJson(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p0
return-object p0
.end method
.method private static deserializeObject(Ljava/io/File;Ljava/lang/Class;)Ljava/lang/Object;
.registers 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;,
Ljava/lang/ClassNotFoundException;
}
.end annotation
.line 38
new-instance p1, Ljava/io/ObjectInputStream;
new-instance v0, Ljava/io/FileInputStream;
invoke-direct {v0, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
invoke-direct {p1, v0}, Ljava/io/ObjectInputStream;-><init>(Ljava/io/InputStream;)V
.line 39
invoke-virtual {p1}, Ljava/io/ObjectInputStream;->readObject()Ljava/lang/Object;
move-result-object p0
.line 40
invoke-virtual {p1}, Ljava/io/ObjectInputStream;->close()V
return-object p0
.end method
.method public static getObject(Ljava/io/File;Ljava/lang/Class;)Ljava/lang/Object;
.registers 2
.line 24
:try_start_0
invoke-static {p0, p1}, Lcom/krishna/fileloader/utility/Utils;->deserializeObject(Ljava/io/File;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p0
:try_end_4
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_4} :catch_5
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_4} :catch_5
goto :goto_9
.line 26
:catch_5
invoke-static {p0, p1}, Lcom/krishna/fileloader/utility/Utils;->deserializeJson(Ljava/io/File;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p0
:goto_9
return-object p0
.end method
.method public static getThreadPoolExecutor()Ljava/util/concurrent/ThreadPoolExecutor;
.registers 8
.line 48
new-instance v6, Ljava/util/concurrent/LinkedBlockingQueue;
const/16 v0, 0x50
invoke-direct {v6, v0}, Ljava/util/concurrent/LinkedBlockingQueue;-><init>(I)V
.line 49
new-instance v7, Ljava/util/concurrent/ThreadPoolExecutor;
const/16 v0, 0x1e
int-to-long v3, v0
sget-object v5, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;
const/16 v1, 0x3c
const/16 v2, 0x50
move-object v0, v7
invoke-direct/range {v0 .. v6}, Ljava/util/concurrent/ThreadPoolExecutor;-><init>(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;)V
return-object v7
.end method
.method public static isValidFileName(Ljava/lang/String;)Z
.registers 2
const-string v0, ".*\\..*"
.line 53
invoke-static {v0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;
move-result-object v0
.line 54
invoke-virtual {v0, p0}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
move-result-object p0
invoke-virtual {p0}, Ljava/util/regex/Matcher;->matches()Z
move-result p0
return p0
.end method