1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.slf4j;
18
19 import java.net.URI;
20
21 import org.apache.logging.log4j.spi.LoggerContext;
22 import org.apache.logging.log4j.spi.LoggerContextFactory;
23
24
25
26
27 public class SLF4JLoggerContextFactory implements LoggerContextFactory {
28 private static LoggerContext context = new SLF4JLoggerContext();
29
30 public SLF4JLoggerContextFactory() {
31
32 boolean misconfigured = false;
33 try {
34 Class.forName("org.slf4j.helpers.Log4jLoggerFactory");
35 misconfigured = true;
36 } catch (final ClassNotFoundException classNotFoundIsGood) {
37
38 }
39 if (misconfigured) {
40 throw new IllegalStateException("slf4j-impl jar is mutually exclusive with log4j-to-slf4j jar "
41 + "(the first routes calls from SLF4J to Log4j, the second from Log4j to SLF4J)");
42 }
43 }
44
45 @Override
46 public LoggerContext getContext(final String fqcn, final ClassLoader loader, final boolean currentContext) {
47 return context;
48 }
49
50 @Override
51 public LoggerContext getContext(final String fqcn, final ClassLoader loader, final boolean currentContext,
52 final URI configLocation) {
53 return context;
54 }
55
56 @Override
57 public void removeContext(final LoggerContext context) {
58 }
59 }