package org.krakenapps.sqlengine.bdb; import org.krakenapps.sqlparser.ast.DataType; import org.krakenapps.sqlparser.ast.DateTimeDataType; import org.krakenapps.sqlparser.ast.IntegerDataType; import org.krakenapps.sqlparser.ast.StringDataType; public class DataTypeSerializer { public static DataType deserialize(String s) { if (s.startsWith("CHAR")) { int p = s.indexOf(')'); int len = Integer.valueOf(s.substring(5, p)); return new StringDataType(len); } else if (s.equals("INT")) { return new IntegerDataType(); } else if (s.equals("DATETIME")) { return new DateTimeDataType(); } throw new UnsupportedOperationException("not supported data type: " + s); } public static String serialize(DataType type) { return type.toString(); } }