diff --git a/src/main/java/com/avaje/ebean/bean/BeanCollection.java b/src/main/java/com/avaje/ebean/bean/BeanCollection.java index c24ac482b..4b144b7eb 100644 --- a/src/main/java/com/avaje/ebean/bean/BeanCollection.java +++ b/src/main/java/com/avaje/ebean/bean/BeanCollection.java @@ -92,11 +92,6 @@ public interface BeanCollection extends Serializable { */ void setFilterMany(ExpressionList filterMany); - /** - * Set a listener to be notified when the BeanCollection is first touched. - */ - void setBeanCollectionTouched(BeanCollectionTouched notify); - /** * Return true if the collection has been registered with the batch loading context. */ diff --git a/src/main/java/com/avaje/ebean/bean/BeanCollectionTouched.java b/src/main/java/com/avaje/ebean/bean/BeanCollectionTouched.java deleted file mode 100644 index 1451d9783..000000000 --- a/src/main/java/com/avaje/ebean/bean/BeanCollectionTouched.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.avaje.ebean.bean; - -/** - * Used to specify a listener to be notified when a BeanCollection is first - * used. - *

- * To use this you can set a BeanCollectionTouched onto a BeanCollection before - * it has been used. When the BeanCollection is first used by the client code - * then the BeanCollectionTouched is notified. It can only be notified once. - *

- * - * @author rbygrave - */ -public interface BeanCollectionTouched { - - /** - * Notify the listener that the bean collection has been used. - */ - void notifyTouched(BeanCollection c); -} diff --git a/src/main/java/com/avaje/ebean/common/AbstractBeanCollection.java b/src/main/java/com/avaje/ebean/common/AbstractBeanCollection.java index ab124de4c..9d9653e31 100644 --- a/src/main/java/com/avaje/ebean/common/AbstractBeanCollection.java +++ b/src/main/java/com/avaje/ebean/common/AbstractBeanCollection.java @@ -1,16 +1,14 @@ package com.avaje.ebean.common; -import java.util.Set; - -import javax.persistence.PersistenceException; - import com.avaje.ebean.Ebean; import com.avaje.ebean.ExpressionList; import com.avaje.ebean.bean.BeanCollection; import com.avaje.ebean.bean.BeanCollectionLoader; -import com.avaje.ebean.bean.BeanCollectionTouched; import com.avaje.ebean.bean.EntityBean; +import javax.persistence.PersistenceException; +import java.util.Set; + /** * Base class for List Set and Map implementations of BeanCollection. * @@ -36,8 +34,6 @@ public abstract class AbstractBeanCollection implements BeanCollection { protected String ebeanServerName; - protected transient BeanCollectionTouched beanCollectionTouched; - /** * The owning bean (used for lazy fetch). */ @@ -117,15 +113,6 @@ public abstract class AbstractBeanCollection implements BeanCollection { if (setFlag) { touched = true; } - if (beanCollectionTouched != null) { - // only call this once - beanCollectionTouched.notifyTouched(this); - beanCollectionTouched = null; - } - } - - public void setBeanCollectionTouched(BeanCollectionTouched notify) { - this.beanCollectionTouched = notify; } public boolean isRegisteredWithLoadContext() { diff --git a/src/main/java/com/avaje/ebeaninternal/api/SpiQuery.java b/src/main/java/com/avaje/ebeaninternal/api/SpiQuery.java index 36123dab2..243c7eb4a 100644 --- a/src/main/java/com/avaje/ebeaninternal/api/SpiQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/api/SpiQuery.java @@ -5,7 +5,6 @@ import com.avaje.ebean.ExpressionList; import com.avaje.ebean.OrderBy; import com.avaje.ebean.PersistenceContextScope; import com.avaje.ebean.Query; -import com.avaje.ebean.bean.BeanCollectionTouched; import com.avaje.ebean.bean.CallStack; import com.avaje.ebean.bean.ObjectGraphNode; import com.avaje.ebean.bean.PersistenceContext; @@ -226,18 +225,6 @@ public interface SpiQuery extends Query { List getSoftDeletePredicates(); - /** - * Return a listener that wants to be notified when the bean collection is - * first used. - */ - BeanCollectionTouched getBeanCollectionTouched(); - - /** - * Set a listener to be notified when the bean collection has been touched - * (when the list/set/map is first used). - */ - void setBeanCollectionTouched(BeanCollectionTouched notify); - /** * Set the list of Id's that is being populated. *

diff --git a/src/main/java/com/avaje/ebeaninternal/server/query/CQueryEngine.java b/src/main/java/com/avaje/ebeaninternal/server/query/CQueryEngine.java index f2c50e3bc..a3171a5a7 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/query/CQueryEngine.java +++ b/src/main/java/com/avaje/ebeaninternal/server/query/CQueryEngine.java @@ -4,7 +4,6 @@ import com.avaje.ebean.QueryIterator; import com.avaje.ebean.ValuePair; import com.avaje.ebean.Version; import com.avaje.ebean.bean.BeanCollection; -import com.avaje.ebean.bean.BeanCollectionTouched; import com.avaje.ebean.bean.EntityBean; import com.avaje.ebean.bean.ObjectGraphNode; import com.avaje.ebean.config.dbplatform.DatabasePlatform; @@ -300,14 +299,6 @@ public class CQueryEngine { } BeanCollection beanCollection = cquery.readCollection(); - - BeanCollectionTouched collectionTouched = query.getBeanCollectionTouched(); - if (collectionTouched != null) { - // register a listener that wants to be notified when the - // bean collection is first used - beanCollection.setBeanCollectionTouched(collectionTouched); - } - if (request.isLogSummary()) { logFindManySummary(cquery); } 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 e139b10bd..1e7d17e83 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java @@ -2,7 +2,6 @@ package com.avaje.ebeaninternal.server.querydefn; import com.avaje.ebean.*; import com.avaje.ebean.OrderBy.Property; -import com.avaje.ebean.bean.BeanCollectionTouched; import com.avaje.ebean.bean.CallStack; import com.avaje.ebean.bean.ObjectGraphNode; import com.avaje.ebean.bean.ObjectGraphOrigin; @@ -48,8 +47,6 @@ public class DefaultOrmQuery implements SpiQuery { private final EbeanServer server; - private BeanCollectionTouched beanCollectionTouched; - private final ExpressionFactory expressionFactory; /** @@ -1526,16 +1523,6 @@ public class DefaultOrmQuery implements SpiQuery { return disableReadAudit; } - @Override - public void setBeanCollectionTouched(BeanCollectionTouched notify) { - this.beanCollectionTouched = notify; - } - - @Override - public BeanCollectionTouched getBeanCollectionTouched() { - return beanCollectionTouched; - } - @Override public List getIdList() { return partialIds;