- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
if("all".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_ALL);
} else if("trace".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_TRACE);
} else if("debug".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_DEBUG);
} else if("info".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_INFO);
} else if("warn".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_WARN);
} else if("error".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_ERROR);
} else if("fatal".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_FATAL);
} else if("off".equalsIgnoreCase(lvl)) {
setLevel(SimpleLog.LOG_LEVEL_OFF);
}
Внутренности конструктора org.apache.commons.logging.impl.SimpleLo g
по строкам? на входе же строка, которой нужно сопоставить уровень логгирования, при чём здесь int и switch?
Трабла в кривом дизайне lvl задавать строкой - некошерно. Выход набор констант-интов или енумы.
Но дело ведь в том что пейсалось это в суровые годы JDK14, когда никаких енумов не было.
Они же вроде уровень из конфигурационного файла получают, там кроме строки ничего не вытянешь
ЗЫ. Однозначно не хватает мультидиспетчеризации на основе сопоставления с образцом! А как бы было замечательно.
Взлёты и падения...