[#4488] Relax bound on <T> for Table.getIdentity() from <? extends Number> to <?>
This commit is contained in:
parent
9cd9867f89
commit
95288c2654
@ -227,7 +227,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>
|
||||
*/
|
||||
@Override
|
||||
@Support
|
||||
void setReturning(Identity<R, ? extends Number> identity);
|
||||
void setReturning(Identity<R, ?> identity);
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
|
||||
@ -106,7 +106,7 @@ public interface StoreQuery<R extends Record> extends Query {
|
||||
* @see #getReturnedRecords()
|
||||
*/
|
||||
@Support
|
||||
void setReturning(Identity<R, ? extends Number> identity);
|
||||
void setReturning(Identity<R, ?> identity);
|
||||
|
||||
/**
|
||||
* Configure the <code>INSERT</code> or <code>UPDATE</code> statement to return a list of fields in
|
||||
|
||||
@ -133,7 +133,7 @@ public interface Table<R extends Record> extends TableLike<R> {
|
||||
* @return The table's <code>IDENTITY</code> information, or
|
||||
* <code>null</code>, if no such information is available.
|
||||
*/
|
||||
Identity<R, ? extends Number> getIdentity();
|
||||
Identity<R, ?> getIdentity();
|
||||
/**
|
||||
* Retrieve the table's primary key
|
||||
*
|
||||
|
||||
@ -469,7 +469,7 @@ public interface UpdateQuery<R extends Record> extends StoreQuery<R>, ConditionP
|
||||
*/
|
||||
@Override
|
||||
@Support({ FIREBIRD, POSTGRES })
|
||||
void setReturning(Identity<R, ? extends Number> identity);
|
||||
void setReturning(Identity<R, ?> identity);
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
|
||||
@ -103,7 +103,7 @@ abstract class AbstractDMLQuery<R extends Record> extends AbstractQuery {
|
||||
}
|
||||
|
||||
// @Override
|
||||
public final void setReturning(Identity<R, ? extends Number> identity) {
|
||||
public final void setReturning(Identity<R, ?> identity) {
|
||||
if (identity != null) {
|
||||
setReturning(identity.getField());
|
||||
}
|
||||
@ -424,8 +424,8 @@ abstract class AbstractDMLQuery<R extends Record> extends AbstractQuery {
|
||||
// This shouldn't be null, as relevant dialects should
|
||||
// return empty generated keys ResultSet
|
||||
if (table.getIdentity() != null) {
|
||||
final Field<Number> field = (Field<Number>) table.getIdentity().getField();
|
||||
Number[] ids = new Number[values.length];
|
||||
final Field<Object> field = (Field<Object>) table.getIdentity().getField();
|
||||
Object[] ids = new Object[values.length];
|
||||
for (int i = 0; i < values.length; i++) {
|
||||
ids[i] = field.getDataType().convert(values[i]);
|
||||
}
|
||||
@ -433,7 +433,7 @@ abstract class AbstractDMLQuery<R extends Record> extends AbstractQuery {
|
||||
// Only the IDENTITY value was requested. No need for an
|
||||
// additional query
|
||||
if (returning.size() == 1 && new Fields<Record>(returning).field(field) != null) {
|
||||
for (final Number id : ids) {
|
||||
for (final Object id : ids) {
|
||||
getReturnedRecords().add(
|
||||
Utils.newRecord(true, table, configuration)
|
||||
.operate(new RecordOperation<R, RuntimeException>() {
|
||||
|
||||
@ -274,7 +274,7 @@ abstract class AbstractTable<R extends Record> extends AbstractQueryPart impleme
|
||||
* Subclasses should override this method
|
||||
*/
|
||||
@Override
|
||||
public Identity<R, ? extends Number> getIdentity() {
|
||||
public Identity<R, ?> getIdentity() {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@ -108,7 +108,7 @@ public abstract class CustomTable<R extends TableRecord<R>> extends TableImpl<R>
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
@Override
|
||||
public Identity<R, ? extends Number> getIdentity() {
|
||||
public Identity<R, ?> getIdentity() {
|
||||
return super.getIdentity();
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user