[#6144] Let Queries extend QueryPart

This commit is contained in:
lukaseder 2017-04-24 14:57:00 +02:00
parent 40211410fc
commit cebe17c127
2 changed files with 28 additions and 2 deletions

View File

@ -41,7 +41,7 @@ import java.util.stream.Stream;
*
* @author Lukas Eder
*/
public interface Queries extends Iterable<Query> {
public interface Queries extends QueryPart, Iterable<Query> {
/**
* The wrapped collection of queries.

View File

@ -40,13 +40,20 @@ import java.util.Collection;
import java.util.Iterator;
import java.util.stream.Stream;
import org.jooq.Clause;
import org.jooq.Context;
import org.jooq.Queries;
import org.jooq.Query;
/**
* @author Lukas Eder
*/
final class QueriesImpl implements Queries {
final class QueriesImpl extends AbstractQueryPart implements Queries {
/**
* Generated UID
*/
private static final long serialVersionUID = 261452207127914269L;
private final Collection<? extends Query> queries;
@ -54,6 +61,10 @@ final class QueriesImpl implements Queries {
this.queries = queries;
}
// ------------------------------------------------------------------------
// Queries API
// ------------------------------------------------------------------------
@Override
public final Query[] queries() {
return queries.toArray(EMPTY_QUERY);
@ -78,6 +89,21 @@ final class QueriesImpl implements Queries {
}
// ------------------------------------------------------------------------
// QueryPart API
// ------------------------------------------------------------------------
@Override
public final void accept(Context<?> ctx) {
for (Query query : this)
ctx.visit(query).sql(';').formatNewLine();
}
@Override
public final Clause[] clauses(Context<?> ctx) {
return null;
}
// ------------------------------------------------------------------------
// Object API
// ------------------------------------------------------------------------