Updated Javadoc for LocalDB File
This commit is contained in:
parent
236564c32d
commit
043219135f
@ -26,8 +26,22 @@ public class LocalDB {
|
|||||||
private User sender;
|
private User sender;
|
||||||
private List<Chat> chats = new ArrayList<>();
|
private List<Chat> chats = new ArrayList<>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
*Constructs an empty local database.
|
||||||
|
*
|
||||||
|
*@param sender the user who logs in
|
||||||
|
*@since Envoy v0.1-alpha
|
||||||
|
**/
|
||||||
public LocalDB(User sender) { this.sender = sender; }
|
public LocalDB(User sender) { this.sender = sender; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
*Initialises the local database and fills it with values
|
||||||
|
*if the user already sent/ received a message.<br>
|
||||||
|
*
|
||||||
|
*@param localDBDir the directory where we wish to save/load the database from.
|
||||||
|
*@throws EnvoyException if the directory selected is not an actual directory.
|
||||||
|
*@since Envoy v0.1-alpha
|
||||||
|
**/
|
||||||
public void initializeDBFile(File localDBDir) throws EnvoyException {
|
public void initializeDBFile(File localDBDir) throws EnvoyException {
|
||||||
if (localDBDir.exists() && !localDBDir.isDirectory())
|
if (localDBDir.exists() && !localDBDir.isDirectory())
|
||||||
throw new EnvoyException(String.format("LocalDBDir '%s' is not a directory!", localDBDir.getAbsolutePath()));
|
throw new EnvoyException(String.format("LocalDBDir '%s' is not a directory!", localDBDir.getAbsolutePath()));
|
||||||
@ -35,20 +49,34 @@ public class LocalDB {
|
|||||||
if (localDB.exists()) loadFromLocalDB();
|
if (localDB.exists()) loadFromLocalDB();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*Saves the database into a file for future use.
|
||||||
|
*
|
||||||
|
*@throws IOException if something went wrong during saving
|
||||||
|
*@since Envoy v0.1-alpha
|
||||||
|
**/
|
||||||
public void saveToLocalDB() {
|
public void saveToLocalDB() {
|
||||||
try {
|
try {
|
||||||
localDB.getParentFile().mkdirs();
|
localDB.getParentFile().mkdirs();
|
||||||
localDB.createNewFile();
|
localDB.createNewFile();
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
System.err.println("unable to save the messages");
|
||||||
}
|
}
|
||||||
try (ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(localDB))) {
|
try (ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(localDB))) {
|
||||||
out.writeObject(chats);
|
out.writeObject(chats);
|
||||||
} catch (IOException ex) {
|
} catch (IOException ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
|
System.err.println("unable to save the messages");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*Loads all chats saved by Envoy for the user.<br>
|
||||||
|
*
|
||||||
|
*@throws EnvoyException if something fails while loading.
|
||||||
|
*@since Envoy v0.1-alpha
|
||||||
|
**/
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
private void loadFromLocalDB() throws EnvoyException {
|
private void loadFromLocalDB() throws EnvoyException {
|
||||||
try (ObjectInputStream in = new ObjectInputStream(new FileInputStream(localDB))) {
|
try (ObjectInputStream in = new ObjectInputStream(new FileInputStream(localDB))) {
|
||||||
@ -59,5 +87,9 @@ public class LocalDB {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*@return all chats that the user has saved
|
||||||
|
*@since Envoy v0.1-alpha
|
||||||
|
**/
|
||||||
public List<Chat> getChats() { return chats; }
|
public List<Chat> getChats() { return chats; }
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user