1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package ch.qos.logback.core.joran.util.beans;
16
17 import java.lang.reflect.Method;
18 import java.util.Collections;
19 import java.util.Map;
20
21
22
23
24
25
26
27
28
29
30 public class BeanDescription {
31
32 private final Class<?> clazz;
33
34 private final Map<String, Method> propertyNameToGetter;
35
36 private final Map<String, Method> propertyNameToSetter;
37
38 private final Map<String, Method> propertyNameToAdder;
39
40
41
42
43
44
45
46
47
48
49
50 protected BeanDescription(Class<?> clazz, Map<String, Method> propertyNameToGetter,
51 Map<String, Method> propertyNameToSetter, Map<String, Method> propertyNameToAdder) {
52 this.clazz = clazz;
53 this.propertyNameToGetter = Collections.unmodifiableMap(propertyNameToGetter);
54 this.propertyNameToSetter = Collections.unmodifiableMap(propertyNameToSetter);
55 this.propertyNameToAdder = Collections.unmodifiableMap(propertyNameToAdder);
56 }
57
58 public Class<?> getClazz() {
59 return clazz;
60 }
61
62 public Map<String, Method> getPropertyNameToGetter() {
63 return propertyNameToGetter;
64 }
65
66 public Map<String, Method> getPropertyNameToSetter() {
67 return propertyNameToSetter;
68 }
69
70 public Method getGetter(String propertyName) {
71 return propertyNameToGetter.get(propertyName);
72 }
73
74 public Method getSetter(String propertyName) {
75 return propertyNameToSetter.get(propertyName);
76 }
77
78 public Map<String, Method> getPropertyNameToAdder() {
79 return propertyNameToAdder;
80 }
81
82 public Method getAdder(String propertyName) {
83 return propertyNameToAdder.get(propertyName);
84 }
85
86 }