@SuppressWarnings({"rawtypes"}) public String getPlaceholder(FieldType fieldType) { DataTypeForKv dataType = dataTypeProvider.getDataType(fieldType); KvValueConverter valueConverter = dataType.getKvValueConverter(); SqlBinding sqlBinding = valueConverter.getSqlBinding(); return sqlBinding.getPlaceholder(); }
@SuppressWarnings({"rawtypes"}) public Object getResultSetValue(FieldType fieldType, ResultSet resultSet, int index) throws SQLException { DataTypeForKv dataType = dataTypeProvider.getDataType(fieldType); KvValueConverter valueConverter = dataType.getKvValueConverter(); SqlBinding sqlBinding = valueConverter.getSqlBinding(); return sqlBinding.get(resultSet, index); }
@SuppressWarnings({"rawtypes", "unchecked"}) public void setPreparedStatementValue( PreparedStatement preparedStatement, int parameterIndex, FieldType fieldType, KvValue<?> value) throws SQLException { DataTypeForKv dataType = dataTypeProvider.getDataType(fieldType); KvValueConverter valueConverter = dataType.getKvValueConverter(); Converter converter = dataType.getConverter(); SqlBinding sqlBinding = valueConverter.getSqlBinding(); sqlBinding.set(preparedStatement, parameterIndex, converter.to(value)); }
@SuppressWarnings({"unchecked"}) public KvValue<?> getResultSetKvValue( FieldType fieldType, DataTypeForKv<?> dataTypeForKv, ResultSet resultSet, int index) throws SQLException { Object databaseValue = getResultSetValue( FieldType.from(dataTypeForKv.getKvValueConverter().getErasuredType()), resultSet, index); if (resultSet.wasNull()) { return null; } return ((Converter<Object, KvValue<?>>) dataTypeForKv.getConverter()).from(databaseValue); }
@SuppressWarnings("rawtypes") public String getSqlTypeName(FieldType fieldType) { DataTypeForKv dataType = dataTypeProvider.getDataType(fieldType); return dataType.getTypeName(); }