Revision 2651 org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.lib/src/main/java/org/gvsig/tools/util/PropertiesSupportHelper.java

View differences:

PropertiesSupportHelper.java
7 7
import java.util.Map;
8 8
import org.gvsig.tools.ToolsLocator;
9 9
import org.gvsig.tools.dynobject.DynStruct;
10
import org.gvsig.tools.lang.CloneableUtils;
10 11
import org.gvsig.tools.observer.Observable;
11 12
import org.gvsig.tools.observer.ObservableHelper;
12 13
import org.gvsig.tools.observer.Observer;
......
79 80
 *
80 81
 * @author gvSIG Team
81 82
 */
82
public class PropertiesSupportHelper implements PropertiesSupport, Persistent, Observable {
83
public class PropertiesSupportHelper implements PropertiesSupport, Persistent, Observable, org.gvsig.tools.lang.Cloneable {
83 84

  
84 85
    private static final Logger LOGGER = LoggerFactory.getLogger(PropertiesSupportHelper.class);
85 86

  
......
90 91
    private ObservableHelper observableHelper;
91 92

  
92 93
    @Override
94
    public PropertiesSupportHelper clone() throws CloneNotSupportedException {
95
        PropertiesSupportHelper other = (PropertiesSupportHelper) super.clone();
96
        
97
        other.properties = (Map<String, Object>) new HashMap<>(this.properties);
98
        if (observableHelper!=null) {
99
            other.observableHelper = this.observableHelper.clone();
100
        }
101
        
102
        return other;
103
    }
104

  
105
    
106
    @Override
93 107
    public Object getProperty(String key) {
94 108
        return properties.get(key.toUpperCase());
95 109
    }

Also available in: Unified diff