package org.aksw.sparqlify.core.sql.expr.evaluation; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import org.aksw.sparqlify.algebra.sql.exprs2.S_Constant; import org.aksw.sparqlify.algebra.sql.exprs2.SqlExpr; import org.aksw.sparqlify.core.TypeToken; import org.aksw.sparqlify.core.cast.SqlValue; /** * * * * @author Claus Stadler <cstadler@informatik.uni-leipzig.de> * */ public class SqlExprEvaluator_ParseDate extends SqlExprEvaluator1 { public static final DateFormat defaultDateFormat = new SimpleDateFormat("yyyy-MM-dd"); @Override public SqlExpr eval(SqlExpr a) { SqlValue value = a.asConstant().getValue(); String str = "" + value.getValue(); Date val; try { val = defaultDateFormat.parse(str); } catch (Exception e){ return S_Constant.TYPE_ERROR; } S_Constant result = S_Constant.create(new SqlValue(TypeToken.Date, val)); return result; } }