DomConfigurableContainer.java
biz/hammurapi/config/DomConfigurableContainer.java
Violations
Inspector |
Message |
Severity |
Location |
Java Inspector 048 |
Copyrights information should be present in each file. |
1 |
|
Java Inspector 089 |
Type documentation is too short. It is only 2 words. Should be at least 3 words. |
2 |
35:1
|
Java Inspector 089 |
Undocumented constructor |
2 |
36:9
|
Java Inspector 089 |
Undocumented method |
2 |
40:9
|
Java Inspector 089 |
Undocumented method |
2 |
42:9
|
Java Inspector 089 |
Undocumented method |
2 |
47:41
|
Java Inspector 051 |
It is good practice to call in any case super() in a constructor. |
3 |
36:9
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23package biz.hammurapi.config;
24
25
26import org.w3c.dom.Element;
27import org.w3c.dom.Node;
28import org.w3c.dom.NodeList;
29
30
31
32
33
34
35public abstract class DomConfigurableContainer extends GenericContainer implements DomConfigurable {
36 public DomConfigurableContainer() {
37
38 }
39
40 protected abstract String getComponentName(Node node);
41
42 public void configure(Node configNode, final Context context, ClassLoader classLoader) throws ConfigurationException {
43 DomConfigFactory factory=new DomConfigFactory(
44 classLoader,
45 new Context() {
46
47 public Object get(String name) {
48 Object ret=DomConfigurableContainer.this.get(name);
49 if (ret!=null) {
50 return ret;
51 }
52 return context==null ? null : context.get(name);
53 }
54
55 });
56
57 NodeList children=configNode.getChildNodes();
58 for (int i=0, length=children.getLength(); i<length; i++) {
59 Node child=children.item(i);
60 if (child instanceof Element) {
61 addComponent(getComponentName(child), factory.create(child));
62 }
63 }
64 }
65}
66