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 java.io.IOException;
20 import java.io.InputStream;
21
22 import org.apache.logging.log4j.core.LoggerContext;
23 import org.apache.logging.log4j.core.config.Configuration;
24 import org.apache.logging.log4j.core.config.ConfigurationException;
25 import org.apache.logging.log4j.core.config.ConfigurationFactory;
26 import org.apache.logging.log4j.core.config.ConfigurationSource;
27 import org.apache.logging.log4j.core.config.builder.api.ConfigurationBuilder;
28 import org.apache.logging.log4j.core.config.builder.impl.BuiltConfiguration;
29
30
31
32
33
34
35
36
37
38 public class Log4j1ConfigurationFactory extends ConfigurationFactory {
39
40 private static final String[] SUFFIXES = { ".properties" };
41
42 @Override
43 public Configuration getConfiguration(final LoggerContext loggerContext, final ConfigurationSource source) {
44 final ConfigurationBuilder<BuiltConfiguration> builder;
45 try (final InputStream configStream = source.getInputStream()) {
46 builder = new Log4j1ConfigurationParser().buildConfigurationBuilder(configStream);
47 } catch (final IOException e) {
48 throw new ConfigurationException("Unable to load " + source, e);
49 }
50 return builder.build();
51 }
52
53 @Override
54 protected String[] getSupportedTypes() {
55 return SUFFIXES;
56 }
57
58 }