This is an automated email from the ASF dual-hosted git repository.

ntimofeev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne.git

commit 409ed9564e1da0a61d5002891506eae5a3943841
Author: Nikita Timofeev <stari...@gmail.com>
AuthorDate: Fri Jul 1 17:29:36 2022 +0300

    CAY-2737 Cayenne 4.3: cleanup deprecated code
     - switch IncrementalSelectQuery to ObjectSelect usage
---
 .../cayenne/remote/IncrementalSelectQuery.java     | 188 +++++++--------------
 .../cayenne/remote/RemoteIncrementalFaultList.java |  14 +-
 2 files changed, 67 insertions(+), 135 deletions(-)

diff --git 
a/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
 
b/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
index 2c2c5ab38..3f12fece4 100644
--- 
a/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
+++ 
b/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
@@ -20,7 +20,6 @@ package org.apache.cayenne.remote;
 
 import java.util.Collection;
 import java.util.List;
-import java.util.Map;
 
 import org.apache.cayenne.ObjectContext;
 import org.apache.cayenne.ResultBatchIterator;
@@ -29,6 +28,7 @@ import org.apache.cayenne.ResultIteratorCallback;
 import org.apache.cayenne.access.IncrementalFaultList;
 import org.apache.cayenne.exp.Expression;
 import org.apache.cayenne.map.EntityResolver;
+import org.apache.cayenne.query.ObjectSelect;
 import org.apache.cayenne.query.Ordering;
 import org.apache.cayenne.query.PrefetchTreeNode;
 import org.apache.cayenne.query.Query;
@@ -37,9 +37,6 @@ import org.apache.cayenne.query.QueryMetadataProxy;
 import org.apache.cayenne.query.QueryRouter;
 import org.apache.cayenne.query.SQLAction;
 import org.apache.cayenne.query.SQLActionVisitor;
-import org.apache.cayenne.query.SelectQuery;
-import org.apache.cayenne.query.SortOrder;
-import org.apache.cayenne.util.XMLEncoder;
 
 /**
  * A SelectQuery decorator that overrides the metadata to ensure that query
@@ -49,13 +46,14 @@ import org.apache.cayenne.util.XMLEncoder;
  * SelectQuery-specific optimizations.
  * 
  * @since 3.0
+ * @since 4.3 this query extends ObjectSelect
  */
