mirror of https://github.com/micromata/borgbackup-butler.git

Kai Reinhard
10.19.2018 1537fb95a9977a162dc29e2487c4020e96b43074
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package de.micromata.borgbutler.server.logging;
 
import org.apache.commons.lang3.StringUtils;
import org.apache.log4j.Level;
import org.apache.log4j.spi.LoggingEvent;
 
public enum LogLevel {
    ERROR, WARN, INFO, DEBUG, TRACE;
 
    /**
     * @param treshold
     * @return True, if this log level is equals or higher than given treshold. ERROR is the highest and TRACE the lowest.
     */
    public boolean matches(LogLevel treshold) {
        if (treshold == null) {
            return true;
        }
        return this.ordinal() <= treshold.ordinal();
    }
 
    public static LogLevel getLevel(LoggingEvent event) {
        switch (event.getLevel().toInt()) {
            case Level.ERROR_INT:
                return LogLevel.ERROR;
            case Level.INFO_INT:
                return LogLevel.INFO;
            case Level.DEBUG_INT:
                return LogLevel.DEBUG;
            case Level.WARN_INT:
                return LogLevel.WARN;
            case Level.TRACE_INT:
                return LogLevel.TRACE;
            default:
                return LogLevel.ERROR;
        }
 
    }
 
    public static String getSupportedValues() {
        return StringUtils.join(LogLevel.values(), ", ");
    }
}