1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.log4j.config;
18
19 import org.apache.log4j.builders.BuilderManager;
20 import org.apache.logging.log4j.core.LoggerContext;
21 import org.apache.logging.log4j.core.config.AbstractConfiguration;
22 import org.apache.logging.log4j.core.config.Configuration;
23 import org.apache.logging.log4j.core.config.ConfigurationSource;
24 import org.apache.logging.log4j.core.config.Reconfigurable;
25
26
27
28
29 public class Log4j1Configuration extends AbstractConfiguration implements Reconfigurable {
30
31 public static final String MONITOR_INTERVAL = "log4j1.monitorInterval";
32 public static final String APPENDER_REF_TAG = "appender-ref";
33 public static final String THRESHOLD_PARAM = "Threshold";
34
35 public static final String INHERITED = "inherited";
36
37 public static final String NULL = "null";
38
39 protected final BuilderManager manager;
40
41 public Log4j1Configuration(final LoggerContext loggerContext, final ConfigurationSource source,
42 int monitorIntervalSeconds) {
43 super(loggerContext, source);
44 manager = new BuilderManager();
45 initializeWatchers(this, source, monitorIntervalSeconds);
46 }
47
48 public BuilderManager getBuilderManager() {
49 return manager;
50 }
51
52
53
54
55 @Override
56 public void initialize() {
57 getStrSubstitutor().setConfiguration(this);
58 getConfigurationStrSubstitutor().setConfiguration(this);
59 super.getScheduler().start();
60 doConfigure();
61 setState(State.INITIALIZED);
62 LOGGER.debug("Configuration {} initialized", this);
63 }
64
65 @Override
66 public Configuration reconfigure() {
67 return null;
68 }
69 }