@SuppressWarnings("unchecked")
  @Override
  public void set(
      PreparedStatement st, Object value, int index, SharedSessionContractImplementor session)
      throws HibernateException, SQLException {

    final Object param = value == null ? null : columnMapper.toNonNullValue((T) value);
    columnMapper.getHibernateType().nullSafeSet(st, param, index, session);
  }