Revision 46105 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.api/src/main/java/org/gvsig/expressionevaluator/ExpressionBuilder.java

View differences:

ExpressionBuilder.java
152 152
        public void accept(Visitor visitor, VisitorFilter filter);
153 153
    }
154 154
        
155
    public interface Value extends Visitable, PropertiesSupport {
155
    public interface Value extends Visitable, PropertiesSupport, org.gvsig.tools.lang.Cloneable {
156 156
        public String toString(Formatter<Value> formatter);
157 157
        public void replace(Value target, Value replacement);
158 158
        public void copyPropertiesFrom(PropertiesSupport properties);
159

  
160
        @Override
161
        public Value clone() throws CloneNotSupportedException;
162
        
159 163
    }
160 164

  
161 165
    public interface Group extends Value {
......
212 216

  
213 217
    public abstract class AbstractValue implements Value {
214 218

  
215
        protected final PropertiesSupport properties;
219
        protected PropertiesSupportHelper properties;
216 220
        
217 221
        protected AbstractValue() {
218 222
            this.properties = new PropertiesSupportHelper();
219 223
        }
224

  
225
        @Override
226
        public Value clone() throws CloneNotSupportedException {
227
            AbstractValue other = (AbstractValue) super.clone();
228
            other.properties = properties.clone();
229
            return other;
230
        }
220 231
        
232
        
221 233
        @Override
222 234
        public void copyPropertiesFrom(PropertiesSupport properties) {
223 235
            for (Map.Entry<String, Object> entry : properties.getProperties().entrySet()) {

Also available in: Unified diff