diff --git a/src/main/java/com/avaje/ebean/EbeanServer.java b/src/main/java/com/avaje/ebean/EbeanServer.java index bfc865434..945448204 100644 --- a/src/main/java/com/avaje/ebean/EbeanServer.java +++ b/src/main/java/com/avaje/ebean/EbeanServer.java @@ -904,19 +904,6 @@ public interface EbeanServer { */ void findEachWhile(Query query, QueryEachWhileConsumer consumer, Transaction transaction); - /** - * Deprecated in favor of #findEachWhile which is functionally exactly the same - * but has a much better name. - *

- * Execute the query visiting the results. This is similar to findIterate in - * that not all the result beans need to be held in memory at the same time - * and as such is go for processing large queries. - *

- * - * @deprecated - */ - void findVisit(Query query, QueryResultVisitor visitor, Transaction transaction); - /** * Execute a query returning a list of beans. *

diff --git a/src/main/java/com/avaje/ebean/ExpressionList.java b/src/main/java/com/avaje/ebean/ExpressionList.java index b3dcb6754..6e11d7ac9 100644 --- a/src/main/java/com/avaje/ebean/ExpressionList.java +++ b/src/main/java/com/avaje/ebean/ExpressionList.java @@ -116,14 +116,6 @@ public interface ExpressionList extends Serializable { */ void findEachWhile(QueryEachWhileConsumer consumer); - /** - * Deprecated in favor of #findEachWhile which is functionally exactly the same - * but has a much better name. - * - * @deprecated - */ - void findVisit(QueryResultVisitor visitor); - /** * Execute the query returning a list. * diff --git a/src/main/java/com/avaje/ebean/Query.java b/src/main/java/com/avaje/ebean/Query.java index b8414b935..75cbb398a 100644 --- a/src/main/java/com/avaje/ebean/Query.java +++ b/src/main/java/com/avaje/ebean/Query.java @@ -520,20 +520,6 @@ public interface Query extends Serializable { */ QueryIterator findIterate(); - /** - * This is deprecated in favor of #findEachWhile. - *

- * This is functionally exactly the same as #findEachWhile. It is - * replaced by findEachWhile because the method name is much better. - *

- * - * @param visitor - * the visitor used to process the queried beans. - * - * @deprecated - */ - void findVisit(QueryResultVisitor visitor); - /** * Execute the query processing the beans one at a time. *

diff --git a/src/main/java/com/avaje/ebean/QueryResultVisitor.java b/src/main/java/com/avaje/ebean/QueryResultVisitor.java deleted file mode 100644 index 0c99c8a44..000000000 --- a/src/main/java/com/avaje/ebean/QueryResultVisitor.java +++ /dev/null @@ -1,49 +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. - *

- * - *
- * 
- * Query<Customer> query = server.find(Customer.class)
- *     .fetch("contacts", new FetchConfig().query(2))
- *     .where().gt("id", 0)
- *     .orderBy("id")
- *     .setMaxRows(2);
- * 
- * query.findVisit(new QueryResultVisitor<Customer>() {
- * 
- *   public boolean accept(Customer customer) {
- *     // do something with customer
- *     System.out.println("-- visit " + customer);
- *     return true;
- *   }
- * });
- * 
- * - * @author rbygrave - * - * @param - * the type of entity bean being queried. - */ -public interface QueryResultVisitor { - - /** - * Process the bean and return true if you want to continue processing more - * beans. Return false if you want to stop processing further. - * - * @param bean - * the entity bean to process - * @return true to continue processing or false to stop. - */ - boolean accept(T bean); -} 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 d249a1285..049cd0d3d 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/DefaultServer.java @@ -1324,15 +1324,6 @@ public final class DefaultServer implements SpiEbeanServer { return new LimitOffsetPagedList(this, (SpiQuery)query, pageIndex, pageSize); } - public void findVisit(Query query, QueryResultVisitor visitor, Transaction t) { - - SpiOrmQueryRequest request = createQueryRequest(Type.ITERATE, query, t); - - request.initTransIfRequired(); - request.findVisit(visitor); - // no try finally - findVisit guarantee's cleanup of the transaction if required - } - public void findEach(Query query, QueryEachConsumer consumer, Transaction t) { SpiOrmQueryRequest request = createQueryRequest(Type.ITERATE, query, t); 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 44eb97fb8..012c53c80 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/OrmQueryRequest.java @@ -259,19 +259,6 @@ public final class OrmQueryRequest extends BeanRequest implements BeanQueryRe } } - public void findVisit(QueryResultVisitor visitor) { - QueryIterator it = queryEngine.findIterate(this); - try { - while (it.hasNext()) { - if (!visitor.accept(it.next())) { - break; - } - } - } finally { - it.close(); - } - } - public QueryIterator findIterate() { return queryEngine.findIterate(this); } 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 28878bd27..e9716a2c4 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java +++ b/src/main/java/com/avaje/ebeaninternal/server/core/SpiOrmQueryRequest.java @@ -1,17 +1,16 @@ package com.avaje.ebeaninternal.server.core; -import java.util.List; -import java.util.Map; -import java.util.Set; - import com.avaje.ebean.QueryEachConsumer; import com.avaje.ebean.QueryEachWhileConsumer; import com.avaje.ebean.QueryIterator; -import com.avaje.ebean.QueryResultVisitor; import com.avaje.ebean.bean.BeanCollection; import com.avaje.ebeaninternal.api.SpiQuery; import com.avaje.ebeaninternal.server.deploy.BeanDescriptor; +import java.util.List; +import java.util.Map; +import java.util.Set; + /** * Defines the ORM query request api. */ @@ -62,11 +61,6 @@ public interface SpiOrmQueryRequest { */ public List findIds(); - /** - * Execute the find returning a QueryIterator and visitor pattern. - */ - public void findVisit(QueryResultVisitor visitor); - /** * Execute the find returning a QueryIterator and visitor pattern. */ 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 6cd7b6e21..7400ad8ff 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java +++ b/src/main/java/com/avaje/ebeaninternal/server/expression/JunctionExpression.java @@ -252,11 +252,6 @@ abstract class JunctionExpression implements Junction, SpiExpression, Expr exprList.findEachWhile(consumer); } - @Override - public void findVisit(QueryResultVisitor visitor) { - exprList.findVisit(visitor); - } - @Override public QueryIterator findIterate() { return exprList.findIterate(); 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 32f7c6746..ae88e8267 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java @@ -917,10 +917,6 @@ public class DefaultOrmQuery implements SpiQuery { return server.findRowCount(this, null); } - public void findVisit(QueryResultVisitor visitor) { - server.findVisit(this, visitor, null); - } - @Override public void findEachWhile(QueryEachWhileConsumer consumer) { server.findEachWhile(this, consumer, null); diff --git a/src/main/java/com/avaje/ebeaninternal/util/DefaultExpressionList.java b/src/main/java/com/avaje/ebeaninternal/util/DefaultExpressionList.java index c6a4444c0..05c2cdf3f 100644 --- a/src/main/java/com/avaje/ebeaninternal/util/DefaultExpressionList.java +++ b/src/main/java/com/avaje/ebeaninternal/util/DefaultExpressionList.java @@ -182,11 +182,6 @@ public class DefaultExpressionList implements SpiExpressionList { query.findEachWhile(consumer); } - @Override - public void findVisit(QueryResultVisitor visitor) { - query.findVisit(visitor); - } - @Override public QueryIterator findIterate() { return query.findIterate(); diff --git a/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java b/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java index 14f051cbc..7b9965e09 100644 --- a/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java +++ b/src/test/java/com/avaje/ebeaninternal/api/TDSpiEbeanServer.java @@ -413,11 +413,6 @@ public class TDSpiEbeanServer implements SpiEbeanServer { } - @Override - public void findVisit(Query query, QueryResultVisitor visitor, Transaction transaction) { - - } - @Override public List findList(Query query, Transaction transaction) { return null; diff --git a/src/test/java/com/avaje/tests/query/TestQueryFindVisit.java b/src/test/java/com/avaje/tests/query/TestQueryFindVisit.java index 6a22228bd..110e6cd2f 100644 --- a/src/test/java/com/avaje/tests/query/TestQueryFindVisit.java +++ b/src/test/java/com/avaje/tests/query/TestQueryFindVisit.java @@ -1,18 +1,17 @@ package com.avaje.tests.query; -import java.util.concurrent.atomic.AtomicInteger; - -import org.junit.Assert; -import org.junit.Test; - import com.avaje.ebean.BaseTestCase; import com.avaje.ebean.Ebean; import com.avaje.ebean.EbeanServer; import com.avaje.ebean.FetchConfig; import com.avaje.ebean.Query; -import com.avaje.ebean.QueryResultVisitor; +import com.avaje.ebean.QueryEachConsumer; import com.avaje.tests.model.basic.Customer; import com.avaje.tests.model.basic.ResetBasicData; +import org.junit.Assert; +import org.junit.Test; + +import java.util.concurrent.atomic.AtomicInteger; public class TestQueryFindVisit extends BaseTestCase { @@ -29,11 +28,9 @@ public class TestQueryFindVisit extends BaseTestCase { final AtomicInteger counter = new AtomicInteger(0); - query.findVisit(new QueryResultVisitor() { - - public boolean accept(Customer bean) { + query.findEach(new QueryEachConsumer() { + public void accept(Customer bean) { counter.incrementAndGet(); - return true; } }); @@ -56,14 +53,13 @@ public class TestQueryFindVisit extends BaseTestCase { final AtomicInteger counter = new AtomicInteger(0); - query.findVisit(new QueryResultVisitor() { + query.findEach(new QueryEachConsumer() { - public boolean accept(Customer bean) { + public void accept(Customer bean) { counter.incrementAndGet(); if (counter.intValue() > 0) { throw new IllegalStateException("cause a failure"); } - return true; } });