1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.settings4j.objectresolver;
21
22 import org.settings4j.ContentResolver;
23 import org.settings4j.ObjectResolver;
24
25
26
27
28
29
30
31
32
33 public class UnionObjectResolver implements ObjectResolver {
34
35 private ObjectResolver[] objectResolvers = new ObjectResolver[0];
36
37 @Override
38 public void addObjectResolver(final ObjectResolver objectResolver) {
39
40 final ObjectResolver[] objectResolversNew = new ObjectResolver[this.objectResolvers.length + 1];
41 for (int i = 0; i < this.objectResolvers.length; i++) {
42 objectResolversNew[i] = this.objectResolvers[i];
43 }
44 objectResolversNew[this.objectResolvers.length] = objectResolver;
45
46 this.objectResolvers = objectResolversNew;
47 }
48
49 @Override
50 public Object getObject(final String key, final ContentResolver contentResolver) {
51
52 Object result = null;
53 for (int i = 0; i < this.objectResolvers.length; i++) {
54 result = this.objectResolvers[i].getObject(key, contentResolver);
55 if (result != null) {
56 return result;
57 }
58 }
59 return result;
60 }
61
62 }