1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.core.selector;
18
19 import org.apache.logging.log4j.core.LoggerContext;
20 import org.apache.logging.log4j.core.impl.ContextAnchor;
21
22 import java.net.URI;
23 import java.util.ArrayList;
24 import java.util.Collections;
25 import java.util.List;
26
27
28
29
30 public class BasicContextSelector implements ContextSelector {
31
32 private static final LoggerContext CONTEXT = new LoggerContext("Default");
33
34 public LoggerContext getContext(final String fqcn, final ClassLoader loader, final boolean currentContext) {
35
36 final LoggerContext ctx = ContextAnchor.THREAD_CONTEXT.get();
37 return ctx != null ? ctx : CONTEXT;
38 }
39
40
41 public LoggerContext getContext(final String fqcn, final ClassLoader loader, final boolean currentContext,
42 URI configLocation) {
43
44 final LoggerContext ctx = ContextAnchor.THREAD_CONTEXT.get();
45 return ctx != null ? ctx : CONTEXT;
46 }
47
48 public LoggerContext locateContext(final String name, final String configLocation) {
49 return CONTEXT;
50 }
51
52 public void removeContext(final LoggerContext context) {
53
54 }
55
56 public List<LoggerContext> getLoggerContexts() {
57 final List<LoggerContext> list = new ArrayList<LoggerContext>();
58 list.add(CONTEXT);
59 return Collections.unmodifiableList(list);
60 }
61
62 }