You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2017/12/07 10:09:45 UTC

[16/30] cayenne git commit: CAY-2377. Remove getCacheGroups()

CAY-2377. Remove getCacheGroups()


Project: http://git-wip-us.apache.org/repos/asf/cayenne/repo
Commit: http://git-wip-us.apache.org/repos/asf/cayenne/commit/44dec79f
Tree: http://git-wip-us.apache.org/repos/asf/cayenne/tree/44dec79f
Diff: http://git-wip-us.apache.org/repos/asf/cayenne/diff/44dec79f

Branch: refs/heads/master
Commit: 44dec79f53084f61ec19dccd41baaceca950a902
Parents: 185646f
Author: Arseni Bulatski <an...@gmail.com>
Authored: Fri Oct 27 14:00:46 2017 +0300
Committer: Arseni Bulatski <an...@gmail.com>
Committed: Wed Nov 15 10:27:47 2017 +0300

----------------------------------------------------------------------
 .../cayenne/lifecycle/id/StringIdQuery.java       |  5 -----
 .../apache/cayenne/access/DataDomainQuery.java    |  5 -----
 .../cayenne/access/ObjectsFromDataRowsQuery.java  |  5 -----
 .../apache/cayenne/query/BaseQueryMetadata.java   | 12 ------------
 .../org/apache/cayenne/query/CacheableQuery.java  |  9 ---------
 .../cayenne/query/DefaultQueryMetadata.java       |  8 --------
 .../org/apache/cayenne/query/QueryMetadata.java   | 13 -------------
 .../apache/cayenne/query/QueryMetadataProxy.java  |  6 ------
 .../cayenne/query/QueryMetadataWrapper.java       | 10 ----------
 .../cayenne/remote/IncrementalSelectQuery.java    |  9 ---------
 .../org/apache/cayenne/remote/RangeQuery.java     |  5 -----
 .../cayenne/cache/EhCacheQueryCacheTest.java      |  4 ++--
 .../cache/EhCacheQueryCache_WithConfigTest.java   |  2 +-
 .../apache/cayenne/query/MockQueryMetadata.java   |  5 -----
 .../cayenne/query/ObjectSelect_CompileIT.java     |  3 ---
 .../cayenne/query/SelectQueryCacheKeyIT.java      |  2 --
 docs/doc/src/main/resources/UPGRADE.txt           | 18 ++++++++++++++++++
 17 files changed, 21 insertions(+), 100 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/StringIdQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/StringIdQuery.java b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/StringIdQuery.java
index a6d6f72..b207de0 100644
--- a/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/StringIdQuery.java
+++ b/cayenne-lifecycle/src/main/java/org/apache/cayenne/lifecycle/id/StringIdQuery.java
@@ -190,11 +190,6 @@ public class StringIdQuery implements Query {
                 return null;
             }
 
-            @Deprecated
-            public String[] getCacheGroups() {
-                return null;
-            }
-
             public String getCacheGroup() {
                 return null;
             }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/access/DataDomainQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/access/DataDomainQuery.java b/cayenne-server/src/main/java/org/apache/cayenne/access/DataDomainQuery.java
