BloodMagic/src/main/java/WayofTime/bloodmagic/util/BMLog.java
Nicholas Ignoffo f89b5a005a Logging for plugin gathering
Moved spammy API stuff to a separate logger
2018-02-17 09:48:17 -08:00

64 lines
1.4 KiB
Java

package WayofTime.bloodmagic.util;
import WayofTime.bloodmagic.BloodMagic;
import WayofTime.bloodmagic.ConfigHandler;
import org.apache.commons.lang3.text.WordUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public enum BMLog {
DEFAULT(BloodMagic.MODID) {
@Override
boolean enabled() {
return true;
}
},
DEBUG() {
@Override
boolean enabled() {
return ConfigHandler.general.enableDebugLogging;
}
},
API() {
@Override
boolean enabled() {
return ConfigHandler.general.enableAPILogging;
}
},
API_VERBOSE() {
@Override
boolean enabled() {
return ConfigHandler.general.enableVerboseAPILogging;
}
},
;
private final Logger logger;
BMLog(String logName) {
logger = LogManager.getLogger(logName);
}
BMLog() {
logger = LogManager.getLogger(BloodMagic.MODID + "|" + WordUtils.capitalizeFully(name().replace("_", " ")));
}
abstract boolean enabled();
public void info(String input, Object... args) {
if (enabled())
logger.info(input, args);
}
public void error(String input, Object... args) {
if (enabled())
logger.error(input, args);
}
public void warn(String input, Object... args) {
if (enabled())
logger.warn(input, args);
}
}