Skip to content

Commit 4a90ad6

Browse files
committed
Add an annotation processing option to add ConsoleAppender
1 parent ed00b2e commit 4a90ad6

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

  • AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/logger

‎AndroidAnnotations/androidannotations/src/main/java/org/androidannotations/logger/LoggerContext.java‎

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,22 @@
22

33
import java.util.ArrayList;
44
import java.util.List;
5+
import java.util.Map;
56

67
import javax.annotation.processing.ProcessingEnvironment;
78
import javax.lang.model.element.AnnotationMirror;
89
import javax.lang.model.element.Element;
910

1011
import org.androidannotations.logger.appender.Appender;
12+
import org.androidannotations.logger.appender.ConsoleAppender;
1113
import org.androidannotations.logger.appender.FileAppender;
1214
import org.androidannotations.logger.appender.MessagerAppender;
1315

1416
public class LoggerContext {
1517

1618
public static final String LOG_FILE_OPTION = "logFile";
1719
public static final String LOG_LEVEL_OPTION = "logLevel";
20+
public static final String LOG_APPENDER_CONSOLE = "logAppenderConsole";
1821
private static LoggerContext INSTANCE = null;
1922
private static final Level DEFAULT_LEVEL = Level.DEBUG;
2023

@@ -34,7 +37,6 @@ public static LoggerContext getInstance() {
3437
}
3538

3639
LoggerContext() {
37-
// appenders.add(new ConsoleAppender());
3840
appenders.add(new FileAppender());
3941
appenders.add(new MessagerAppender());
4042
}
@@ -61,6 +63,7 @@ public void setProcessingEnv(ProcessingEnvironment processingEnv) {
6163
}
6264

6365
resolveLogLevel(processingEnv);
66+
addConsoleAppender(processingEnv);
6467
}
6568

6669
public void close() {
@@ -70,10 +73,20 @@ public void close() {
7073
}
7174

7275
private void resolveLogLevel(ProcessingEnvironment processingEnv) {
73-
if (processingEnv.getOptions().containsKey(LoggerContext.LOG_LEVEL_OPTION)) {
74-
Level logLevel = Level.parse(processingEnv.getOptions().get(LoggerContext.LOG_LEVEL_OPTION));
76+
Map<String, String> options = processingEnv.getOptions();
77+
if (options.containsKey(LOG_LEVEL_OPTION)) {
78+
Level logLevel = Level.parse(options.get(LOG_LEVEL_OPTION));
7579
setCurrentLevel(logLevel);
7680
}
7781
}
7882

83+
private void addConsoleAppender(ProcessingEnvironment processingEnv) {
84+
Map<String, String> options = processingEnv.getOptions();
85+
if (options.containsKey(LOG_APPENDER_CONSOLE)) {
86+
if (Boolean.parseBoolean(options.get(LOG_APPENDER_CONSOLE))) {
87+
appenders.add(new ConsoleAppender());
88+
}
89+
}
90+
}
91+
7992
}

0 commit comments

Comments
 (0)