[#1887] Remove all deprecated code

- Improved AbstractDelegatingQuery type hierarchy
- Removed QueryPartInternal.getSQL() methods
This commit is contained in:
Lukas Eder 2012-10-27 20:20:07 +02:00
parent 2303947503
commit 113cb2c215
9 changed files with 99 additions and 254 deletions

View File

@ -527,7 +527,7 @@ extends BaseTest<A, AP, B, S, B2S, BS, L, X, DATE, BOOL, D, T, U, I, IPK, T725,
context.statement().setInt(context.nextIndex(), 2);
}
catch (SQLException e) {
throw translate(getSQL(), e);
throw translate(null, e);
}
}
};
@ -557,7 +557,7 @@ extends BaseTest<A, AP, B, S, B2S, BS, L, X, DATE, BOOL, D, T, U, I, IPK, T725,
context.statement().setInt(context.nextIndex(), 3);
}
catch (SQLException e) {
throw translate(getSQL(), e);
throw translate(null, e);
}
}
};

View File

@ -60,30 +60,6 @@ public interface QueryPartInternal extends QueryPart {
*/
void toSQL(RenderContext context);
/**
* Retrieve the SQL that will be rendered by this {@link QueryPart}
* <p>
* This method is exposed publicly in {@link Query#getSQL()}
*
* @deprecated - 2.5.0 [#1544] - This method will be removed from the
* internal API. Do not reuse it, except through
* {@link Query#getSQL()}
*/
@Deprecated
String getSQL();
/**
* Retrieve the SQL that will be rendered by this {@link QueryPart}
* <p>
* This method is exposed publicly in {@link Query#getSQL(boolean)}
*
* @deprecated - 2.5.0 [#1544] - This method will be removed from the
* internal API. Do not reuse it, except through
* {@link Query#getSQL(boolean)}
*/
@Deprecated
String getSQL(boolean inline);
/**
* Retrieve the bind values that will be bound by this {@link QueryPart}
* <p>

View File

@ -38,13 +38,13 @@ package org.jooq.impl;
import org.jooq.AttachableInternal;
import org.jooq.BindContext;
import org.jooq.Configuration;
import org.jooq.QueryPart;
import org.jooq.Query;
import org.jooq.RenderContext;
/**
* @author Lukas Eder
*/
abstract class AbstractDelegatingQueryPart<Q extends QueryPart> extends AbstractQueryPart {
abstract class AbstractDelegatingQuery<Q extends Query> extends AbstractQueryPart implements Query {
/**
* Generated UID
@ -52,12 +52,12 @@ abstract class AbstractDelegatingQueryPart<Q extends QueryPart> extends Abstract
private static final long serialVersionUID = 6710523592699040547L;
private final Q delegate;
AbstractDelegatingQueryPart(Q delegate) {
AbstractDelegatingQuery(Q delegate) {
this.delegate = delegate;
}
@Override
public Configuration getConfiguration() {
public final Configuration getConfiguration() {
if (delegate instanceof AttachableInternal) {
return ((AttachableInternal) delegate).getConfiguration();
}
@ -75,6 +75,65 @@ abstract class AbstractDelegatingQueryPart<Q extends QueryPart> extends Abstract
context.bind(delegate);
}
@Override
public final String getSQL() {
return delegate.getSQL();
}
@Override
public final String getSQL(boolean inline) {
return delegate.getSQL(inline);
}
@Override
public final void attach(Configuration configuration) {
delegate.attach(configuration);
}
@Override
public final int execute() {
return delegate.execute();
}
@Override
public final boolean isExecutable() {
return delegate.isExecutable();
}
@SuppressWarnings("unchecked")
@Override
public final Q bind(String param, Object value) {
return (Q) delegate.bind(param, value);
}
@SuppressWarnings("unchecked")
@Override
public final Q bind(int index, Object value) {
return (Q) delegate.bind(index, value);
}
@SuppressWarnings("unchecked")
@Override
public final Q queryTimeout(int timeout) {
return (Q) delegate.queryTimeout(timeout);
}
@SuppressWarnings("unchecked")
@Override
public final Q keepStatement(boolean keepStatement) {
return (Q) delegate.keepStatement(keepStatement);
}
@Override
public final void close() {
delegate.close();
}
@Override
public final void cancel() {
delegate.cancel();
}
final Q getDelegate() {
return delegate;
}

View File

@ -40,7 +40,6 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import org.jooq.Configuration;
import org.jooq.Converter;
import org.jooq.Cursor;
import org.jooq.Field;
@ -63,7 +62,7 @@ import org.jooq.Table;
* @author Lukas Eder
*/
abstract class AbstractDelegatingSelect<R extends Record>
extends AbstractDelegatingQueryPart<Select<R>>
extends AbstractDelegatingQuery<Select<R>>
implements Select<R> {
/**
@ -75,41 +74,6 @@ abstract class AbstractDelegatingSelect<R extends Record>
super(query);
}
@Override
public final void attach(Configuration configuration) {
getDelegate().attach(configuration);
}
@Override
public final ResultQuery<R> bind(String param, Object value) {
return getDelegate().bind(param, value);
}
@Override
public final ResultQuery<R> bind(int index, Object value) {
return getDelegate().bind(index, value);
}
@Override
public final ResultQuery<R> queryTimeout(int timeout) {
return getDelegate().queryTimeout(timeout);
}
@Override
public final ResultQuery<R> keepStatement(boolean keepStatement) {
return getDelegate().keepStatement(keepStatement);
}
@Override
public final void close() {
getDelegate().close();
}
@Override
public final void cancel() {
getDelegate().cancel();
}
@Override
public final ResultQuery<R> maxRows(int rows) {
return getDelegate().maxRows(rows);
@ -400,16 +364,6 @@ abstract class AbstractDelegatingSelect<R extends Record>
return getDelegate().fetchLater(executor);
}
@Override
public final int execute() {
return getDelegate().execute();
}
@Override
public final boolean isExecutable() {
return getDelegate().isExecutable();
}
@Override
public final Table<R> asTable() {
return getDelegate().asTable();

View File

@ -323,4 +323,34 @@ abstract class AbstractQuery extends AbstractQueryPart implements Query, Attacha
public boolean isExecutable() {
return true;
}
/**
* This method is also declared as {@link Query#getSQL()}
* <p>
* {@inheritDoc}
*/
@Override
public final String getSQL() {
if (executePreparedStatements(getConfiguration().getSettings())) {
return getSQL(false);
}
else {
return getSQL(true);
}
}
/**
* This method is also declared as {@link Query#getSQL(boolean)}
* <p>
* {@inheritDoc}
*/
@Override
public final String getSQL(boolean inline) {
if (inline) {
return create().renderInlined(this);
}
else {
return create().render(this);
}
}
}

View File

@ -36,8 +36,6 @@
package org.jooq.impl;
import static org.jooq.conf.SettingsTools.executePreparedStatements;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collections;
@ -71,36 +69,6 @@ abstract class AbstractQueryPart implements QueryPartInternal {
// The QueryPart and QueryPart internal API
// -------------------------------------------------------------------------
/**
* This method is also declared as {@link Query#getSQL()}
* <p>
* {@inheritDoc}
*/
@Override
public final String getSQL() {
if (executePreparedStatements(getConfiguration().getSettings())) {
return getSQL(false);
}
else {
return getSQL(true);
}
}
/**
* This method is also declared as {@link Query#getSQL(boolean)}
* <p>
* {@inheritDoc}
*/
@Override
public final String getSQL(boolean inline) {
if (inline) {
return create().renderInlined(this);
}
else {
return create().render(this);
}
}
/**
* This method is also declared as {@link Query#getBindValues()}
* <p>

View File

@ -46,7 +46,6 @@ import org.jooq.Configuration;
import org.jooq.DeleteConditionStep;
import org.jooq.DeleteWhereStep;
import org.jooq.Operator;
import org.jooq.Query;
import org.jooq.QueryPart;
import org.jooq.Record;
import org.jooq.Select;
@ -56,7 +55,7 @@ import org.jooq.Table;
* @author Lukas Eder
*/
class DeleteImpl<R extends Record>
extends AbstractDelegatingQueryPart<DeleteQueryImpl<R>>
extends AbstractDelegatingQuery<DeleteQueryImpl<R>>
implements
// Cascading interface implementations for Delete behaviour
@ -72,51 +71,6 @@ class DeleteImpl<R extends Record>
super(new DeleteQueryImpl<R>(configuration, table));
}
@Override
public final void attach(Configuration configuration) {
getDelegate().attach(configuration);
}
@Override
public final int execute() {
return getDelegate().execute();
}
@Override
public final boolean isExecutable() {
return getDelegate().isExecutable();
}
@Override
public final Query bind(String param, Object value) {
return getDelegate().bind(param, value);
}
@Override
public final Query bind(int index, Object value) {
return getDelegate().bind(index, value);
}
@Override
public final Query queryTimeout(int timeout) {
return getDelegate().queryTimeout(timeout);
}
@Override
public final Query keepStatement(boolean keepStatement) {
return getDelegate().keepStatement(keepStatement);
}
@Override
public final void close() {
getDelegate().close();
}
@Override
public final void cancel() {
getDelegate().cancel();
}
@Override
public final DeleteImpl<R> where(Condition... conditions) {
getDelegate().addConditions(conditions);

View File

@ -51,7 +51,6 @@ import org.jooq.InsertQuery;
import org.jooq.InsertResultStep;
import org.jooq.InsertSetMoreStep;
import org.jooq.InsertValuesStep;
import org.jooq.Query;
import org.jooq.Record;
import org.jooq.Result;
import org.jooq.Select;
@ -61,7 +60,7 @@ import org.jooq.Table;
* @author Lukas Eder
*/
class InsertImpl<R extends Record>
extends AbstractDelegatingQueryPart<InsertQuery<R>>
extends AbstractDelegatingQuery<InsertQuery<R>>
implements
// Cascading interface implementations for Insert behaviour
@ -86,55 +85,6 @@ class InsertImpl<R extends Record>
this.fields = new ArrayList<Field<?>>(fields);
}
@Override
public final void attach(Configuration configuration) {
getDelegate().attach(configuration);
}
// -------------------------------------------------------------------------
// The Query API
// -------------------------------------------------------------------------
@Override
public final int execute() {
return getDelegate().execute();
}
@Override
public final boolean isExecutable() {
return getDelegate().isExecutable();
}
@Override
public final Query bind(String param, Object value) {
return getDelegate().bind(param, value);
}
@Override
public final Query bind(int index, Object value) {
return getDelegate().bind(index, value);
}
@Override
public final Query queryTimeout(int timeout) {
return getDelegate().queryTimeout(timeout);
}
@Override
public final Query keepStatement(boolean keepStatement) {
return getDelegate().keepStatement(keepStatement);
}
@Override
public final void close() {
getDelegate().close();
}
@Override
public final void cancel() {
getDelegate().cancel();
}
// -------------------------------------------------------------------------
// The DSL API
// -------------------------------------------------------------------------

View File

@ -46,7 +46,6 @@ import org.jooq.Condition;
import org.jooq.Configuration;
import org.jooq.Field;
import org.jooq.Operator;
import org.jooq.Query;
import org.jooq.QueryPart;
import org.jooq.Record;
import org.jooq.Select;
@ -61,7 +60,7 @@ import org.jooq.UpdateSetMoreStep;
* @author Lukas Eder
*/
final class UpdateImpl<R extends Record>
extends AbstractDelegatingQueryPart<UpdateQuery<R>>
extends AbstractDelegatingQuery<UpdateQuery<R>>
implements
// Cascading interface implementations for Update behaviour
@ -77,51 +76,6 @@ final class UpdateImpl<R extends Record>
super(new UpdateQueryImpl<R>(configuration, table));
}
@Override
public final void attach(Configuration configuration) {
getDelegate().attach(configuration);
}
@Override
public final int execute() {
return getDelegate().execute();
}
@Override
public final boolean isExecutable() {
return getDelegate().isExecutable();
}
@Override
public final Query bind(String param, Object value) {
return getDelegate().bind(param, value);
}
@Override
public final Query bind(int index, Object value) {
return getDelegate().bind(index, value);
}
@Override
public final Query queryTimeout(int timeout) {
return getDelegate().queryTimeout(timeout);
}
@Override
public final Query keepStatement(boolean keepStatement) {
return getDelegate().keepStatement(keepStatement);
}
@Override
public final void close() {
getDelegate().close();
}
@Override
public final void cancel() {
getDelegate().cancel();
}
@Override
public final <T> UpdateImpl<R> set(Field<T> field, T value) {
getDelegate().addValue(field, value);