-class IncrementalSelectQuery<T> extends SelectQuery<T> {
+class IncrementalSelectQuery<T> extends ObjectSelect<T> {
 
-       private SelectQuery<T> query;
+       private ObjectSelect<T> query;
        private String cacheKey;
 
-       IncrementalSelectQuery(SelectQuery<T> delegate, String cacheKey) {
+       IncrementalSelectQuery(ObjectSelect<T> delegate, String cacheKey) {
                this.query = delegate;
                this.cacheKey = cacheKey;
        }
@@ -82,48 +80,13 @@ class IncrementalSelectQuery<T> extends SelectQuery<T> {
        }
 
        @Override
-       public void addOrdering(Ordering ordering) {
-               query.addOrdering(ordering);
-       }
-
-       @Override
-       public void addOrdering(String sortPathSpec, SortOrder order) {
-               query.addOrdering(sortPathSpec, order);
-       }
-
-       @Override
-       public void addOrderings(Collection<? extends Ordering> orderings) {
-               query.addOrderings(orderings);
-       }
-
-       @Override
-       public PrefetchTreeNode addPrefetch(String prefetchPath) {
-               return query.addPrefetch(prefetchPath);
-       }
-
-       @Override
-       public void andQualifier(Expression e) {
-               query.andQualifier(e);
-       }
-
-       @Override
-       public void clearOrderings() {
-               query.clearOrderings();
-       }
-
-       @Override
-       public void clearPrefetches() {
-               query.clearPrefetches();
-       }
-
-       @Override
-       public SelectQuery<T> createQuery(Map<String, ?> parameters) {
-               return query.createQuery(parameters);
+       public SQLAction createSQLAction(SQLActionVisitor visitor) {
+               return query.createSQLAction(visitor);
        }
 
        @Override
-       public SQLAction createSQLAction(SQLActionVisitor visitor) {
-               return query.createSQLAction(visitor);
+       public void route(QueryRouter router, EntityResolver resolver, Query 
substitutedQuery) {
+               query.route(router, resolver, substitutedQuery);
        }
 
        @Override
@@ -139,31 +102,6 @@ class IncrementalSelectQuery<T> extends SelectQuery<T> {
                return super.getCacheGroup();
        }
 
-       @Override
-       public int getFetchLimit() {
-               return query.getFetchLimit();
-       }
-
-       @Override
-       public List<Ordering> getOrderings() {
-               return query.getOrderings();
-       }
-
-       @Override
-       public int getPageSize() {
-               return query.getPageSize();
-       }
-
-       @Override
-       public PrefetchTreeNode getPrefetchTree() {
-               return query.getPrefetchTree();
-       }
-
-       @Override
-       public Expression getQualifier() {
-               return query.getQualifier();
-       }
-
        @Override
        public Object getRoot() {
                return query.getRoot();
@@ -174,127 +112,123 @@ class IncrementalSelectQuery<T> extends SelectQuery<T> {
                return query.hashCode();
        }
 
+       /**
+        * @since 4.0
+        */
        @Override
-       public void initWithProperties(Map<String, ?> properties) {
-               query.initWithProperties(properties);
-       }
-
-       @Override
-       public boolean isDistinct() {
-               return query.isDistinct();
+       public void setCacheGroup(String cacheGroup) {
+               query.setCacheGroup(cacheGroup);
        }
 
        @Override
-       public boolean isFetchingDataRows() {
-               return query.isFetchingDataRows();
+       public void setRoot(Object value) {
+               query.setRoot(value);
        }
 
        @Override
-       public void orQualifier(Expression e) {
-               query.orQualifier(e);
+       public String toString() {
+               return query.toString();
        }
 
        @Override
-       public SelectQuery<T> queryWithParameters(Map<String, ?> parameters, 
boolean pruneMissing) {
-               return query.queryWithParameters(parameters, pruneMissing);
+       public List<T> select(ObjectContext context) {
+               return query.select(context);
        }
 
        @Override
-       public SelectQuery<T> queryWithParameters(Map<String, ?> parameters) {
-               return query.queryWithParameters(parameters);
+       public T selectOne(ObjectContext context) {
+               return query.selectOne(context);
        }
 
        @Override
-       public void removeOrdering(Ordering ordering) {
-               query.removeOrdering(ordering);
+       public T selectFirst(ObjectContext context) {
+               return query.selectFirst(context);
        }
 
        @Override
-       public void removePrefetch(String prefetchPath) {
-               query.removePrefetch(prefetchPath);
+       public void iterate(ObjectContext context, ResultIteratorCallback<T> 
callback) {
+               query.iterate(context, callback);
        }
 
        @Override
-       public void route(QueryRouter router, EntityResolver resolver, Query 
substitutedQuery) {
-               query.route(router, resolver, substitutedQuery);
+       public ResultIterator<T> iterator(ObjectContext context) {
+               return query.iterator(context);
        }
 
-       /**
-        * @since 4.0
-        */
        @Override
-       public void setCacheGroup(String cacheGroup) {
-               query.setCacheGroup(cacheGroup);
+       public ResultBatchIterator<T> batchIterator(ObjectContext context, int 
size) {
+               return query.batchIterator(context, size);
        }
 
        @Override
-       public void setDistinct(boolean distinct) {
-               query.setDistinct(distinct);
+       public Expression getWhere() {
+               return query.getWhere();
        }
 
-       @SuppressWarnings("deprecation")
+       /**
+        * Returns a HAVING clause Expression of this query.
+        */
        @Override
-       public void setFetchingDataRows(boolean flag) {
-               query.setFetchingDataRows(flag);
+       public Expression getHaving() {
+               return query.getHaving();
        }
 
        @Override
-       public void setFetchLimit(int fetchLimit) {
-               query.setFetchLimit(fetchLimit);
+       public Collection<Ordering> getOrderings() {
+               return query.getOrderings();
        }
 
-       @Override
-       public void setPageSize(int pageSize) {
-               query.setPageSize(pageSize);
+       public boolean isDistinct() {
+               return query.isDistinct();
        }
 
        @Override
-       public void setPrefetchTree(PrefetchTreeNode prefetchTree) {
-               query.setPrefetchTree(prefetchTree);
+       public boolean isFetchingDataRows() {
+               return query.isFetchingDataRows();
        }
 
        @Override
-       public void setQualifier(Expression qualifier) {
-               query.setQualifier(qualifier);
+       public int getStatementFetchSize() {
+               return query.getStatementFetchSize();
        }
 
        @Override
-       public void setRoot(Object value) {
-               query.setRoot(value);
+       public int getQueryTimeout() {
+               return query.getQueryTimeout();
        }
 
        @Override
-       public String toString() {
-               return query.toString();
+       public int getPageSize() {
+               return query.getPageSize();
        }
 
        @Override
-       public List<T> select(ObjectContext context) {
-               return query.select(context);
+       public int getLimit() {
+               return query.getLimit();
        }
 
        @Override
-       public T selectOne(ObjectContext context) {
-               return query.selectOne(context);
+       public int getOffset() {
+               return query.getOffset();
        }
 
        @Override
-       public T selectFirst(ObjectContext context) {
-               return query.selectFirst(context);
+       public Class<?> getEntityType() {
+               return query.getEntityType();
        }
 
        @Override
-       public void iterate(ObjectContext context, ResultIteratorCallback<T> 
callback) {
-               query.iterate(context, callback);
+       public String getEntityName() {
+               return query.getEntityName();
        }
 
        @Override
-       public ResultIterator<T> iterator(ObjectContext context) {
-               return query.iterator(context);
+       public String getDbEntityName() {
+               return query.getDbEntityName();
        }
 
        @Override
-       public ResultBatchIterator<T> batchIterator(ObjectContext context, int 
size) {
-               return query.batchIterator(context, size);
+       public PrefetchTreeNode getPrefetches() {
+               return query.getPrefetches();
        }
 }
diff --git 
a/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/RemoteIncrementalFaultList.java
 
b/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/RemoteIncrementalFaultList.java
index 8c8f09323..da05ab69d 100644
--- 
a/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/RemoteIncrementalFaultList.java
+++ 
b/cayenne-rop-server/src/main/java/org/apache/cayenne/remote/RemoteIncrementalFaultList.java
@@ -31,9 +31,9 @@ import org.apache.cayenne.CayenneRuntimeException;
 import org.apache.cayenne.ObjectContext;
 import org.apache.cayenne.Persistent;
 import org.apache.cayenne.QueryResponse;
+import org.apache.cayenne.query.ObjectSelect;
 import org.apache.cayenne.query.Query;
 import org.apache.cayenne.query.QueryMetadata;
-import org.apache.cayenne.query.SelectQuery;
 import org.apache.cayenne.util.IDUtil;
 import org.apache.cayenne.util.IncrementalListResponse;
 import org.apache.cayenne.util.Util;
@@ -107,13 +107,11 @@ public class RemoteIncrementalFaultList implements List {
         // client-generated (e.g. see CAY-1003 - client and server can be in 
different
         // timezones, so the key can be messed up)
 
-        // there are some serious pagination optimizations for SelectQuery on 
the
-        // server-side, so use a special wrapper that is itself a subclass of
-        // SelectQuery
-        if (query instanceof SelectQuery) {
-            query = new IncrementalSelectQuery<Object>((SelectQuery<Object>) 
paginatedQuery, cacheKey);
-        }
-        else {
+        // there are some serious pagination optimizations for ObjectSelect on 
the
+        // server-side, so use a special wrapper that is itself a subclass of 
ObjectSelect
+        if (query instanceof ObjectSelect) {
+            query = new IncrementalSelectQuery<>((ObjectSelect<Object>) 
paginatedQuery, cacheKey);
+        } else {
             query = new IncrementalQuery(paginatedQuery, cacheKey);
         }
 

Reply via email to