1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.logging.log4j.spi;
18
19 import java.net.URL;
20 import java.util.Properties;
21
22
23
24
25 public class Provider {
26 private static final Integer DEFAULT_PRIORITY = Integer.valueOf(-1);
27 private static final String FACTORY_PRIORITY = "FactoryPriority";
28 private static final String THREAD_CONTEXT_MAP = "ThreadContextMap";
29 private static final String LOGGER_CONTEXT_FACTORY = "LoggerContextFactory";
30
31 private final Integer priority;
32 private final String className;
33 private final String threadContextMap;
34 private final URL url;
35
36 public Provider(final Properties props, final URL url) {
37 this.url = url;
38 final String weight = props.getProperty(FACTORY_PRIORITY);
39 priority = weight == null ? DEFAULT_PRIORITY : Integer.valueOf(weight);
40 className = props.getProperty(LOGGER_CONTEXT_FACTORY);
41 threadContextMap = props.getProperty(THREAD_CONTEXT_MAP);
42 }
43
44 public Integer getPriority() {
45 return priority;
46 }
47
48 public String getClassName() {
49 return className;
50 }
51
52 public String getThreadContextMap() {
53 return threadContextMap;
54 }
55
56 public URL getURL() {
57 return url;
58 }
59 }