private String getSqlType(Field<?> field, Configuration conf) { if (field.getConverter() != null) { Class<?> fieldType = field.getDataType().getType(); if (fieldType.equals(ScalarArray.class)) { return PostgreSQLScalarTypeToSqlType.ARRAY_TYPE; } if (fieldType.equals(ScalarMongoObjectId.class)) { return PostgreSQLScalarTypeToSqlType.FULL_MONGO_OBJECT_ID_TYPE; } if (fieldType.equals(ScalarMongoTimestamp.class)) { return PostgreSQLScalarTypeToSqlType.FULL_MONGO_TIMESTAMP_TYPE; } } return field.getDataType().getTypeName(conf); }
@Override public final Class<T> getType() { return dataType.getType(); }
@Override public final Class<T> getType() { return type.getType(); }
public Class<T> getType() { return dataType.getType(); }
@Override public final Class<T> getType() { return type.getType(); }
@Override public final Class<T> getType() { return dataType.getType(); }
public DefaultDataType(SQLDialect dialect, DataType<T> sqlDataType, String typeName, String castTypeName) { this(dialect, sqlDataType, sqlDataType.getType(), typeName, castTypeName, 0, 0, 0, true, false); }
public DefaultDataType(SQLDialect dialect, DataType<T> sqlDataType, String typeName) { this(dialect, sqlDataType, sqlDataType.getType(), typeName, typeName, 0, 0, 0, true, false); }
private DataType<?> mapJavaTimeTypes(DataType<?> dataType) { DataType<?> result = dataType; // [#4429] [#5713] This logic should be implemented in Configuration if (dataType.isDateTime() && generateJavaTimeTypes) { if (dataType.getType() == Date.class) result = SQLDataType.LOCALDATE; else if (dataType.getType() == Time.class) result = SQLDataType.LOCALTIME; else if (dataType.getType() == Timestamp.class) result = SQLDataType.LOCALDATETIME; } return result; }
/** * Convert a type name (using precision and scale) into a Java class */ public static final Class<?> getType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException { return getDataType(dialect, t, p, s).getType(); }
private static Object[] enumConstants(DataType<? extends EnumType> type) { Object[] enums = type.getType().getEnumConstants(); if (enums == null) throw new DataTypeException("EnumType must be a Java enum"); return enums; }
/** * Convert a type name (using precision and scale) into a Java class */ public static Class<?> getType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException { return getDataType(dialect, t, p, s).getType(); }
@Override public <T> List<T> fetchValues(ResultSet rs, DataType<T> type) { return fetch(rs).getValues(0, type.getType()); }
/** * Convert a type name (using precision and scale) into a Java class */ public static final DataType<?> getDataType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException { DataType<?> result = DefaultDataType.getDataType(dialect, t); if (result.getType() == BigDecimal.class) result = DefaultDataType.getDataType(dialect, getNumericClass(p, s)); return result; }
/** * Convert a type name (using precision and scale) into a Java class */ public static DataType<?> getDataType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException { DataType<?> result = DefaultDataType.getDataType(dialect, DefaultDataType.normalise(t)); if (result.getType() == BigDecimal.class) { result = DefaultDataType.getDataType(dialect, getNumericClass(p, s)); } return result; }
public DefaultDataType(SQLDialect dialect, DataType<T> sqlDataType, String typeName) { this(dialect, sqlDataType, sqlDataType.getType(), typeName, typeName, sqlDataType.precision(), sqlDataType.scale(), sqlDataType.length(), sqlDataType.nullability(), sqlDataType.defaultValue()); }
public DefaultDataType(SQLDialect dialect, DataType<T> sqlDataType, String typeName, String castTypeName) { this(dialect, sqlDataType, sqlDataType.getType(), typeName, castTypeName, sqlDataType.precision(), sqlDataType.scale(), sqlDataType.length(), sqlDataType.nullability(), sqlDataType.defaultValue()); }
public static final DataType<?> getDataType(Database db, String t, int p, int s) { if (db.getForceIntegerTypesOnZeroScaleDecimals()) return DefaultDataType.getDataType(db.getDialect(), t, p, s); DataType<?> result = DefaultDataType.getDataType(db.getDialect(), t); if (result.getType() == BigDecimal.class && s == 0) DefaultDataType.getDataType(db.getDialect(), BigInteger.class); return result; }