Revision 2602 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/dynobject/DynObject.java

View differences:

DynObject.java
27 27
 */
28 28
package org.gvsig.tools.dynobject;
29 29

  
30
import org.gvsig.tools.ToolsLocator;
30 31
import org.gvsig.tools.dynobject.exception.DynFieldNotFoundException;
31 32
import org.gvsig.tools.dynobject.exception.DynMethodException;
32 33

  
......
36 37
 */
37 38
public interface DynObject {
38 39

  
39
	DynClass getDynClass();
40
    public static DynObject clone(DynObject obj) throws CloneNotSupportedException {
41
        DynObjectManager manager = ToolsLocator.getDynObjectManager();
42
        DynObject other = manager.createDynObject(obj.getDynClass());
43
        manager.copy(obj, other);
44
        return other;
45
    }
40 46

  
47
    DynClass getDynClass();
48

  
41 49
    void implement(DynClass dynClass);
42 50

  
43 51
    void delegate(DynObject dynObject);
44 52

  
45
	Object getDynValue(String name)  throws DynFieldNotFoundException ;
53
    Object getDynValue(String name) throws DynFieldNotFoundException;
46 54

  
47
	void setDynValue(String name, Object value)  throws DynFieldNotFoundException ;
55
    void setDynValue(String name, Object value) throws DynFieldNotFoundException;
48 56

  
49
	boolean hasDynValue(String name);
57
    boolean hasDynValue(String name);
50 58

  
51
	Object invokeDynMethod(String name, Object[] args) throws DynMethodException;
59
    Object invokeDynMethod(String name, Object[] args) throws DynMethodException;
52 60

  
53
	Object invokeDynMethod(int code, Object[] args) throws DynMethodException;
61
    Object invokeDynMethod(int code, Object[] args) throws DynMethodException;
54 62

  
55
	void clear();
63
    void clear();
56 64
}

Also available in: Unified diff