From 6f322dcfb21b39ab4dc0591a896beeaa928c7e9d Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Thu, 24 Nov 2016 00:02:23 +1300 Subject: [PATCH] #891 - Refactor: Replace Ebean's QueryEachConsumer with java.util.function.Consumer --- .../java/com/avaje/ebean/DocumentStore.java | 3 +- .../java/com/avaje/ebean/EbeanServer.java | 13 ++++--- .../java/com/avaje/ebean/ExpressionList.java | 5 ++- src/main/java/com/avaje/ebean/Model.java | 5 ++- src/main/java/com/avaje/ebean/Query.java | 3 +- .../com/avaje/ebean/QueryEachConsumer.java | 39 ------------------- src/main/java/com/avaje/ebean/SqlQuery.java | 3 +- .../server/core/DefaultServer.java | 6 +-- .../server/core/OrmQueryRequest.java | 4 +- .../server/core/RelationalQueryEngine.java | 6 +-- .../server/core/RelationalQueryRequest.java | 4 +- .../server/core/SpiOrmQueryRequest.java | 6 +-- .../expression/DefaultExpressionList.java | 4 +- .../server/expression/JunctionExpression.java | 4 +- .../query/DefaultRelationalQueryEngine.java | 4 +- .../server/querydefn/DefaultOrmQuery.java | 4 +- .../querydefn/DefaultRelationalQuery.java | 4 +- .../docstore/none/NoneDocStore.java | 4 +- .../ebeaninternal/api/TDSpiEbeanServer.java | 35 ++--------------- 19 files changed, 48 insertions(+), 108 deletions(-) delete mode 100644 src/main/java/com/avaje/ebean/QueryEachConsumer.java diff --git a/src/main/java/com/avaje/ebean/DocumentStore.java b/src/main/java/com/avaje/ebean/DocumentStore.java index 95e0a1134..685a38566 100644 --- a/src/main/java/com/avaje/ebean/DocumentStore.java +++ b/src/main/java/com/avaje/ebean/DocumentStore.java @@ -6,6 +6,7 @@ import org.jetbrains.annotations.Nullable; import java.io.IOException; import java.util.List; import java.util.Map; +import java.util.function.Consumer; /** * Document storage operations. @@ -129,7 +130,7 @@ public interface DocumentStore { * * } */ - void findEach(DocQueryRequest query, QueryEachConsumer consumer); + void findEach(DocQueryRequest query, Consumer consumer); /** * Execute the query against the document store with the expectation of a large set of results diff --git a/src/main/java/com/avaje/ebean/EbeanServer.java b/src/main/java/com/avaje/ebean/EbeanServer.java index 269625ce5..0c6de8214 100644 --- a/src/main/java/com/avaje/ebean/EbeanServer.java +++ b/src/main/java/com/avaje/ebean/EbeanServer.java @@ -15,6 +15,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Provides the API for fetching and saving beans to a particular DataSource. @@ -755,7 +756,7 @@ public interface EbeanServer { /** * Return a QueryIterator for the query. *

