1
2
3
4
5
6
7
8
9
10 package ch.qos.logback.core;
11
12 import java.util.HashMap;
13 import java.util.Map;
14
15 import ch.qos.logback.core.status.StatusManager;
16
17 public class ContextBase implements Context {
18
19 private String name;
20 private StatusManager sm = new BasicStatusManager();
21
22
23
24 Map<String, String> propertyMap = new HashMap<String, String>();
25 Map<String, Object> objectMap = new HashMap<String, Object>();
26
27 public StatusManager getStatusManager() {
28 return sm;
29 }
30
31
32
33
34
35
36
37
38
39
40
41
42 public void setStatusManager(StatusManager statusManager) {
43
44 if (sm == null) {
45 throw new IllegalArgumentException("null StatusManager not allowed");
46 }
47 this.sm = statusManager;
48 }
49
50 public Map<String, String> getCopyOfPropertyMap() {
51 return new HashMap<String, String>(propertyMap);
52 }
53
54 public void putProperty(String key, String val) {
55 this.propertyMap.put(key, val);
56 }
57
58 public String getProperty(String key) {
59 return (String) this.propertyMap.get(key);
60 }
61
62 public Object getObject(String key) {
63 return objectMap.get(key);
64 }
65
66 public void putObject(String key, Object value) {
67 objectMap.put(key, value);
68 }
69
70 public String getName() {
71 return name;
72 }
73
74
75
76
77
78
79
80
81
82 public void setName(String name) throws IllegalStateException {
83 if (name != null && name.equals(this.name)) {
84 return;
85 }
86 if (this.name == null
87 || CoreConstants.DEFAULT_CONTEXT_NAME.equals(this.name)) {
88 this.name = name;
89 } else {
90 throw new IllegalStateException("Context has been already given a name");
91 }
92 }
93 }