Revision 44790 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultExpressionBuilder.java

View differences:

DefaultExpressionBuilder.java
22 22
import org.gvsig.expressionevaluator.ExpressionUtils;
23 23
import org.gvsig.expressionevaluator.Formatter;
24 24
import org.gvsig.expressionevaluator.ReprMethod;
25
import org.gvsig.tools.ToolsLocator;
26
import org.gvsig.tools.dataTypes.Coercion;
27
import org.gvsig.tools.dataTypes.DataTypesManager;
25 28

  
26 29
@SuppressWarnings({"UseSpecificCatch" ,"OverridableMethodCallInConstructor"})
27 30
public class DefaultExpressionBuilder implements ExpressionBuilder {
......
791 794
    }
792 795

  
793 796
    @Override
797
    public Constant constant(Object value, Class theClass) {
798
      try {
799
        DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager();
800
        Coercion coercion = dataTypeManager.getDataType(theClass).getCoercion();
801
        return this.constant(coercion.coerce(value));
802
      } catch (Exception ex) {
803
        throw new RuntimeException("Can't coerce value ("+Objects.toString(value)+") to "+theClass.getSimpleName()+".", ex);
804
      }
805
    }
806

  
807
    @Override
808
    public Constant constant(Object value, int type) {
809
      try {
810
        DataTypesManager dataTypeManager = ToolsLocator.getDataTypesManager();
811
        Coercion coercion = dataTypeManager.getCoercion(type);
812
        return this.constant(coercion.coerce(value));
813
      } catch (Exception ex) {
814
        throw new RuntimeException("Can't coerce value ("+Objects.toString(value)+") to "+type+".", ex);
815
      }
816
    }
817
  
818
    @Override
794 819
    public Group group(Value value) {
795 820
        return new GroupBase(value);
796 821
    }

Also available in: Unified diff