Revision 24261 branches/v2_0_0_prep/libraries/libTools/src/org/gvsig/tools/extensionpoint/impl/DefaultExtensionPointManager.java
DefaultExtensionPointManager.java | ||
---|---|---|
15 | 15 |
|
16 | 16 |
public class DefaultExtensionPointManager implements ExtensionPointManager { |
17 | 17 |
|
18 |
private static DefaultExtensionPointManager manager = null; |
|
19 |
|
|
18 | 20 |
private Map extensionsPoints; |
19 | 21 |
|
20 | 22 |
public DefaultExtensionPointManager() { |
21 | 23 |
this.extensionsPoints = new HashMap(); |
22 | 24 |
} |
23 | 25 |
|
26 |
public static DefaultExtensionPointManager getManager() { |
|
27 |
if (manager == null) { |
|
28 |
manager = new DefaultExtensionPointManager(); |
|
29 |
} |
|
30 |
return manager; |
|
31 |
} |
|
32 |
|
|
24 | 33 |
public Object create(Class cls) throws InstantiationException, |
25 | 34 |
IllegalAccessException { |
26 | 35 |
Object obj = null; |
... | ... | |
80 | 89 |
return true; |
81 | 90 |
} |
82 | 91 |
|
83 |
public ExtensionPoint add(String name, String description) { |
|
92 |
public synchronized ExtensionPoint add(String name, String description) {
|
|
84 | 93 |
ExtensionPoint ep = (ExtensionPoint) this.extensionsPoints.get(name); |
85 | 94 |
if (ep == null) { |
86 | 95 |
ep = new DefaultExtensionPoint(this, name, description); |
... | ... | |
89 | 98 |
return ep; |
90 | 99 |
} |
91 | 100 |
|
101 |
public ExtensionPoint add(String name) { |
|
102 |
return add(name, null); |
|
103 |
} |
|
104 |
|
|
92 | 105 |
public ExtensionPoint.Extension add(String name, String description, |
93 | 106 |
String extName, |
94 | 107 |
String extDescription, Class extension) { |
Also available in: Unified diff