in catalogs/catalog-jdbc-postgresql/src/main/java/org/apache/gravitino/catalog/postgresql/converter/PostgreSqlTypeConverter.java [45:84]
public Type toGravitino(JdbcTypeBean typeBean) {
String typeName = typeBean.getTypeName().toLowerCase();
if (typeName.startsWith(JDBC_ARRAY_PREFIX)) {
return toGravitinoArrayType(typeName);
}
switch (typeName) {
case BOOL:
return Types.BooleanType.get();
case INT_2:
return Types.ShortType.get();
case INT_4:
return Types.IntegerType.get();
case INT_8:
return Types.LongType.get();
case FLOAT_4:
return Types.FloatType.get();
case FLOAT_8:
return Types.DoubleType.get();
case DATE:
return Types.DateType.get();
case TIME:
return Types.TimeType.get();
case TIMESTAMP:
return Types.TimestampType.withoutTimeZone();
case TIMESTAMP_TZ:
return Types.TimestampType.withTimeZone();
case NUMERIC:
return Types.DecimalType.of(typeBean.getColumnSize(), typeBean.getScale());
case VARCHAR:
return Types.VarCharType.of(typeBean.getColumnSize());
case BPCHAR:
return Types.FixedCharType.of(typeBean.getColumnSize());
case TEXT:
return Types.StringType.get();
case BYTEA:
return Types.BinaryType.get();
default:
return Types.ExternalType.of(typeBean.getTypeName());
}
}