Revision 4676 trunk/libraries/libIverUtiles/src/com/iver/utiles/extensionPoints/ExtensionPoint.java

View differences:

ExtensionPoint.java
2 2

  
3 3
import java.lang.reflect.InvocationTargetException;
4 4
import java.util.LinkedHashMap;
5
import java.util.Map;
5 6

  
6 7

  
7 8
/**
......
37 38
	 * <br>
38 39
	 * @param extensionPointName Nombre del punto de extension.
39 40
	 */
40
	ExtensionPoint(String extensionPointName) {
41
	public ExtensionPoint(String extensionPointName) {
41 42
		this.name = extensionPointName;
42 43
	}
43 44
	
......
47 48
	 * @param extensionPointName Nombre del punto de extension
48 49
	 * @param description Descripcion del punto de extension
49 50
	 */
50
	ExtensionPoint(String extensionPointName, String description) {
51
	public ExtensionPoint(String extensionPointName, String description) {
51 52
		this.name = extensionPointName;
52 53
		this.description = description;
53 54
	}
......
140 141
			return ((IExtensionBuilder)extension).create(args);
141 142
		}
142 143
		return ExtensionBuilder.create((Class) extension, args);
144
	}	
145
	
146
	public Object create(String name, Map args) throws SecurityException, NoSuchMethodException, IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException {
147
		Object extension = this.get(name);
148
		
149
		if( extension instanceof IExtensionBuilder ) {
150
			return ((IExtensionBuilder)extension).create(args);
151
		}
152
		return ExtensionBuilder.create((Class) extension, args);
143 153
	}
144 154
}

Also available in: Unified diff