- * Generally using {@link #findEach(Query, QueryEachConsumer, Transaction)} or + * Generally using {@link #findEach(Query, Consumer, Transaction)} or * {@link #findEachWhile(Query, QueryEachWhileConsumer, Transaction)} is preferred * to findIterate(). The reason is that those methods automatically take care of * closing the queryIterator (and the underlying jdbc statement and resultSet). @@ -766,7 +767,7 @@ public interface EbeanServer { *

* * @see Query#findIterate() - * @see Query#findEach(QueryEachConsumer) + * @see Query#findEach(Consumer) * @see Query#findEachWhile(QueryEachWhileConsumer) */ QueryIterator findIterate(Query query, Transaction transaction); @@ -796,10 +797,10 @@ public interface EbeanServer { * * } * - * @see Query#findEach(QueryEachConsumer) + * @see Query#findEach(Consumer) * @see Query#findEachWhile(QueryEachWhileConsumer) */ - void findEach(Query query, QueryEachConsumer consumer, Transaction transaction); + void findEach(Query query, Consumer consumer, Transaction transaction); /** * Execute the query visiting the each bean one at a time. @@ -833,7 +834,7 @@ public interface EbeanServer { * * } * - * @see Query#findEach(QueryEachConsumer) + * @see Query#findEach(Consumer) * @see Query#findEachWhile(QueryEachWhileConsumer) */ void findEachWhile(Query query, QueryEachWhileConsumer consumer, Transaction transaction); @@ -1093,7 +1094,7 @@ public interface EbeanServer { * This streaming type query is useful for large query execution as only 1 row needs to be held in memory. *

*/ - void findEach(SqlQuery query, QueryEachConsumer consumer, Transaction transaction); + void findEach(SqlQuery query, Consumer consumer, Transaction transaction); /** * Execute the SqlQuery iterating a row at a time with the ability to stop consuming part way through. diff --git a/src/main/java/com/avaje/ebean/ExpressionList.java b/src/main/java/com/avaje/ebean/ExpressionList.java index 4164d5d2e..cd45e432a 100644 --- a/src/main/java/com/avaje/ebean/ExpressionList.java +++ b/src/main/java/com/avaje/ebean/ExpressionList.java @@ -13,6 +13,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * List of Expressions that make up a where or having clause. @@ -151,9 +152,9 @@ public interface ExpressionList { /** * Execute the query process the beans one at a time. * - * @see Query#findEach(QueryEachConsumer) + * @see Query#findEach(Consumer) */ - void findEach(QueryEachConsumer consumer); + void findEach(Consumer consumer); /** * Execute the query processing the beans one at a time with the ability to diff --git a/src/main/java/com/avaje/ebean/Model.java b/src/main/java/com/avaje/ebean/Model.java index af8fa20c6..1740f64ba 100644 --- a/src/main/java/com/avaje/ebean/Model.java +++ b/src/main/java/com/avaje/ebean/Model.java @@ -9,6 +9,7 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.UUID; +import java.util.function.Consumer; /** * A MappedSuperclass base class that provides convenience methods for inserting, updating and @@ -596,9 +597,9 @@ public abstract class Model { * you do not want to hold all the results in memory at once but instead * process them one at a time (requiring far less memory). *

- * Equivalent to {@link Query#findEach(QueryEachConsumer)} + * Equivalent to {@link Query#findEach(Consumer)} */ - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { query().findEach(consumer); } diff --git a/src/main/java/com/avaje/ebean/Query.java b/src/main/java/com/avaje/ebean/Query.java index d09d53af8..39978b0e1 100644 --- a/src/main/java/com/avaje/ebean/Query.java +++ b/src/main/java/com/avaje/ebean/Query.java @@ -7,6 +7,7 @@ import java.sql.Timestamp; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Object relational query for finding a List, Set, Map or single entity bean. @@ -627,7 +628,7 @@ public interface Query { * * @param consumer the consumer used to process the queried beans. */ - void findEach(QueryEachConsumer consumer); + void findEach(Consumer consumer); /** * Execute the query using callbacks to a visitor to process the resulting diff --git a/src/main/java/com/avaje/ebean/QueryEachConsumer.java b/src/main/java/com/avaje/ebean/QueryEachConsumer.java deleted file mode 100644 index 6aa3f54fa..000000000 --- a/src/main/java/com/avaje/ebean/QueryEachConsumer.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.avaje.ebean; - -/** - * Used to process a query result one bean at a time via a callback to this - * visitor. - *

- * If you wish to stop further processing return false from the accept method. - *

- *

- * Unlike findList() and findSet() using a QueryResultVisitor does not require - * all the beans in the query result to be held in memory at once. This makes - * QueryResultVisitor useful for processing large queries. - *

- *

- *

{@code
- *
- * Query query = server.find(Customer.class)
- *     .where().eq("status", Status.NEW)
- *     .order().asc("id");
- *
- * query.findEach((Customer customer) -> {
- *
- *     // do something with customer
- *     System.out.println("-- visit " + customer);
- * });
- *
- * }
- * - * @param the type of entity bean being queried. - */ -public interface QueryEachConsumer { - - /** - * Process the bean. - * - * @param bean the entity bean to process - */ - void accept(T bean); -} diff --git a/src/main/java/com/avaje/ebean/SqlQuery.java b/src/main/java/com/avaje/ebean/SqlQuery.java index 5a817bc16..e4144237a 100644 --- a/src/main/java/com/avaje/ebean/SqlQuery.java +++ b/src/main/java/com/avaje/ebean/SqlQuery.java @@ -2,6 +2,7 @@ package com.avaje.ebean; import java.io.Serializable; import java.util.List; +import java.util.function.Consumer; /** * Query object for performing native SQL queries that return SqlRow's. @@ -48,7 +49,7 @@ public interface SqlQuery extends Serializable { * This streaming type query is useful for large query execution as only 1 row needs to be held in memory. *

*/ - void findEach(QueryEachConsumer consumer); + void findEach(Consumer consumer); /** * Execute the SqlQuery iterating a row at a time with the ability to stop consuming part way through. diff --git a/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java b/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java index 59c3b3e99..d0291cb4b 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java @@ -13,7 +13,6 @@ import com.avaje.ebean.FutureRowCount; import com.avaje.ebean.PagedList; import com.avaje.ebean.PersistenceContextScope; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.RawSql; @@ -108,6 +107,7 @@ import java.util.List; import java.util.Map; import java.util.Set; import java.util.concurrent.ConcurrentHashMap; +import java.util.function.Consumer; /** * The default server side implementation of EbeanServer. @@ -1351,7 +1351,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer { } } - public void findEach(Query query, QueryEachConsumer consumer, Transaction t) { + public void findEach(Query query, Consumer consumer, Transaction t) { SpiOrmQueryRequest request = createQueryRequest(Type.ITERATE, query, t); @@ -1421,7 +1421,7 @@ public final class DefaultServer implements SpiServer, SpiEbeanServer { } @Override - public void findEach(SqlQuery query, QueryEachConsumer consumer, Transaction transaction) { + public void findEach(SqlQuery query, Consumer consumer, Transaction transaction) { RelationalQueryRequest request = new RelationalQueryRequest(this, relationalQueryEngine, query, transaction); try { diff --git a/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java b/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java index 66f9117b4..b60173718 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java @@ -1,7 +1,6 @@ package com.avaje.ebeaninternal.server.core; import com.avaje.ebean.PersistenceContextScope; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.RawSql; @@ -37,6 +36,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Wraps the objects involved in executing a Query. @@ -310,7 +310,7 @@ public final class OrmQueryRequest extends BeanRequest implements BeanQueryRe return queryEngine.findIds(this); } - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { QueryIterator it = queryEngine.findIterate(this); try { while (it.hasNext()) { diff --git a/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryEngine.java b/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryEngine.java index 0f411c70b..36e881f01 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryEngine.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryEngine.java @@ -1,11 +1,11 @@ package com.avaje.ebeaninternal.server.core; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.SqlRow; import java.util.List; +import java.util.function.Consumer; public interface RelationalQueryEngine { @@ -17,11 +17,11 @@ public interface RelationalQueryEngine { /** * Find each query using relational query. */ - void findEach(RelationalQueryRequest request, QueryEachConsumer consumer); + void findEach(RelationalQueryRequest request, Consumer consumer); /** * Find each while query using relational query. */ void findEach(RelationalQueryRequest request, QueryEachWhileConsumer consumer); -} \ No newline at end of file +} diff --git a/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryRequest.java b/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryRequest.java index 37018c04b..755949846 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryRequest.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/RelationalQueryRequest.java @@ -1,7 +1,6 @@ package com.avaje.ebeaninternal.server.core; import com.avaje.ebean.EbeanServer; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.SqlQuery; import com.avaje.ebean.SqlRow; @@ -25,6 +24,7 @@ import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; +import java.util.function.Consumer; /** * Wraps the objects involved in executing a SqlQuery. @@ -90,7 +90,7 @@ public final class RelationalQueryRequest { } } - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { queryEngine.findEach(this, consumer); } diff --git a/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java b/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java index 7c68e63c8..eb543af49 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java @@ -1,6 +1,5 @@ package com.avaje.ebeaninternal.server.core; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.Version; @@ -12,6 +11,7 @@ import com.avaje.ebeanservice.docstore.api.DocQueryRequest; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Defines the ORM query request api. @@ -76,7 +76,7 @@ public interface SpiOrmQueryRequest extends DocQueryRequest { /** * Execute the find returning a QueryIterator and visitor pattern. */ - void findEach(QueryEachConsumer consumer); + void findEach(Consumer consumer); /** * Execute the find returning a QueryIterator and visitor pattern. @@ -132,4 +132,4 @@ public interface SpiOrmQueryRequest extends DocQueryRequest { * Return true if this query is expected to use the doc store. */ boolean isUseDocStore(); -} \ No newline at end of file +} diff --git a/src/main/java/com/avaje/ebeaninternal/server/expression/DefaultExpressionList.java b/src/main/java/com/avaje/ebeaninternal/server/expression/DefaultExpressionList.java index 381e93e86..86768d000 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/expression/DefaultExpressionList.java +++ b/src/main/java/com/avaje/ebeaninternal/server/expression/DefaultExpressionList.java @@ -11,7 +11,6 @@ import com.avaje.ebean.Junction; import com.avaje.ebean.OrderBy; import com.avaje.ebean.PagedList; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.Version; @@ -37,6 +36,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Default implementation of ExpressionList. @@ -367,7 +367,7 @@ public class DefaultExpressionList implements SpiExpressionList { } @Override - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { query.findEach(consumer); } diff --git a/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java b/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java index e3a25ee46..006287a39 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java +++ b/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java @@ -10,7 +10,6 @@ import com.avaje.ebean.Junction; import com.avaje.ebean.OrderBy; import com.avaje.ebean.PagedList; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.Version; @@ -34,6 +33,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Junction implementation. @@ -373,7 +373,7 @@ class JunctionExpression implements SpiJunction, SpiExpression, Expression } @Override - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { exprList.findEach(consumer); } diff --git a/src/main/java/com/avaje/ebeaninternal/server/query/DefaultRelationalQueryEngine.java b/src/main/java/com/avaje/ebeaninternal/server/query/DefaultRelationalQueryEngine.java index 4193e1ac1..6e3a3d2a1 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/query/DefaultRelationalQueryEngine.java +++ b/src/main/java/com/avaje/ebeaninternal/server/query/DefaultRelationalQueryEngine.java @@ -1,6 +1,5 @@ package com.avaje.ebeaninternal.server.query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.SqlRow; import com.avaje.ebeaninternal.server.core.Message; @@ -12,6 +11,7 @@ import javax.persistence.PersistenceException; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; +import java.util.function.Consumer; /** * Perform native sql fetches. @@ -49,7 +49,7 @@ public class DefaultRelationalQueryEngine implements RelationalQueryEngine { } @Override - public void findEach(RelationalQueryRequest request, QueryEachConsumer consumer) { + public void findEach(RelationalQueryRequest request, Consumer consumer) { long startTime = System.currentTimeMillis(); diff --git a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java index 9a32050f1..9b6e9194d 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java @@ -14,7 +14,6 @@ import com.avaje.ebean.OrderBy.Property; import com.avaje.ebean.PagedList; import com.avaje.ebean.PersistenceContextScope; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; import com.avaje.ebean.RawSql; @@ -52,6 +51,7 @@ import java.util.Iterator; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** * Default implementation of an Object Relational query. @@ -1125,7 +1125,7 @@ public class DefaultOrmQuery implements SpiQuery { } @Override - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { server.findEach(this, consumer, null); } diff --git a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultRelationalQuery.java b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultRelationalQuery.java index 578adc703..175e1aebd 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultRelationalQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultRelationalQuery.java @@ -1,13 +1,13 @@ package com.avaje.ebeaninternal.server.querydefn; import com.avaje.ebean.EbeanServer; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.SqlRow; import com.avaje.ebeaninternal.api.BindParams; import com.avaje.ebeaninternal.api.SpiSqlQuery; import java.util.List; +import java.util.function.Consumer; /** * Default implementation of SQuery - SQL Query. @@ -47,7 +47,7 @@ public class DefaultRelationalQuery implements SpiSqlQuery { } @Override - public void findEach(QueryEachConsumer consumer) { + public void findEach(Consumer consumer) { server.findEach(this, consumer, null); } diff --git a/src/main/java/com/avaje/ebeanservice/docstore/none/NoneDocStore.java b/src/main/java/com/avaje/ebeanservice/docstore/none/NoneDocStore.java index ce49b9dc9..8a9194e7d 100644 --- a/src/main/java/com/avaje/ebeanservice/docstore/none/NoneDocStore.java +++ b/src/main/java/com/avaje/ebeanservice/docstore/none/NoneDocStore.java @@ -4,13 +4,13 @@ import com.avaje.ebean.DocStoreQueueEntry; import com.avaje.ebean.DocumentStore; import com.avaje.ebean.PagedList; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebeanservice.docstore.api.DocQueryRequest; import java.io.IOException; import java.util.List; import java.util.Map; +import java.util.function.Consumer; /** * DocumentStore that barfs it is used. @@ -82,7 +82,7 @@ public class NoneDocStore implements DocumentStore { } @Override - public void findEach(DocQueryRequest query, QueryEachConsumer consumer) { + public void findEach(DocQueryRequest query, Consumer consumer) { throw implementationNotInClassPath(); } diff --git a/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java b/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java index bcdd913d4..0534b126e 100644 --- a/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java +++ b/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java @@ -1,34 +1,6 @@ package com.avaje.ebeaninternal.api; -import com.avaje.ebean.AutoTune; -import com.avaje.ebean.BackgroundExecutor; -import com.avaje.ebean.BeanState; -import com.avaje.ebean.CallableSql; -import com.avaje.ebean.DocumentStore; -import com.avaje.ebean.ExpressionFactory; -import com.avaje.ebean.Filter; -import com.avaje.ebean.FutureIds; -import com.avaje.ebean.FutureList; -import com.avaje.ebean.FutureRowCount; -import com.avaje.ebean.PagedList; -import com.avaje.ebean.PersistenceContextScope; -import com.avaje.ebean.Query; -import com.avaje.ebean.QueryEachConsumer; -import com.avaje.ebean.QueryEachWhileConsumer; -import com.avaje.ebean.QueryIterator; -import com.avaje.ebean.SqlQuery; -import com.avaje.ebean.SqlRow; -import com.avaje.ebean.SqlUpdate; -import com.avaje.ebean.Transaction; -import com.avaje.ebean.TransactionCallback; -import com.avaje.ebean.TxCallable; -import com.avaje.ebean.TxIsolation; -import com.avaje.ebean.TxRunnable; -import com.avaje.ebean.TxScope; -import com.avaje.ebean.Update; -import com.avaje.ebean.UpdateQuery; -import com.avaje.ebean.ValuePair; -import com.avaje.ebean.Version; +import com.avaje.ebean.*; import com.avaje.ebean.bean.BeanCollection; import com.avaje.ebean.bean.CallStack; import com.avaje.ebean.bean.EntityBeanIntercept; @@ -54,6 +26,7 @@ import java.util.Collection; import java.util.List; import java.util.Map; import java.util.Set; +import java.util.function.Consumer; /** @@ -501,7 +474,7 @@ public class TDSpiEbeanServer implements SpiEbeanServer { } @Override - public void findEach(Query query, QueryEachConsumer consumer, Transaction transaction) { + public void findEach(Query query, Consumer consumer, Transaction transaction) { } @@ -561,7 +534,7 @@ public class TDSpiEbeanServer implements SpiEbeanServer { } @Override - public void findEach(SqlQuery query, QueryEachConsumer consumer, Transaction transaction) { + public void findEach(SqlQuery query, Consumer consumer, Transaction transaction) { } @Override