index a1cfda1..0922c66 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/access/DataDomainQuery.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/access/DataDomainQuery.java
@@ -78,11 +78,6 @@ class DataDomainQuery implements Query, QueryMetadata {
     public void route(QueryRouter router, EntityResolver resolver, Query substitutedQuery) {
     }
 
-    @Deprecated
-    public String[] getCacheGroups() {
-        return null;
-    }
-
     /**
      * @since 4.0
      */

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/access/ObjectsFromDataRowsQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/access/ObjectsFromDataRowsQuery.java b/cayenne-server/src/main/java/org/apache/cayenne/access/ObjectsFromDataRowsQuery.java
index 7d68beb..f2027f5 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/access/ObjectsFromDataRowsQuery.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/access/ObjectsFromDataRowsQuery.java
@@ -101,11 +101,6 @@ class ObjectsFromDataRowsQuery implements Query, QueryMetadata {
         return null;
     }
 
-    @Deprecated
-    public String[] getCacheGroups() {
-        return null;
-    }
-
     public String getCacheGroup() {
         return null;
     }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java b/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
index 0eb0e1b..ecfaa56 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/BaseQueryMetadata.java
@@ -302,18 +302,6 @@ class BaseQueryMetadata implements QueryMetadata, Serializable {
 
 	/**
 	 * @since 3.0
-	 * @deprecated since 4.0, use {@link BaseQueryMetadata#getCacheGroup()}
-	 */
-	@Deprecated
-	public String[] getCacheGroups() {
-		if(cacheGroup == null) {
-			return null;
-		}
-		return new String[]{cacheGroup};
-	}
-
-	/**
-	 * @since 3.0
 	 * @deprecated since 4.0, use {@link BaseQueryMetadata#setCacheGroup(String)}
 	 */
 	@Deprecated

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/CacheableQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/CacheableQuery.java b/cayenne-server/src/main/java/org/apache/cayenne/query/CacheableQuery.java
index bc3d3a9..c5b339b 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/CacheableQuery.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/CacheableQuery.java
@@ -48,15 +48,6 @@ public abstract class CacheableQuery implements Query {
     }
 
     /**
-     * @since 3.0
-     * @deprecated since 4.0, use {@link CacheableQuery#getCacheGroup()}
-     */
-    @Deprecated
-    public String[] getCacheGroups() {
-        return getBaseMetaData().getCacheGroups();
-    }
-
-    /**
      * @since 4.0
      */
     public String getCacheGroup() {

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/DefaultQueryMetadata.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/DefaultQueryMetadata.java b/cayenne-server/src/main/java/org/apache/cayenne/query/DefaultQueryMetadata.java
index 43d9a25..70a7aa9 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/DefaultQueryMetadata.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/DefaultQueryMetadata.java
@@ -108,14 +108,6 @@ class DefaultQueryMetadata implements QueryMetadata {
     }
 
     /**
-     * @deprecated since 4.0, use {@link DefaultQueryMetadata#getCacheGroup()}
-     */
-    @Deprecated
-    public String[] getCacheGroups() {
-        return null;
-    }
-
-    /**
      * @since 4.0
      */
     @Override

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadata.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadata.java b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadata.java
index a0f1705..edb1118 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadata.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadata.java
@@ -143,19 +143,6 @@ public interface QueryMetadata {
     String getCacheKey();
 
     /**
-     * Returns an optional array of cache "groups". Cache groups allow to invalidate query
-     * caches in bulk on different events. Usually the first group in the array is
-     * considered to be the "main" group that is used for declarative cache invalidation
-     * with some cache providers.
-     * 
-     * @since 3.0
-     * @deprecated since 4.0 only single cache group supported, use {@link QueryMetadata#getCacheGroup()} instead
-     * @see QueryMetadata#getCacheGroup()
-     */
-    @Deprecated
-    String[] getCacheGroups();
-
-    /**
      * Returns an optional cache "group".
      * Cache groups allow to invalidate query caches in bulk on different events.
      *

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataProxy.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataProxy.java b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataProxy.java
index 821c7e9..d0940b4 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataProxy.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataProxy.java
@@ -38,12 +38,6 @@ public class QueryMetadataProxy implements QueryMetadata {
         this.mdDelegate = mdDelegate;
     }
 
-    @Deprecated
-    @Override
-    public String[] getCacheGroups() {
-        return mdDelegate.getCacheGroups();
-    }
-
     public String getCacheGroup() {
         return mdDelegate.getCacheGroup();
     }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataWrapper.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataWrapper.java b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataWrapper.java
index f14223c..877ad5c 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataWrapper.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/query/QueryMetadataWrapper.java
@@ -70,16 +70,6 @@ class QueryMetadataWrapper extends QueryMetadataProxy {
     }
 
     /**
-     * @deprecated since 4.0, use {@link QueryMetadataWrapper#getCacheKey()}
-     */
-    @Deprecated
-    public String[] getCacheGroups() {
-        return (overrideExists(QueryMetadata.CACHE_GROUPS_PROPERTY))
-                ? (String[]) overrides.get(QueryMetadata.CACHE_GROUPS_PROPERTY)
-                : super.getCacheGroups();
-    }
-
-    /**
      * @since 4.0
      */
     public String getCacheGroup() {

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java b/cayenne-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
index 7314488..3191f77 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/remote/IncrementalSelectQuery.java
@@ -132,15 +132,6 @@ class IncrementalSelectQuery<T> extends SelectQuery<T> {
 	}
 
 	/**
-	 * @deprecated since 4.0, use {@link IncrementalSelectQuery#getCacheGroup()}
-	 */
-	@Override
-	@Deprecated
-	public String[] getCacheGroups() {
-		return query.getCacheGroups();
-	}
-
-	/**
 	 * @since 4.0
 	 */
 	@Override

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/main/java/org/apache/cayenne/remote/RangeQuery.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/remote/RangeQuery.java b/cayenne-server/src/main/java/org/apache/cayenne/remote/RangeQuery.java
index 406d1e6..019d323 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/remote/RangeQuery.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/remote/RangeQuery.java
@@ -88,11 +88,6 @@ class RangeQuery implements Query {
                 return cacheKey;
             }
 
-            @Deprecated
-            public String[] getCacheGroups() {
-                return null;
-            }
-
             public String getCacheGroup() {
                 return null;
             }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCacheTest.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCacheTest.java b/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCacheTest.java
index 77a135a..cd6e96b 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCacheTest.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCacheTest.java
@@ -95,7 +95,7 @@ public class EhCacheQueryCacheTest {
 
         QueryMetadata md = mock(QueryMetadata.class);
         when(md.getCacheKey()).thenReturn("k1");
-        when(md.getCacheGroups()).thenReturn(new String[] { "cg1" });
+        when(md.getCacheGroup()).thenReturn("cg1");
 
         assertEquals(lists[0], cache.get(md, factory));
         assertEquals(lists[0], cache.get(md, factory));
@@ -117,7 +117,7 @@ public class EhCacheQueryCacheTest {
 
         QueryMetadata md = mock(QueryMetadata.class);
         when(md.getCacheKey()).thenReturn("k1");
-        when(md.getCacheGroups()).thenReturn(new String[] { "cg1" });
+        when(md.getCacheGroup()).thenReturn("cg1");
 
         assertEquals(lists[0], cache.get(md, factory));
         assertEquals(lists[0], cache.get(md, factory));

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCache_WithConfigTest.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCache_WithConfigTest.java b/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCache_WithConfigTest.java
index 21cddaa..1596119 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCache_WithConfigTest.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/cache/EhCacheQueryCache_WithConfigTest.java
@@ -62,7 +62,7 @@ public class EhCacheQueryCache_WithConfigTest {
 
         QueryMetadata md = mock(QueryMetadata.class);
         when(md.getCacheKey()).thenReturn("k1");
-        when(md.getCacheGroups()).thenReturn(new String[] { "cg1" });
+        when(md.getCacheGroup()).thenReturn("cg1");
 
         assertEquals(lists[0], cache.get(md, factory));
         assertEquals(lists[0], cache.get(md, factory));

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/test/java/org/apache/cayenne/query/MockQueryMetadata.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/MockQueryMetadata.java b/cayenne-server/src/test/java/org/apache/cayenne/query/MockQueryMetadata.java
index ddfac88..c88250b 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/query/MockQueryMetadata.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/query/MockQueryMetadata.java
@@ -67,11 +67,6 @@ public class MockQueryMetadata implements QueryMetadata {
         return null;
     }
 
-    @Deprecated
-    public String[] getCacheGroups() {
-        return null;
-    }
-
     public String getCacheGroup() {
         return null;
     }

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java
index 7af84e1..f395227 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/query/ObjectSelect_CompileIT.java
@@ -66,7 +66,6 @@ public class ObjectSelect_CompileIT extends ServerCase {
 		assertNull(selectQuery.getPrefetchTree());
 
 		assertEquals(QueryCacheStrategy.NO_CACHE, selectQuery.getCacheStrategy());
-		assertNull(selectQuery.getCacheGroups());
 		assertNull(selectQuery.getCacheGroup());
 		assertEquals(0, selectQuery.getFetchLimit());
 		assertEquals(0, selectQuery.getFetchOffset());
@@ -102,9 +101,7 @@ public class ObjectSelect_CompileIT extends ServerCase {
 		assertEquals(PrefetchTreeNode.JOINT_PREFETCH_SEMANTICS, childPrefetch.getSemantics());
 
 		assertEquals(QueryCacheStrategy.LOCAL_CACHE, selectQuery.getCacheStrategy());
-		assertArrayEquals(new String[] { "cg2" }, selectQuery.getCacheGroups());
 		assertEquals("cg2", selectQuery.getCacheGroup());
-
 		assertEquals(46, selectQuery.getFetchLimit());
 		assertEquals(9, selectQuery.getFetchOffset());
 		assertEquals(6, selectQuery.getPageSize());

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/cayenne-server/src/test/java/org/apache/cayenne/query/SelectQueryCacheKeyIT.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/test/java/org/apache/cayenne/query/SelectQueryCacheKeyIT.java b/cayenne-server/src/test/java/org/apache/cayenne/query/SelectQueryCacheKeyIT.java
index cfde82f..9a194d1 100644
--- a/cayenne-server/src/test/java/org/apache/cayenne/query/SelectQueryCacheKeyIT.java
+++ b/cayenne-server/src/test/java/org/apache/cayenne/query/SelectQueryCacheKeyIT.java
@@ -109,7 +109,6 @@ public class SelectQueryCacheKeyIT extends ServerCase {
         QueryMetadata md1 = q1.getMetaData(resolver);
         assertEquals(QueryCacheStrategy.SHARED_CACHE, md1.getCacheStrategy());
         assertNotNull(md1.getCacheKey());
-        assertNull(md1.getCacheGroups());
         assertNull(md1.getCacheGroup());
         
         SelectQuery<Artist> q2 = new SelectQuery<>(Artist.class);
@@ -118,7 +117,6 @@ public class SelectQueryCacheKeyIT extends ServerCase {
         QueryMetadata md2 = q2.getMetaData(resolver);
         assertEquals(QueryCacheStrategy.SHARED_CACHE, md2.getCacheStrategy());
         assertNotNull(md2.getCacheKey());
-        assertEquals(1, md2.getCacheGroups().length);
         assertEquals("g1", md2.getCacheGroup());
     }
 

http://git-wip-us.apache.org/repos/asf/cayenne/blob/44dec79f/docs/doc/src/main/resources/UPGRADE.txt
----------------------------------------------------------------------
diff --git a/docs/doc/src/main/resources/UPGRADE.txt b/docs/doc/src/main/resources/UPGRADE.txt
index c618ccf..8ae598a 100644
--- a/docs/doc/src/main/resources/UPGRADE.txt
+++ b/docs/doc/src/main/resources/UPGRADE.txt
@@ -204,6 +204,24 @@ UPGRADING TO 4.1.M2
       - removed DataMap dataMap in org.apache.cayenne.query.QueryChain;
       - removed DataMap dataMap in org.apache.cayenne.query.BatchQuery;
       - removed void setDataMap(DataMap dataMap) in org.apache.cayenne.query.BatchQuery;
+      - change in void testGet_WithFactory_WithCacheGroups() from getCacheGroups() to getCacheGroup() in org.apache.cayenne.cache.EhCacheQueryCacheTest;
+      - change in void testRemoveGroup_WithFactory_WithCacheGroups() from getCacheGroups() to getCacheGroup() in org.apache.cayenne.cache.EhCacheQueryCacheTest;
+      - change in void testRemoveGroup_WithFactory_WithCacheGroups() from getCacheGroups() to getCacheGroup() in org.apache.cayenne.cache.EhCacheQueryCacheTest_WithConfigTest;
+      - change in void testUseSharedCache(): removed getCacheGroups() in org.apache.cayenne.query.SelectQueryCacheKeyIT;
+      - removed in void testCreateReplacementQuery_Bare()  getCacheGroups() in org.apache.cayenne.queryObjectSelect_CompileIT;
+      - removed in void testCreateReplacementQuery_Full()  getCacheGroups() in org.apache.cayenne.queryObjectSelect_CompileIT;
+      - removed String[] getCacheGroups() in org.apache.cayenne.query.QueryMetadataProxy;
+      - removed String[] getCacheGroups() {since 4.0, use ueryMetadataWrapper#getCacheKey()} in org.apache.cayenne.query.QueryMetadataWrapper;
+      - removed String[] getCacheGroups() {since 4.0, use IncrementalSelectQuery#getCacheGroup()} in org.apache.cayenne.remote.IncrementalSelectQuery;
+      - removed String[] getCacheGroups() {since 4.0, use CacheableQuery#getCacheGroup()} in org.apache.cayenne.query.CacheableQuery;
+      - removed String[] getCacheGroups() in org.apache.cayenne.access.ObjectsFromDataRowsQuery;
+      - removed String[] getCacheGroups() in org.apache.cayenne.query.MockQueryMetadata;
+      - removed String[] getCacheGroups() {since 4.0, use DefaultQueryMetadata#getCacheGroup()} in org.apache.cayenne.query.DefaultQueryMetadata;
+      - removed String[] getCacheGroups() in org.apache.cayenne.access.DataDomainQuery;
+      - removed String[] getCacheGroups() {since 4.0, use BaseQueryMetadata#getCacheGroup()} in org.apache.cayenne.query.BaseQueryMetadata;
+      - removed String[] getCacheGroups() in org.apache.cayenne.remote.RangeQuery;
+      - removed String[] getCacheGroups() in org.apache.cayenne.lifecycle.id.StringIdQuery;
+      - removed String[] getCacheGroups() in org.apache.cayenne.query.QueryMetadata;
 
 
 UPGRADING TO 4.1.M1