diff options
Diffstat (limited to 'src/main/java/bartworks/util/log/DebugLog.java')
-rw-r--r-- | src/main/java/bartworks/util/log/DebugLog.java | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/src/main/java/bartworks/util/log/DebugLog.java b/src/main/java/bartworks/util/log/DebugLog.java new file mode 100644 index 0000000000..76d6a70ea7 --- /dev/null +++ b/src/main/java/bartworks/util/log/DebugLog.java @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2018-2020 bartimaeusnek Permission is hereby granted, free of charge, to any person obtaining a copy of + * this software and associated documentation files (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following + * conditions: The above copyright notice and this permission notice shall be included in all copies or substantial + * portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, + * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. + * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +package bartworks.util.log; + +import java.io.File; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.GregorianCalendar; +import java.util.logging.FileHandler; +import java.util.logging.Formatter; +import java.util.logging.LogRecord; +import java.util.logging.Logger; + +import cpw.mods.fml.common.event.FMLPreInitializationEvent; + +public class DebugLog { + + private static boolean init; + static FileHandler fh; + private static Logger utilLog; + + public static void initDebugLog(FMLPreInitializationEvent event) throws IOException { + if (DebugLog.init) return; + DebugLog.fh = new FileHandler( + new File( + new File( + event.getModConfigurationDirectory() + .getParentFile(), + "logs"), + "BWLog.log").toString()); + DebugLog.utilLog = Logger.getLogger("DebugLog"); + DebugLog.utilLog.setUseParentHandlers(false); + DebugLog.utilLog.addHandler(DebugLog.fh); + Formatter formatter = new Formatter() { + + @Override + public String format(LogRecord record) { + SimpleDateFormat logTime = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); + Calendar cal = new GregorianCalendar(); + cal.setTimeInMillis(record.getMillis()); + return "Level: " + record + .getLevel() + " at " + logTime.format(cal.getTime()) + " " + record.getMessage() + "\n"; + } + }; + DebugLog.fh.setFormatter(formatter); + DebugLog.init = true; + } + + public static void log(String record) { + if (!DebugLog.init) return; + DebugLog.utilLog.info(record); + } +} |