.class public Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper; .super Ljava/lang/Object; .source "SourceFile" # static fields .field static final PATH:Ljava/lang/String; .field static final TAG:Ljava/lang/String; .field static bLog:Z = false # direct methods .method static constructor ()V .locals 1 .line 18 invoke-static {}, Lcom/firemonkeys/cloudcellapi/ResourceHelper;->GetSerialisedNotificationHelper()Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->TAG:Ljava/lang/String; .line 41 invoke-static {}, Lcom/firemonkeys/cloudcellapi/ResourceHelper;->GetPastNotificationsFilename()Ljava/lang/String; move-result-object v0 sput-object v0, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->PATH:Ljava/lang/String; return-void .end method .method public constructor ()V .locals 0 .line 15 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static AddNotification(Landroid/content/Context;Ljava/lang/String;)V .locals 1 .line 29 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; move-result-object v0 .line 30 invoke-virtual {v0, p1}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->AddNotification(Ljava/lang/String;)V .line 31 invoke-static {p0, v0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->SaveInformation(Landroid/content/Context;Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;)V return-void .end method .method public static AreNotificationsAllowed(Landroid/content/Context;)Z .locals 0 .line 98 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; move-result-object p0 invoke-virtual {p0}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->AreNotificationsAllowed()Z move-result p0 return p0 .end method .method public static ClearAll(Landroid/content/Context;)V .locals 1 .line 36 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; move-result-object v0 .line 37 invoke-virtual {v0}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->ClearAll()V .line 38 invoke-static {p0, v0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->SaveInformation(Landroid/content/Context;Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;)V return-void .end method .method public static GetSavedInfo(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; .locals 0 .line 93 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; move-result-object p0 return-object p0 .end method .method private static LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; .locals 3 const-string v0, "Attempting to load saved information" .line 63 invoke-static {v0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->Log(Ljava/lang/String;)V .line 64 new-instance v0, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; invoke-direct {v0}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->()V .line 67 :try_start_0 new-instance v1, Ljava/io/File; invoke-virtual {p0}, Landroid/content/Context;->getFilesDir()Ljava/io/File; move-result-object p0 sget-object v2, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->PATH:Ljava/lang/String; invoke-direct {v1, p0, v2}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V .line 68 invoke-virtual {v1}, Ljava/io/File;->exists()Z move-result p0 if-eqz p0, :cond_0 const-string p0, "Found saved file. Loading information" .line 70 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->Log(Ljava/lang/String;)V .line 71 new-instance p0, Ljava/io/FileInputStream; invoke-direct {p0, v1}, Ljava/io/FileInputStream;->(Ljava/io/File;)V .line 72 new-instance v1, Ljava/io/ObjectInputStream; invoke-direct {v1, p0}, Ljava/io/ObjectInputStream;->(Ljava/io/InputStream;)V .line 73 invoke-virtual {v1}, Ljava/io/ObjectInputStream;->readObject()Ljava/lang/Object; move-result-object v2 check-cast v2, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1 .line 74 :try_start_1 invoke-virtual {v1}, Ljava/io/ObjectInputStream;->close()V .line 75 invoke-virtual {p0}, Ljava/io/FileInputStream;->close()V :try_end_1 .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_0 :catch_0 move-object v0, v2 goto :goto_0 :cond_0 :try_start_2 const-string p0, "Saved file doesn\'t exist. Returning new file" .line 79 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->Log(Ljava/lang/String;)V :try_end_2 .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1 :catch_1 :goto_0 const-string p0, "Loaded Information" .line 87 invoke-virtual {v0, p0}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->Print(Ljava/lang/String;)V return-object v0 .end method .method public static Log(Ljava/lang/String;)V .locals 0 return-void .end method .method private static SaveInformation(Landroid/content/Context;Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;)V .locals 2 .line 46 :try_start_0 new-instance v0, Ljava/io/File; invoke-virtual {p0}, Landroid/content/Context;->getFilesDir()Ljava/io/File; move-result-object p0 sget-object v1, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->PATH:Ljava/lang/String; invoke-direct {v0, p0, v1}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V .line 47 new-instance p0, Ljava/io/FileOutputStream; invoke-direct {p0, v0}, Ljava/io/FileOutputStream;->(Ljava/io/File;)V .line 48 new-instance v0, Ljava/io/ObjectOutputStream; invoke-direct {v0, p0}, Ljava/io/ObjectOutputStream;->(Ljava/io/OutputStream;)V .line 49 invoke-virtual {v0, p1}, Ljava/io/ObjectOutputStream;->writeObject(Ljava/lang/Object;)V .line 50 invoke-virtual {v0}, Ljava/io/ObjectOutputStream;->close()V .line 51 invoke-virtual {p0}, Ljava/io/FileOutputStream;->close()V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 const-string p0, "Saved Information" .line 58 invoke-virtual {p1, p0}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->Print(Ljava/lang/String;)V return-void .end method .method public static SetAreNotificationsAllowed(Landroid/content/Context;Z)V .locals 1 .line 103 invoke-static {p0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->LoadInformation(Landroid/content/Context;)Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo; move-result-object v0 .line 104 invoke-virtual {v0, p1}, Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;->SetAreNotificationsAllowed(Z)V .line 105 invoke-static {p0, v0}, Lcom/firemonkeys/cloudcellapi/SerialiseNotificationsHelper;->SaveInformation(Landroid/content/Context;Lcom/firemonkeys/cloudcellapi/SerialisedNotificationInfo;)V return-void .end method