[#8619] Let Query subtypes extends RowCountQuery, which extends Publisher<Integer>

This commit is contained in:
Lukas Eder 2019-05-13 12:39:40 +02:00
parent af00823df5
commit b1d992e33b
38 changed files with 40 additions and 46 deletions

View File

@ -78,6 +78,6 @@ import org.jooq.impl.DSL;
*
* @author Lukas Eder
*/
public interface Block extends Query {
public interface Block extends RowCountQuery {
}

View File

@ -42,6 +42,6 @@ package org.jooq;
*
* @author Lukas Eder
*/
public interface DDLQuery extends Query {
public interface DDLQuery extends RowCountQuery {
}

View File

@ -59,6 +59,6 @@ import org.jooq.impl.DSL;
*
* @author Lukas Eder
*/
public interface Delete<R extends Record> extends Query {
public interface Delete<R extends Record> extends RowCountQuery {
}

View File

@ -59,6 +59,6 @@ import org.jooq.impl.DSL;
*
* @author Lukas Eder
*/
public interface Insert<R extends Record> extends Query {
public interface Insert<R extends Record> extends RowCountQuery {
}

View File

@ -63,6 +63,6 @@ import org.jooq.impl.DSL;
*
* @author Lukas Eder
*/
public interface Merge<R extends Record> extends Query {
public interface Merge<R extends Record> extends RowCountQuery {
}

View File

@ -49,7 +49,7 @@ import java.util.Map;
* @param <R> The record type of the table being modified
* @author Lukas Eder
*/
public interface StoreQuery<R extends Record> extends Query {
public interface StoreQuery<R extends Record> extends RowCountQuery {
/**
* Add values to the store statement

View File

@ -59,6 +59,6 @@ import org.jooq.impl.DSL;
*
* @author Lukas Eder
*/
public interface Update<R extends Record> extends Query {
public interface Update<R extends Record> extends RowCountQuery {
}

View File

@ -121,7 +121,7 @@ import org.jooq.tools.jdbc.JDBCUtils;
/**
* @author Lukas Eder
*/
abstract class AbstractDMLQuery<R extends Record> extends AbstractQuery {
abstract class AbstractDMLQuery<R extends Record> extends AbstractRowCountQuery {
/**
* Generated UID

View File

@ -79,7 +79,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class AlterIndexImpl extends AbstractQuery implements
final class AlterIndexImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for ALTER INDEX behaviour
AlterIndexOnStep,

View File

@ -56,7 +56,7 @@ import org.jooq.Schema;
/**
* @author Lukas Eder
*/
final class AlterSchemaImpl extends AbstractQuery implements
final class AlterSchemaImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for ALTER SCHEMA behaviour
AlterSchemaStep,

View File

@ -80,7 +80,7 @@ import org.jooq.Sequence;
/**
* @author Lukas Eder
*/
final class AlterSequenceImpl<T extends Number> extends AbstractQuery implements
final class AlterSequenceImpl<T extends Number> extends AbstractRowCountQuery implements
// Cascading interface implementations for AlterSequence behaviour
AlterSequenceStep<T>,

View File

@ -166,7 +166,7 @@ import org.jooq.Table;
* @author Lukas Eder
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
final class AlterTableImpl extends AbstractQuery implements
final class AlterTableImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for ALTER TABLE behaviour
AlterTableStep,

View File

@ -79,7 +79,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class AlterViewImpl extends AbstractQuery implements
final class AlterViewImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for ALTER VIEW behaviour
AlterViewStep,

View File

@ -88,7 +88,7 @@ import org.jooq.Statement;
/**
* @author Lukas Eder
*/
final class BlockImpl extends AbstractQuery implements Block {
final class BlockImpl extends AbstractRowCountQuery implements Block {
/**
* Generated UID

View File

@ -73,7 +73,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
class CommentOnImpl extends AbstractQuery
class CommentOnImpl extends AbstractRowCountQuery
implements
CommentOnIsStep,
CommentOnFinalStep {

View File

@ -89,7 +89,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class CreateIndexImpl extends AbstractQuery implements
final class CreateIndexImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE INDEX behaviour
CreateIndexStep,

View File

@ -69,7 +69,7 @@ import org.jooq.Schema;
/**
* @author Lukas Eder
*/
final class CreateSchemaImpl<R extends Record> extends AbstractQuery implements
final class CreateSchemaImpl<R extends Record> extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE SCHEMA behaviour
CreateSchemaFinalStep {

View File

@ -74,7 +74,7 @@ import org.jooq.Sequence;
/**
* @author Lukas Eder
*/
final class CreateSequenceImpl extends AbstractQuery implements
final class CreateSequenceImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE SEQUENCE behaviour
CreateSequenceFlagsStep {

View File

@ -126,7 +126,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class CreateTableImpl extends AbstractQuery implements
final class CreateTableImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE TABLE behaviour
CreateTableWithDataStep,

View File

@ -58,7 +58,7 @@ import org.jooq.conf.ParamType;
/**
* @author Lukas Eder
*/
final class CreateTypeImpl extends AbstractQuery implements
final class CreateTypeImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE TYPE behaviour
CreateTypeStep,

View File

@ -86,7 +86,7 @@ import org.jooq.conf.ParamType;
/**
* @author Lukas Eder
*/
final class CreateViewImpl<R extends Record> extends AbstractQuery implements
final class CreateViewImpl<R extends Record> extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE VIEW behaviour
CreateViewAsStep<R>,

View File

@ -90,7 +90,7 @@ import org.jooq.Table;
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
final class DeleteImpl<R extends Record>
extends AbstractDelegatingQuery<DeleteQueryImpl<R>>
extends AbstractDelegatingRowCountQuery<DeleteQueryImpl<R>>
implements
// Cascading interface implementations for Delete behaviour

View File

@ -74,7 +74,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class DropIndexImpl extends AbstractQuery implements
final class DropIndexImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for DROP INDEX behaviour
DropIndexOnStep {

View File

@ -71,7 +71,7 @@ import org.jooq.Schema;
/**
* @author Lukas Eder
*/
final class DropSchemaImpl extends AbstractQuery implements
final class DropSchemaImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for DROP VIEW behaviour
DropSchemaStep {

View File

@ -66,7 +66,7 @@ import org.jooq.Sequence;
/**
* @author Lukas Eder
*/
final class DropSequenceImpl extends AbstractQuery implements
final class DropSequenceImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for DROP SEQUENCE behaviour
DropSequenceFinalStep {

View File

@ -64,7 +64,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class DropTableImpl extends AbstractQuery implements
final class DropTableImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for DROP TABLE behaviour
DropTableStep {

View File

@ -54,7 +54,7 @@ import org.jooq.Name;
/**
* @author Lukas Eder
*/
final class DropTypeImpl extends AbstractQuery implements
final class DropTypeImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for CREATE TYPE behaviour
DropTypeStep {

View File

@ -64,7 +64,7 @@ import org.jooq.Table;
/**
* @author Lukas Eder
*/
final class DropViewImpl extends AbstractQuery implements
final class DropViewImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for DROP VIEW behaviour
DropViewFinalStep {

View File

@ -64,9 +64,10 @@ import org.jooq.User;
/**
* Grant privilege or privileges on a table to user or role.
*
* @author Timur Shaidullin
*/
final class GrantImpl extends AbstractQuery implements
final class GrantImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for Select behaviour
GrantOnStep,

View File

@ -123,7 +123,7 @@ import org.jooq.UniqueKey;
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
class InsertImpl<R extends Record, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22>
extends AbstractDelegatingQuery<InsertQuery<R>>
extends AbstractDelegatingRowCountQuery<InsertQuery<R>>
implements
// Cascading interface implementations for Insert behaviour

View File

@ -165,7 +165,7 @@ import org.jooq.tools.StringUtils;
* @author Lukas Eder
*/
@SuppressWarnings({ "unchecked", "rawtypes" })
final class MergeImpl<R extends Record, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> extends AbstractQuery
final class MergeImpl<R extends Record, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22> extends AbstractRowCountQuery
implements
// Cascading interface implementations for Merge behaviour

View File

@ -408,7 +408,6 @@ import org.jooq.QualifiedAsterisk;
import org.jooq.Queries;
import org.jooq.Query;
import org.jooq.QueryPart;
import org.jooq.QueryPartInternal;
import org.jooq.Record;
import org.jooq.ResultQuery;
import org.jooq.RevokeFromStep;
@ -10017,14 +10016,8 @@ final class ParserImpl implements Parser {
"FOR"
};
private static final Ignore IGNORE = Reflect.on(DSL.query("/* ignored */")).as(Ignore.class);
private static final Ignore IGNORE_NO_DELIMITER = Reflect.on(DSL.query("/* ignored */")).as(Ignore.class);
private static interface Ignore
extends
DDLQuery,
ResultQuery<Record>,
QueryPartInternal {}
private static final DDLQuery IGNORE = Reflect.on(DSL.query("/* ignored */")).as(DDLQuery.class);
private static final Query IGNORE_NO_DELIMITER = Reflect.on(DSL.query("/* ignored */")).as(Query.class);
}
final class ParserContext {

View File

@ -69,7 +69,7 @@ import org.jooq.User;
*
* @author Timur Shaidullin
*/
final class RevokeImpl extends AbstractQuery implements
final class RevokeImpl extends AbstractRowCountQuery implements
// Cascading interface implementations for Select behaviour
RevokeOnStep,

View File

@ -46,7 +46,7 @@ import org.jooq.QueryPartInternal;
/**
* @author Lukas Eder
*/
final class SQLQuery extends AbstractQuery {
final class SQLQuery extends AbstractRowCountQuery {
/**
* Generated UID

View File

@ -48,7 +48,7 @@ import org.jooq.Context;
/**
* @author Lukas Eder
*/
final class SetCatalog extends AbstractQuery {
final class SetCatalog extends AbstractRowCountQuery {
private static final long serialVersionUID = -3996953205762741746L;
private final Catalog catalog;

View File

@ -52,7 +52,7 @@ import org.jooq.Schema;
/**
* @author Lukas Eder
*/
final class SetSchema extends AbstractQuery {
final class SetSchema extends AbstractRowCountQuery {
private static final long serialVersionUID = -3996953205762741746L;
private final Schema schema;

View File

@ -61,7 +61,7 @@ import org.jooq.TruncateIdentityStep;
/**
* @author Lukas Eder
*/
final class TruncateImpl<R extends Record> extends AbstractQuery implements
final class TruncateImpl<R extends Record> extends AbstractRowCountQuery implements
// Cascading interface implementations for Truncate behaviour
TruncateIdentityStep<R> {

View File

@ -123,7 +123,7 @@ import org.jooq.UpdateWhereStep;
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
final class UpdateImpl<R extends Record>
extends AbstractDelegatingQuery<UpdateQuery<R>>
extends AbstractDelegatingRowCountQuery<UpdateQuery<R>>
implements
// Cascading interface implementations for Update behaviour