[jOOQ/jOOQ#9432] Add Queries.concat(Queries)

This commit is contained in:
Lukas Eder 2019-10-23 13:00:21 +02:00
parent fdf10aea70
commit 80be389d51
2 changed files with 17 additions and 0 deletions

View File

@ -56,6 +56,11 @@ public interface Queries extends QueryPart, Attachable, Iterable<Query> {
// Access API
// ------------------------------------------------------------------------
/**
* Return a new instance combining both sets of queries.
*/
Queries concat(Queries other);
/**
* The wrapped collection of queries.
*/

View File

@ -39,8 +39,11 @@ package org.jooq.impl;
import static org.jooq.impl.Tools.EMPTY_QUERY;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.stream.Stream;
import org.jooq.Block;
@ -75,6 +78,15 @@ final class QueriesImpl extends AbstractQueryPart implements Queries {
// Access API
// ------------------------------------------------------------------------
@Override
public final Queries concat(Queries other) {
Query[] array = other.queries();
List<Query> list = new ArrayList<>(queries.size() + array.length);
list.addAll(queries);
list.addAll(Arrays.asList(array));
return new QueriesImpl(configuration, list);
}
@Override
public final Query[] queries() {
return queries.toArray(EMPTY_QUERY);