LogHandler.java
package musichub.util;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.StandardOpenOption;
import java.sql.Timestamp;
/**
* Class offering a log writing method.
*
* @author Aimeric ADJUTOR
* @version 1.0
*/
public final class LogHandler {
/**
* Method that just throws an AssertionError if the class is called
*
* @throws AssertionError you can't instantiate this class
* @author Aimeric ADJUTOR
*/
public LogHandler() {
throw new AssertionError("You just can't instantiate this class.");
}
/**
* Method that writes a log message to spoteezer.log
*
* @param msg the message to write
* @param type the type of log
* @throws IOException if the file's not there
*/
public static void write(String msg, String type) throws IOException {
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
//Create the log using the given message
String logMsg = "\n[" + timestamp + "] " + type + ": " + msg;
// Define the file name of the file
Path fileName = Path.of("log/spoteezer.log");
// Write into the file
Files.writeString(fileName, logMsg, StandardOpenOption.APPEND);
}
/**
* Method that prints the content of spoteezer.log
*
* @throws IOException if the file's not there
*/
public static void read() throws IOException {
Path fileName = Path.of("log/spoteezer.log");
// Read the content of the file
String file_content = Files.readString(fileName);
// Print the content inside the file
System.out.println("\n" + file_content + "\n");
}
}