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

jbarrett pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new 22a5017  GEODE-6117: Makes modules out of geode-core and geode-cq 
(#2915)
22a5017 is described below

commit 22a5017745acd4ca22cbcb08b70cc3cedbb4b5fd
Author: Jacob Barrett <[email protected]>
AuthorDate: Fri Dec 7 11:43:23 2018 -0800

    GEODE-6117: Makes modules out of geode-core and geode-cq (#2915)
    
    * Moves all o.a.g.internal.cq(ish) classes to o.a.g.cache.querycq.internal.
    * Use Spring BOM plugin.
    * Adds geode-client BOM.
    
    Co-authored-by: Jacob Barrett <[email protected]>
    Co-authored-by: Owen Nichols <[email protected]>
---
 boms/build.gradle                                  | 20 +++++++
 boms/geode-client-bom/build.gradle                 | 44 +++++++++++++++
 boms/geode-client-bom/src/test/expected-pom.xml    | 62 +++++++++++++++++++++
 .../geode/GeodeDependencyJarIntegrationTest.java   |  2 +-
 .../integrationTest/resources/assembly_content.txt | 13 ++---
 .../resources/dependency_classpath.txt             | 13 ++---
 .../integrationTest/resources/expected_jars.txt    | 15 +++---
 .../src/test/resources/expected-pom.xml            |  2 +-
 geode-core/build.gradle                            | 14 ++++-
 .../geode/cache/client/internal/QueryOp.java       |  2 +-
 .../geode/internal/InternalDataSerializer.java     | 38 ++++++++++---
 .../internal/security/SecurityServiceFactory.java  |  8 +--
 ...he.geode.security.internal.server.Authenticator |  1 -
 geode-core/src/test/resources/expected-pom.xml     | 26 +++++----
 geode-cq/build.gradle                              |  9 ++++
 .../cache/query/cq/dunit/CqDataDUnitTest.java      |  2 +-
 .../cq/dunit/CqDataOptimizedExecuteDUnitTest.java  |  2 +-
 .../query/cq/dunit/CqDataUsingPoolDUnitTest.java   |  5 +-
 .../CqDataUsingPoolOptimizedExecuteDUnitTest.java  |  2 +-
 .../cache/query/cq/dunit/CqPerfDUnitTest.java      |  4 +-
 .../query/cq/dunit/CqPerfUsingPoolDUnitTest.java   |  4 +-
 .../cq/dunit/CqQueryOptimizedExecuteDUnitTest.java |  2 +-
 .../CqQueryUsingPoolOptimizedExecuteDUnitTest.java |  2 +-
 .../cq/dunit/CqResultSetUsingPoolDUnitTest.java    |  2 +-
 ...esultSetUsingPoolOptimizedExecuteDUnitTest.java |  6 +--
 .../cache/query/cq/dunit/CqStatsDUnitTest.java     |  6 +--
 .../cq/dunit/CqStatsOptimizedExecuteDUnitTest.java |  2 +-
 .../query/cq/dunit/CqStatsUsingPoolDUnitTest.java  |  6 +--
 .../CqStatsUsingPoolOptimizedExecuteDUnitTest.java |  2 +-
 ...onedRegionCqQueryOptimizedExecuteDUnitTest.java |  2 +-
 .../PrCqUsingPoolOptimizedExecuteDUnitTest.java    |  2 +-
 .../cache/tier/sockets/DurableClientTestBase.java  |  2 +-
 .../security/CQPDXPostProcessorDUnitTest.java      |  2 +-
 .../geode/security/CQPostProcessorDunitTest.java   |  2 +-
 .../ClientCQPostAuthorizationDUnitTest.java        |  2 +-
 .../security/MultiUserDurableCQAuthzDUnitTest.java |  2 +-
 .../AnalyzeCQSerializablesJUnitTest.java           |  6 +++
 .../codeAnalysis/sanctionedDataSerializables.txt   |  2 +-
 .../cq}/internal/CQDistributedSystemService.java   |  4 +-
 .../{internal/cq => cq/internal}/ClientCQImpl.java |  5 +-
 .../internal}/CqAttributesMutatorImpl.java         |  2 +-
 .../cq => cq/internal}/CqConflatable.java          |  2 +-
 .../{internal/cq => cq/internal}/CqEventImpl.java  |  2 +-
 .../cq => cq/internal}/CqListenerImpl.java         |  2 +-
 .../{internal/cq => cq/internal}/CqQueryImpl.java  |  4 +-
 .../cq => cq/internal}/CqServiceFactoryImpl.java   | 18 ++++---
 .../cq => cq/internal}/CqServiceImpl.java          | 10 ++--
 .../internal}/CqServiceStatisticsImpl.java         |  2 +-
 .../cq => cq/internal}/CqServiceVsdStats.java      |  3 +-
 .../cq => cq/internal}/CqStatisticsImpl.java       |  2 +-
 .../{internal/cq => cq/internal}/ServerCQImpl.java |  4 +-
 .../query/cq/internal}/command/BaseCQCommand.java  |  2 +-
 .../query/cq/internal}/command/CloseCQ.java        |  2 +-
 .../query/cq/internal}/command/ExecuteCQ.java      |  2 +-
 .../query/cq/internal}/command/ExecuteCQ61.java    |  6 +--
 .../query/cq/internal}/command/GetCQStats.java     |  2 +-
 .../query/cq/internal}/command/GetDurableCQs.java  |  2 +-
 .../query/cq/internal}/command/MonitorCQ.java      |  2 +-
 .../query/cq/internal}/command/StopCQ.java         |  2 +-
 .../cq/internal/ops}/CloseCQOp.java                |  7 ++-
 .../cq/internal/ops}/CreateCQOp.java               |  6 ++-
 .../cq/internal/ops}/CreateCQWithIROp.java         |  5 +-
 .../cq/internal/ops}/GetDurableCQsOp.java          |  7 ++-
 .../cq/internal/ops}/ServerCQProxyImpl.java        |  8 ++-
 .../cq/internal/ops}/StopCQOp.java                 |  7 ++-
 ...de.cache.query.internal.cq.spi.CqServiceFactory |  2 +-
 ...e.distributed.internal.DistributedSystemService |  2 +-
 .../internal/sanctioned-geode-cq-serializables.txt |  2 +-
 .../query/internal/cq/CqServiceImplJUnitTest.java  |  1 +
 .../cache/query/internal/cq/CqServiceUnitTest.java |  1 +
 .../cache/tier/sockets/command/CloseCQTest.java    |  1 +
 .../tier/sockets/command/ExecuteCQ61Test.java      |  1 +
 .../cache/tier/sockets/command/StopCQTest.java     |  1 +
 .../weblogic_setting_up_the_module.html.md.erb     |  2 +-
 .../geode/test/dunit/internal/ProcessManager.java  | 63 ++++++++++++++--------
 .../AnalyzeSerializablesJUnitTestBase.java         |  6 ++-
 gradle/dependency-versions.properties              |  9 ++--
 settings.gradle                                    |  1 +
 78 files changed, 397 insertions(+), 153 deletions(-)

diff --git a/boms/build.gradle b/boms/build.gradle
new file mode 100644
index 0000000..c4f796a
--- /dev/null
+++ b/boms/build.gradle
@@ -0,0 +1,20 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+jar.enabled = false
+disableMavenPublishing()
+
diff --git a/boms/geode-client-bom/build.gradle 
b/boms/geode-client-bom/build.gradle
new file mode 100644
index 0000000..785b8ea
--- /dev/null
+++ b/boms/geode-client-bom/build.gradle
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+plugins {
+  id "io.spring.dependency-management" version "1.0.0.RC2"
+}
+
+jar.enabled = false
+
+dependencyManagement {
+  dependencies {
+    dependencySet(group: project.group, version: project.version) {
+      entry('geode-core') {
+        exclude 'org.apache.shiro:shiro-core'
+        exclude 'com.github.stephenc.findbugs:findbugs-annotations'
+      }
+      entry('geode-cq')
+    }
+  }
+}
+
+publishing {
+  publications {
+    maven(MavenPublication) {
+      pom.packaging 'pom'
+      artifacts = []
+    }
+  }
+}
+
diff --git a/boms/geode-client-bom/src/test/expected-pom.xml 
b/boms/geode-client-bom/src/test/expected-pom.xml
new file mode 100644
index 0000000..8ec90ac
--- /dev/null
+++ b/boms/geode-client-bom/src/test/expected-pom.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+  <!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  -->
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.apache.geode</groupId>
+  <artifactId>geode-client-bom</artifactId>
+  <version>1.9.0-SNAPSHOT</version>
+  <packaging>pom</packaging>
+  <name>Apache Geode</name>
+  <description>Apache Geode provides a database-like consistency model, 
reliable transaction processing and a shared-nothing architecture to maintain 
very low latency performance with high concurrency processing</description>
+  <url>http://geode.apache.org</url>
+  <licenses>
+    <license>
+      <name>The Apache Software License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+    </license>
+  </licenses>
+  <scm>
+    <connection>scm:git:https://github.com:apache/geode.git</connection>
+    
<developerConnection>scm:git:https://github.com:apache/geode.git</developerConnection>
+    <url>https://github.com/apache/geode</url>
+  </scm>
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>org.apache.geode</groupId>
+        <artifactId>geode-core</artifactId>
+        <version>1.9.0-SNAPSHOT</version>
+        <exclusions>
+          <exclusion>
+            <groupId>org.apache.shiro</groupId>
+            <artifactId>shiro-core</artifactId>
+          </exclusion>
+          <exclusion>
+            <groupId>com.github.stephenc.findbugs</groupId>
+            <artifactId>findbugs-annotations</artifactId>
+          </exclusion>
+        </exclusions>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.geode</groupId>
+        <artifactId>geode-cq</artifactId>
+        <version>1.9.0-SNAPSHOT</version>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
+</project>
diff --git 
a/geode-assembly/src/integrationTest/java/org/apache/geode/GeodeDependencyJarIntegrationTest.java
 
b/geode-assembly/src/integrationTest/java/org/apache/geode/GeodeDependencyJarIntegrationTest.java
index c490617..6d7e4c1 100644
--- 
a/geode-assembly/src/integrationTest/java/org/apache/geode/GeodeDependencyJarIntegrationTest.java
+++ 
b/geode-assembly/src/integrationTest/java/org/apache/geode/GeodeDependencyJarIntegrationTest.java
@@ -58,7 +58,7 @@ public class GeodeDependencyJarIntegrationTest {
         .describedAs("The geode-dependency jar's manifest classpath has 
changed. Verify "
             + "dependencies and copy 
geode-assembly/build/integrationTest/dependency_classpath.txt "
             + "to src/integrationTest/resources/dependency_classpath.txt")
-        .containsExactlyElementsOf(expectedClasspathElements);
+        .containsExactlyInAnyOrderElementsOf(expectedClasspathElements);
   }
 
   /**
diff --git a/geode-assembly/src/integrationTest/resources/assembly_content.txt 
b/geode-assembly/src/integrationTest/resources/assembly_content.txt
index 2844d1e..1101719 100644
--- a/geode-assembly/src/integrationTest/resources/assembly_content.txt
+++ b/geode-assembly/src/integrationTest/resources/assembly_content.txt
@@ -865,7 +865,6 @@ javadoc/script.js
 javadoc/serialized-form.html
 javadoc/stylesheet.css
 lib/HikariCP-3.2.0.jar
-lib/activation-1.1.1.jar
 lib/antlr-2.7.7.jar
 lib/classgraph-4.0.6.jar
 lib/commons-beanutils-1.9.3.jar
@@ -897,17 +896,19 @@ lib/geode-wan-0.0.0.jar
 lib/geode-web-0.0.0.jar
 lib/gfsh-dependencies.jar
 lib/grumpy-core-0.2.2.jar
+lib/istack-commons-runtime-2.2.jar
 lib/jackson-annotations-2.9.7.jar
 lib/jackson-core-2.9.7.jar
 lib/jackson-databind-2.9.7.jar
 lib/jansi-1.17.1.jar
+lib/javax.activation-1.2.0.jar
+lib/javax.activation-api-1.2.0.jar
 lib/javax.mail-api-1.6.2.jar
-lib/javax.resource-api-1.7.jar
+lib/javax.resource-api-1.7.1.jar
 lib/javax.servlet-api-3.1.0.jar
-lib/javax.transaction-api-1.2.jar
-lib/jaxb-api-2.2.11.jar
-lib/jaxb-core-2.2.11.jar
-lib/jaxb-impl-2.2.11.jar
+lib/javax.transaction-api-1.3.jar
+lib/jaxb-api-2.3.1.jar
+lib/jaxb-impl-2.3.1.jar
 lib/jetty-http-9.4.12.v20180830.jar
 lib/jetty-io-9.4.12.v20180830.jar
 lib/jetty-security-9.4.12.v20180830.jar
diff --git 
a/geode-assembly/src/integrationTest/resources/dependency_classpath.txt 
b/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
index 312715b..89d1977 100644
--- a/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
+++ b/geode-assembly/src/integrationTest/resources/dependency_classpath.txt
@@ -16,14 +16,13 @@ jackson-annotations-2.9.7.jar
 spring-shell-1.2.0.RELEASE.jar
 commons-io-2.6.jar
 commons-validator-1.6.jar
-activation-1.1.1.jar
-jaxb-api-2.2.11.jar
-jaxb-core-2.2.11.jar
-jaxb-impl-2.2.11.jar
+javax.activation-1.2.0.jar
+jaxb-api-2.3.1.jar
+jaxb-impl-2.3.1.jar
 commons-lang3-3.8.1.jar
 netty-all-4.1.31.Final.jar
 fastutil-8.2.2.jar
-javax.resource-api-1.7.jar
+javax.resource-api-1.7.1.jar
 jna-4.1.0.jar
 jopt-simple-5.0.4.jar
 log4j-slf4j-impl-2.11.1.jar
@@ -38,6 +37,7 @@ snappy-0.4.jar
 shiro-core-1.4.0.jar
 classgraph-4.0.6.jar
 rmiio-2.1.2.jar
+istack-commons-runtime-2.2.jar
 jansi-1.17.1.jar
 shiro-cache-1.4.0.jar
 shiro-crypto-hash-1.4.0.jar
@@ -52,7 +52,8 @@ jackson-core-2.9.7.jar
 commons-beanutils-1.9.3.jar
 commons-logging-1.2.jar
 commons-collections-3.2.2.jar
-javax.transaction-api-1.2.jar
+javax.activation-api-1.2.0.jar
+javax.transaction-api-1.3.jar
 grumpy-core-0.2.2.jar
 jetty-xml-9.4.12.v20180830.jar
 jetty-servlet-9.4.12.v20180830.jar
diff --git a/geode-assembly/src/integrationTest/resources/expected_jars.txt 
b/geode-assembly/src/integrationTest/resources/expected_jars.txt
index 4697b40..d86a156 100644
--- a/geode-assembly/src/integrationTest/resources/expected_jars.txt
+++ b/geode-assembly/src/integrationTest/resources/expected_jars.txt
@@ -1,4 +1,4 @@
-activation
+HikariCP
 antlr
 aopalliance
 byte-buddy
@@ -12,25 +12,29 @@ commons-fileupload
 commons-io
 commons-lang
 commons-logging
+commons-math
 commons-modeler
 commons-validator
 fastutil
 findbugs-annotations
+geo
 gfsh-dependencies.jar
+grumpy-core
 guava
-HikariCP
+istack-commons-runtime
 jackson-annotations
 jackson-core
 jackson-databind
 jackson-module-paranamer
 jackson-module-scala
 jansi
+javax.activation
+javax.activation-api
 javax.mail-api
 javax.resource-api
 javax.servlet-api
 javax.transaction-api
 jaxb-api
-jaxb-core
 jaxb-impl
 jetty-http
 jetty-io
@@ -66,9 +70,9 @@ rmiio
 scala-library
 scala-reflect
 shiro-cache
-shiro-core
 shiro-config-core
 shiro-config-ogdl
+shiro-core
 shiro-crypto-cipher
 shiro-crypto-core
 shiro-crypto-hash
@@ -104,6 +108,3 @@ springfox-swagger-common
 springfox-swagger-ui
 swagger-annotations
 swagger-models
-commons-math
-geo
-grumpy-core
diff --git a/geode-connectors/src/test/resources/expected-pom.xml 
b/geode-connectors/src/test/resources/expected-pom.xml
index 53f8a64..b03ce79 100644
--- a/geode-connectors/src/test/resources/expected-pom.xml
+++ b/geode-connectors/src/test/resources/expected-pom.xml
@@ -62,7 +62,7 @@
     <dependency>
       <groupId>javax.xml.bind</groupId>
       <artifactId>jaxb-api</artifactId>
-      <version>2.2.11</version>
+      <version>2.3.1</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 668b2f1..5fd4ed7 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -103,6 +103,8 @@ task createVersionPropertiesFile(dependsOn: 
':writeBuildInfo') {
   }
 }
 
+ext.moduleName = group + '.core'
+
 jar {
 
   from sourceSets.main.output
@@ -111,6 +113,12 @@ jar {
   exclude 'org/apache/geode/management/internal/web/**'
   exclude 'org/apache/geode/internal/i18n/StringIdResourceBundle_ja.txt'
   exclude 'org/apache/geode/admin/doc-files/ds4_0.dtd'
+
+  inputs.property("moduleName", moduleName)
+  manifest {
+    attributes('Automatic-Module-Name': moduleName)
+  }
+
 }
 
 jar.dependsOn(createVersionPropertiesFile)
@@ -161,10 +169,12 @@ dependencies {
   compile('commons-io:commons-io:' + project.'commons-io.version')
   compile('commons-validator:commons-validator:' + 
project.'commons-validator.version')
   compile('commons-digester:commons-digester:' + 
project.'commons-digester.version')
-  compile('javax.activation:activation:' + project.'javax-activation.version')
+  compile('com.sun.activation:javax.activation:' + 
project.'javax-activation.version')
   compile('javax.xml.bind:jaxb-api:' + project.'jaxb.version')
-  compile('com.sun.xml.bind:jaxb-core:' + project.'jaxb.version')
   compile('com.sun.xml.bind:jaxb-impl:' + project.'jaxb.version')
+  compile('com.sun.istack:istack-commons-runtime:' + 
project.'istacks.version') {
+    exclude group: '*'
+  }
 
   compile('org.apache.commons:commons-lang3:' + 
project.'commons-lang3.version')
   compile('commons-modeler:commons-modeler:' + 
project.'commons-modeler.version') {
diff --git 
a/geode-core/src/main/java/org/apache/geode/cache/client/internal/QueryOp.java 
b/geode-core/src/main/java/org/apache/geode/cache/client/internal/QueryOp.java
index 9ca1dbe..792c27f 100644
--- 
a/geode-core/src/main/java/org/apache/geode/cache/client/internal/QueryOp.java
+++ 
b/geode-core/src/main/java/org/apache/geode/cache/client/internal/QueryOp.java
@@ -66,7 +66,7 @@ public class QueryOp {
   /**
    * Note: this class is extended by CreateCQWithIROpImpl.
    */
-  protected static class QueryOpImpl extends AbstractOp {
+  public static class QueryOpImpl extends AbstractOp {
     /**
      * @throws org.apache.geode.SerializationException if serialization fails
      */
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/InternalDataSerializer.java
 
b/geode-core/src/main/java/org/apache/geode/internal/InternalDataSerializer.java
index 1824f80..4ac7b9a 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/InternalDataSerializer.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/InternalDataSerializer.java
@@ -252,6 +252,16 @@ public abstract class InternalDataSerializer extends 
DataSerializer {
   private static final CopyOnWriteHashMap<String, WeakReference<Class<?>>> 
classCache =
       LOAD_CLASS_EACH_TIME ? null : new CopyOnWriteHashMap<>();
   private static final Object cacheAccessLock = new Object();
+
+  private static final String PRE_GEODE_100_TCPSERVER_PACKAGE =
+      "com.gemstone.org.jgroups.stack.tcpserver";
+  private static final String POST_GEODE_100_TCPSERVER_PACKAGE =
+      "org.apache.geode.distributed.internal.tcpserver";
+  private static final String POST_GEODE_190_SERVER_CQIMPL =
+      "org.apache.geode.cache.query.cq.internal.ServerCQImpl";
+  private static final String PRE_GEODE_190_SERVER_CQIMPL =
+      "org.apache.geode.cache.query.internal.cq.ServerCQImpl";
+
   private static InputStreamFilter defaultSerializationFilter = new 
EmptyInputStreamFilter();
   /**
    * A deserialization filter for ObjectInputStreams
@@ -282,10 +292,12 @@ public abstract class InternalDataSerializer extends 
DataSerializer {
   public static String processIncomingClassName(String name) {
     // TCPServer classes are used before a cache exists and support for old 
clients has been
     // initialized
-    String oldPackage = "com.gemstone.org.jgroups.stack.tcpserver";
-    String newPackage = "org.apache.geode.distributed.internal.tcpserver";
-    if (name.startsWith(oldPackage)) {
-      return newPackage + name.substring(oldPackage.length());
+    if (name.startsWith(PRE_GEODE_100_TCPSERVER_PACKAGE)) {
+      return POST_GEODE_100_TCPSERVER_PACKAGE
+          + name.substring(PRE_GEODE_100_TCPSERVER_PACKAGE.length());
+    }
+    if (name.equals(PRE_GEODE_190_SERVER_CQIMPL)) {
+      return POST_GEODE_190_SERVER_CQIMPL;
     }
     OldClientSupportService svc = getOldClientSupportService();
     if (svc != null) {
@@ -305,10 +317,20 @@ public abstract class InternalDataSerializer extends 
DataSerializer {
   public static String processOutgoingClassName(String name, DataOutput out) {
     // TCPServer classes are used before a cache exists and support for old 
clients has been
     // initialized
-    String oldPackage = "com.gemstone.org.jgroups.stack.tcpserver";
-    String newPackage = "org.apache.geode.distributed.internal.tcpserver";
-    if (name.startsWith(newPackage)) {
-      return oldPackage + name.substring(newPackage.length());
+    if (name.startsWith(POST_GEODE_100_TCPSERVER_PACKAGE)) {
+      return PRE_GEODE_100_TCPSERVER_PACKAGE
+          + name.substring(POST_GEODE_100_TCPSERVER_PACKAGE.length());
+    }
+    if (out instanceof VersionedDataStream) {
+      VersionedDataStream vout = (VersionedDataStream) out;
+      Version version = vout.getVersion();
+      if (null != version) {
+        if (version.compareTo(Version.GEODE_190) < 0) {
+          if (name.equals(POST_GEODE_190_SERVER_CQIMPL)) {
+            return PRE_GEODE_190_SERVER_CQIMPL;
+          }
+        }
+      }
     }
     OldClientSupportService svc = getOldClientSupportService();
     if (svc != null) {
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/security/SecurityServiceFactory.java
 
b/geode-core/src/main/java/org/apache/geode/internal/security/SecurityServiceFactory.java
index 5c865de..346955b 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/security/SecurityServiceFactory.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/security/SecurityServiceFactory.java
@@ -21,8 +21,6 @@ import static 
org.apache.geode.distributed.ConfigurationProperties.SECURITY_SHIR
 import java.util.Properties;
 
 import org.apache.commons.lang3.StringUtils;
-import org.apache.shiro.SecurityUtils;
-import org.apache.shiro.UnavailableSecurityManagerException;
 
 import org.apache.geode.internal.cache.CacheConfig;
 import org.apache.geode.internal.security.shiro.SecurityManagerProvider;
@@ -89,9 +87,11 @@ public class SecurityServiceFactory {
   }
 
   private static boolean isShiroInUse() {
+    // Don't import Shiro otherwise clients must include on classpath
     try {
-      return SecurityUtils.getSecurityManager() != null;
-    } catch (UnavailableSecurityManagerException ignore) {
+      return null != 
Class.forName("org.apache.shiro.SecurityUtils").getMethod("getSecurityManager")
+          .invoke(null);
+    } catch (Exception e) {
       return false;
     }
   }
diff --git 
a/geode-core/src/main/resources/META-INF/services/org.apache.geode.security.internal.server.Authenticator
 
b/geode-core/src/main/resources/META-INF/services/org.apache.geode.security.internal.server.Authenticator
deleted file mode 100644
index 2cf1df0..0000000
--- 
a/geode-core/src/main/resources/META-INF/services/org.apache.geode.security.internal.server.Authenticator
+++ /dev/null
@@ -1 +0,0 @@
-org.apache.geode.security.internal.server.NoOpAuthenticator
diff --git a/geode-core/src/test/resources/expected-pom.xml 
b/geode-core/src/test/resources/expected-pom.xml
index 6a8c044..353cf73 100644
--- a/geode-core/src/test/resources/expected-pom.xml
+++ b/geode-core/src/test/resources/expected-pom.xml
@@ -84,28 +84,34 @@
       <scope>compile</scope>
     </dependency>
     <dependency>
-      <groupId>javax.activation</groupId>
-      <artifactId>activation</artifactId>
-      <version>1.1.1</version>
+      <groupId>com.sun.activation</groupId>
+      <artifactId>javax.activation</artifactId>
+      <version>1.2.0</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
       <groupId>javax.xml.bind</groupId>
       <artifactId>jaxb-api</artifactId>
-      <version>2.2.11</version>
+      <version>2.3.1</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
       <groupId>com.sun.xml.bind</groupId>
-      <artifactId>jaxb-core</artifactId>
-      <version>2.2.11</version>
+      <artifactId>jaxb-impl</artifactId>
+      <version>2.3.1</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
-      <groupId>com.sun.xml.bind</groupId>
-      <artifactId>jaxb-impl</artifactId>
-      <version>2.2.11</version>
+      <groupId>com.sun.istack</groupId>
+      <artifactId>istack-commons-runtime</artifactId>
+      <version>2.2</version>
       <scope>compile</scope>
+      <exclusions>
+        <exclusion>
+          <artifactId>*</artifactId>
+          <groupId>*</groupId>
+        </exclusion>
+      </exclusions>
     </dependency>
     <dependency>
       <groupId>org.apache.commons</groupId>
@@ -161,7 +167,7 @@
     <dependency>
       <groupId>javax.resource</groupId>
       <artifactId>javax.resource-api</artifactId>
-      <version>1.7</version>
+      <version>1.7.1</version>
       <scope>compile</scope>
     </dependency>
     <dependency>
diff --git a/geode-cq/build.gradle b/geode-cq/build.gradle
index 60b59a1..23de001 100644
--- a/geode-cq/build.gradle
+++ b/geode-cq/build.gradle
@@ -60,3 +60,12 @@ dependencies {
 
   upgradeTestRuntime(project(':geode-old-versions'))
 }
+
+ext.moduleName = group + '.cq'
+
+jar {
+  inputs.property("moduleName", moduleName)
+  manifest {
+    attributes('Automatic-Module-Name': moduleName)
+  }
+}
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataDUnitTest.java
index fac2d7f..8132231 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataDUnitTest.java
@@ -36,8 +36,8 @@ import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.QueryService;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.cache.query.Struct;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl;
 import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.cache30.CertifiableTestCacheListener;
 import org.apache.geode.cache30.ClientServerTestCase;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataOptimizedExecuteDUnitTest.java
index 8a69fe1..3b9afa7 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.IgnoredException;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolDUnitTest.java
index 732d129..938a12e 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolDUnitTest.java
@@ -14,7 +14,6 @@
  */
 package org.apache.geode.cache.query.cq.dunit;
 
-import static org.apache.geode.cache.query.internal.cq.CqQueryImpl.testHook;
 import static 
org.apache.geode.distributed.ConfigurationProperties.DURABLE_CLIENT_ID;
 import static 
org.apache.geode.distributed.ConfigurationProperties.DURABLE_CLIENT_TIMEOUT;
 import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
@@ -57,9 +56,9 @@ import org.apache.geode.cache.query.QueryService;
 import org.apache.geode.cache.query.RegionNotFoundException;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.cache.query.Struct;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl.TestHook;
 import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl.TestHook;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.cache30.CertifiableTestCacheListener;
 import org.apache.geode.internal.AvailablePortHelper;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolOptimizedExecuteDUnitTest.java
index f87a6f0..b3d0300 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqDataUsingPoolOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.IgnoredException;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfDUnitTest.java
index c4193c9..d5e71e2 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfDUnitTest.java
@@ -34,11 +34,11 @@ import org.apache.geode.cache.query.CqAttributesFactory;
 import org.apache.geode.cache.query.CqListener;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.QueryService;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.ServerCQImpl;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
 import org.apache.geode.cache.query.internal.cq.CqService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
-import org.apache.geode.cache.query.internal.cq.ServerCQImpl;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.internal.AvailablePortHelper;
 import org.apache.geode.internal.logging.LogService;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfUsingPoolDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfUsingPoolDUnitTest.java
index bf0462d..e2f6dd6 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfUsingPoolDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqPerfUsingPoolDUnitTest.java
@@ -34,11 +34,11 @@ import org.apache.geode.cache.query.CqAttributesFactory;
 import org.apache.geode.cache.query.CqListener;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.QueryService;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.ServerCQImpl;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
 import org.apache.geode.cache.query.internal.cq.CqService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
-import org.apache.geode.cache.query.internal.cq.ServerCQImpl;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.internal.AvailablePortHelper;
 import org.apache.geode.test.dunit.Assert;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryOptimizedExecuteDUnitTest.java
index 8bd5085..f5937a4 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryOptimizedExecuteDUnitTest.java
@@ -22,8 +22,8 @@ import org.junit.experimental.categories.Category;
 
 import org.apache.geode.cache.CacheException;
 import org.apache.geode.cache.Region;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.CqServiceProvider;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.distributed.internal.DistributionConfig;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryUsingPoolOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryUsingPoolOptimizedExecuteDUnitTest.java
index 23f9a22..0e6740b 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryUsingPoolOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqQueryUsingPoolOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolDUnitTest.java
index 4ffa009..374b259 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolDUnitTest.java
@@ -26,11 +26,11 @@ import org.junit.experimental.categories.Category;
 
 import org.apache.geode.cache.CacheException;
 import org.apache.geode.cache.Region;
+import org.apache.geode.cache.query.cq.internal.ServerCQImpl;
 import org.apache.geode.cache.query.data.Portfolio;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
 import org.apache.geode.cache.query.internal.cq.CqService;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
-import org.apache.geode.cache.query.internal.cq.ServerCQImpl;
 import org.apache.geode.cache.query.internal.index.IndexManager;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.internal.AvailablePortHelper;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolOptimizedExecuteDUnitTest.java
index 9a07562..a492874 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqResultSetUsingPoolOptimizedExecuteDUnitTest.java
@@ -25,11 +25,11 @@ import org.junit.experimental.categories.Category;
 
 import org.apache.geode.cache.CacheException;
 import org.apache.geode.cache.Region;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.ServerCQImpl;
 import org.apache.geode.cache.query.data.Portfolio;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
-import org.apache.geode.cache.query.internal.cq.ServerCQImpl;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.internal.AvailablePortHelper;
 import org.apache.geode.test.dunit.Assert;
@@ -144,7 +144,7 @@ public class CqResultSetUsingPoolOptimizedExecuteDUnitTest 
extends CqResultSetUs
         CqServiceImpl CqServiceImpl = null;
         try {
           CqServiceImpl =
-              (org.apache.geode.cache.query.internal.cq.CqServiceImpl) 
((DefaultQueryService) getCache()
+              (org.apache.geode.cache.query.cq.internal.CqServiceImpl) 
((DefaultQueryService) getCache()
                   .getQueryService()).getCqService();
         } catch (Exception ex) {
           LogWriterUtils.getLogWriter().info("Failed to get the internal 
CqServiceImpl.", ex);
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsDUnitTest.java
index 3fdf7fa..cd69715 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsDUnitTest.java
@@ -27,13 +27,13 @@ import org.apache.geode.cache.query.CqException;
 import org.apache.geode.cache.query.CqServiceStatistics;
 import org.apache.geode.cache.query.CqStatistics;
 import org.apache.geode.cache.query.QueryService;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceVsdStats;
 import org.apache.geode.cache.query.internal.CqQueryVsdStats;
 import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl;
 import org.apache.geode.cache.query.internal.cq.CqService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
-import org.apache.geode.cache.query.internal.cq.CqServiceVsdStats;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.test.dunit.Host;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsOptimizedExecuteDUnitTest.java
index 0fa0fdf..3c818f9 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolDUnitTest.java
index e747e58..c44c95a 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolDUnitTest.java
@@ -28,13 +28,13 @@ import org.apache.geode.cache.query.CqException;
 import org.apache.geode.cache.query.CqServiceStatistics;
 import org.apache.geode.cache.query.CqStatistics;
 import org.apache.geode.cache.query.QueryService;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceVsdStats;
 import org.apache.geode.cache.query.internal.CqQueryVsdStats;
 import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl;
 import org.apache.geode.cache.query.internal.cq.CqService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
-import org.apache.geode.cache.query.internal.cq.CqServiceVsdStats;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.distributed.ConfigurationProperties;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolOptimizedExecuteDUnitTest.java
index 1614f9a..288dec0 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/CqStatsUsingPoolOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PartitionedRegionCqQueryOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PartitionedRegionCqQueryOptimizedExecuteDUnitTest.java
index 379ba29..a3edd7c 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PartitionedRegionCqQueryOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PartitionedRegionCqQueryOptimizedExecuteDUnitTest.java
@@ -22,8 +22,8 @@ import org.junit.experimental.categories.Category;
 
 import org.apache.geode.cache.CacheException;
 import org.apache.geode.cache.Region;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.CqServiceProvider;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.distributed.internal.DistributionConfig;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PrCqUsingPoolOptimizedExecuteDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PrCqUsingPoolOptimizedExecuteDUnitTest.java
index 8184b95..0c96447 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PrCqUsingPoolOptimizedExecuteDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/cache/query/cq/dunit/PrCqUsingPoolOptimizedExecuteDUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.cache.query.cq.dunit;
 
 import org.junit.experimental.categories.Category;
 
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.test.dunit.Invoke;
 import org.apache.geode.test.dunit.SerializableRunnable;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DurableClientTestBase.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DurableClientTestBase.java
index 6f39b59..b05d485 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DurableClientTestBase.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DurableClientTestBase.java
@@ -52,8 +52,8 @@ import org.apache.geode.cache.query.CqListener;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.QueryService;
 import org.apache.geode.cache.query.RegionNotFoundException;
+import org.apache.geode.cache.query.cq.internal.CqQueryImpl;
 import org.apache.geode.cache.query.data.Portfolio;
-import org.apache.geode.cache.query.internal.cq.CqQueryImpl;
 import org.apache.geode.cache.query.internal.cq.CqService;
 import org.apache.geode.cache30.CacheSerializableRunnable;
 import org.apache.geode.distributed.internal.DistributionConfig;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPDXPostProcessorDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPDXPostProcessorDUnitTest.java
index e6c4c2e..dd3f585 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPDXPostProcessorDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPDXPostProcessorDUnitTest.java
@@ -43,7 +43,7 @@ import org.apache.geode.cache.query.CqEvent;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.CqResults;
 import org.apache.geode.cache.query.QueryService;
-import org.apache.geode.cache.query.internal.cq.CqListenerImpl;
+import org.apache.geode.cache.query.cq.internal.CqListenerImpl;
 import org.apache.geode.pdx.SimpleClass;
 import org.apache.geode.test.dunit.Host;
 import org.apache.geode.test.dunit.VM;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPostProcessorDunitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPostProcessorDunitTest.java
index 6ba4155..a7d07bf 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPostProcessorDunitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/CQPostProcessorDunitTest.java
@@ -46,7 +46,7 @@ import org.apache.geode.cache.query.CqEvent;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.CqResults;
 import org.apache.geode.cache.query.QueryService;
-import org.apache.geode.cache.query.internal.cq.CqListenerImpl;
+import org.apache.geode.cache.query.cq.internal.CqListenerImpl;
 import org.apache.geode.security.templates.UserPasswordAuthInit;
 import org.apache.geode.test.dunit.Host;
 import org.apache.geode.test.dunit.VM;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/ClientCQPostAuthorizationDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/ClientCQPostAuthorizationDUnitTest.java
index 83f3e24..980da40 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/ClientCQPostAuthorizationDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/ClientCQPostAuthorizationDUnitTest.java
@@ -48,7 +48,7 @@ import org.apache.geode.cache.query.QueryService;
 import org.apache.geode.cache.query.RegionNotFoundException;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.cache.query.cq.dunit.CqQueryTestListener;
-import org.apache.geode.cache.query.internal.cq.ClientCQImpl;
+import org.apache.geode.cache.query.cq.internal.ClientCQImpl;
 import org.apache.geode.cache.query.internal.cq.CqService;
 import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
 import org.apache.geode.internal.AvailablePortHelper;
diff --git 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/MultiUserDurableCQAuthzDUnitTest.java
 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/MultiUserDurableCQAuthzDUnitTest.java
index 66f1409..7e34454 100644
--- 
a/geode-cq/src/distributedTest/java/org/apache/geode/security/MultiUserDurableCQAuthzDUnitTest.java
+++ 
b/geode-cq/src/distributedTest/java/org/apache/geode/security/MultiUserDurableCQAuthzDUnitTest.java
@@ -46,7 +46,7 @@ import org.apache.geode.cache.query.QueryService;
 import org.apache.geode.cache.query.RegionNotFoundException;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.cache.query.cq.dunit.CqQueryTestListener;
-import org.apache.geode.cache.query.internal.cq.ClientCQImpl;
+import org.apache.geode.cache.query.cq.internal.ClientCQImpl;
 import org.apache.geode.internal.AvailablePortHelper;
 import org.apache.geode.internal.cache.GemFireCacheImpl;
 import org.apache.geode.security.generator.AuthzCredentialGenerator;
diff --git 
a/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
 
b/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
index 17e9650..8f1f384 100755
--- 
a/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
+++ 
b/geode-cq/src/integrationTest/java/org/apache/geode/codeAnalysis/AnalyzeCQSerializablesJUnitTest.java
@@ -16,6 +16,7 @@ package org.apache.geode.codeAnalysis;
 
 import org.junit.experimental.categories.Category;
 
+import org.apache.geode.cache.query.cq.internal.CQDistributedSystemService;
 import org.apache.geode.test.junit.categories.ClientSubscriptionTest;
 
 @Category({ClientSubscriptionTest.class})
@@ -25,4 +26,9 @@ public class AnalyzeCQSerializablesJUnitTest extends 
AnalyzeSerializablesJUnitTe
   protected String getModuleName() {
     return "geode-cq";
   }
+
+  @Override
+  protected Class getModuleClass() {
+    return CQDistributedSystemService.class;
+  }
 }
diff --git 
a/geode-cq/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
 
b/geode-cq/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
index faea227..fc1eae9 100644
--- 
a/geode-cq/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
+++ 
b/geode-cq/src/integrationTest/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
@@ -1,4 +1,4 @@
-org/apache/geode/cache/query/internal/cq/ServerCQImpl,2
+org/apache/geode/cache/query/cq/internal/ServerCQImpl,2
 fromData,64
 toData,47
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/CQDistributedSystemService.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CQDistributedSystemService.java
similarity index 90%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/CQDistributedSystemService.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CQDistributedSystemService.java
index b5057bf..fbc3bc5 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/CQDistributedSystemService.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CQDistributedSystemService.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.io.IOException;
 import java.net.URL;
@@ -20,6 +20,8 @@ import java.util.Collection;
 
 import org.apache.geode.distributed.internal.DistributedSystemService;
 import org.apache.geode.distributed.internal.InternalDistributedSystem;
+import org.apache.geode.internal.ClassPathLoader;
+import org.apache.geode.internal.InternalDataSerializer;
 
 public class CQDistributedSystemService implements DistributedSystemService {
   @Override
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ClientCQImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ClientCQImpl.java
similarity index 99%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ClientCQImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ClientCQImpl.java
index f0a4eb3..53d14a4 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ClientCQImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ClientCQImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.util.concurrent.ConcurrentLinkedQueue;
 
@@ -22,7 +22,6 @@ import org.apache.geode.CancelException;
 import org.apache.geode.SystemFailure;
 import org.apache.geode.cache.client.internal.Connection;
 import org.apache.geode.cache.client.internal.ProxyCache;
-import org.apache.geode.cache.client.internal.ServerCQProxyImpl;
 import org.apache.geode.cache.client.internal.ServerRegionProxy;
 import org.apache.geode.cache.client.internal.UserAttributes;
 import org.apache.geode.cache.query.CqAttributes;
@@ -33,7 +32,9 @@ import org.apache.geode.cache.query.CqListener;
 import org.apache.geode.cache.query.CqResults;
 import org.apache.geode.cache.query.CqStatusListener;
 import org.apache.geode.cache.query.RegionNotFoundException;
+import org.apache.geode.cache.query.cq.internal.ops.ServerCQProxyImpl;
 import org.apache.geode.cache.query.internal.CqStateImpl;
+import org.apache.geode.cache.query.internal.cq.ClientCQ;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.LocalRegion;
 import org.apache.geode.internal.logging.LogService;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqAttributesMutatorImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqAttributesMutatorImpl.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqAttributesMutatorImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqAttributesMutatorImpl.java
index d79bfb2..66e928a 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqAttributesMutatorImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqAttributesMutatorImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import org.apache.geode.cache.query.CqAttributesMutator;
 import org.apache.geode.cache.query.CqListener;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqConflatable.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqConflatable.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqConflatable.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqConflatable.java
index 8e16c17..c43bb91 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqConflatable.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqConflatable.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.io.Serializable;
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqEventImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqEventImpl.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqEventImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqEventImpl.java
index 3ad9b17..631b59f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqEventImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqEventImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 
 /**
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqListenerImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqListenerImpl.java
similarity index 97%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqListenerImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqListenerImpl.java
index 49be90c..0e180bc 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqListenerImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqListenerImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import org.apache.geode.cache.query.CqEvent;
 import org.apache.geode.cache.query.CqListener;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqQueryImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqQueryImpl.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqQueryImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqQueryImpl.java
index 98c690c..1641b1f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqQueryImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqQueryImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.util.HashSet;
 import java.util.List;
@@ -36,6 +36,8 @@ import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.DefaultQuery;
 import org.apache.geode.cache.query.internal.ExecutionContext;
 import org.apache.geode.cache.query.internal.QueryExecutionContext;
+import org.apache.geode.cache.query.internal.cq.CqService;
+import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.LocalRegion;
 import org.apache.geode.internal.logging.InternalLogWriter;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceFactoryImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceFactoryImpl.java
similarity index 81%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceFactoryImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceFactoryImpl.java
index 9cc2eea..8c3b45f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceFactoryImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceFactoryImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.io.DataInput;
 import java.io.IOException;
@@ -20,19 +20,21 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 
+import org.apache.geode.cache.query.cq.internal.command.CloseCQ;
+import org.apache.geode.cache.query.cq.internal.command.ExecuteCQ;
+import org.apache.geode.cache.query.cq.internal.command.ExecuteCQ61;
+import org.apache.geode.cache.query.cq.internal.command.GetCQStats;
+import org.apache.geode.cache.query.cq.internal.command.GetDurableCQs;
+import org.apache.geode.cache.query.cq.internal.command.MonitorCQ;
+import org.apache.geode.cache.query.cq.internal.command.StopCQ;
+import org.apache.geode.cache.query.internal.cq.CqService;
+import org.apache.geode.cache.query.internal.cq.ServerCQ;
 import org.apache.geode.cache.query.internal.cq.spi.CqServiceFactory;
 import org.apache.geode.internal.Version;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.tier.Command;
 import org.apache.geode.internal.cache.tier.MessageType;
 import org.apache.geode.internal.cache.tier.sockets.CommandInitializer;
-import org.apache.geode.internal.cache.tier.sockets.command.CloseCQ;
-import org.apache.geode.internal.cache.tier.sockets.command.ExecuteCQ;
-import org.apache.geode.internal.cache.tier.sockets.command.ExecuteCQ61;
-import org.apache.geode.internal.cache.tier.sockets.command.GetCQStats;
-import org.apache.geode.internal.cache.tier.sockets.command.GetDurableCQs;
-import org.apache.geode.internal.cache.tier.sockets.command.MonitorCQ;
-import org.apache.geode.internal.cache.tier.sockets.command.StopCQ;
 
 public class CqServiceFactoryImpl implements CqServiceFactory {
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceImpl.java
similarity index 99%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceImpl.java
index de79173..7227eae 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.util.ArrayList;
 import java.util.Collection;
@@ -42,7 +42,6 @@ import org.apache.geode.cache.client.Pool;
 import org.apache.geode.cache.client.internal.GetEventValueOp;
 import org.apache.geode.cache.client.internal.InternalPool;
 import org.apache.geode.cache.client.internal.QueueManager;
-import org.apache.geode.cache.client.internal.ServerCQProxyImpl;
 import org.apache.geode.cache.client.internal.UserAttributes;
 import org.apache.geode.cache.query.CqAttributes;
 import org.apache.geode.cache.query.CqClosedException;
@@ -56,11 +55,16 @@ import org.apache.geode.cache.query.QueryException;
 import org.apache.geode.cache.query.QueryInvalidException;
 import org.apache.geode.cache.query.RegionNotFoundException;
 import org.apache.geode.cache.query.SelectResults;
+import org.apache.geode.cache.query.cq.internal.ops.ServerCQProxyImpl;
 import org.apache.geode.cache.query.internal.CompiledSelect;
 import org.apache.geode.cache.query.internal.CqQueryVsdStats;
 import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.DefaultQuery;
 import org.apache.geode.cache.query.internal.ExecutionContext;
+import org.apache.geode.cache.query.internal.cq.ClientCQ;
+import org.apache.geode.cache.query.internal.cq.CqService;
+import org.apache.geode.cache.query.internal.cq.InternalCqQuery;
+import org.apache.geode.cache.query.internal.cq.ServerCQ;
 import org.apache.geode.distributed.internal.DistributionAdvisor.Profile;
 import org.apache.geode.distributed.internal.DistributionConfig;
 import org.apache.geode.internal.cache.CacheDistributionAdvisor.CacheProfile;
@@ -304,7 +308,7 @@ public class CqServiceImpl implements CqService {
     return cQuery;
   }
 
-  protected CacheClientProxy getCacheClientProxy(ClientProxyMembershipID 
clientProxyId,
+  public CacheClientProxy getCacheClientProxy(ClientProxyMembershipID 
clientProxyId,
       CacheClientNotifier ccn) throws CqException {
     CacheClientProxy proxy = ccn.getClientProxy(clientProxyId, true);
     if (proxy == null) {
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceStatisticsImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceStatisticsImpl.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceStatisticsImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceStatisticsImpl.java
index da46d39..130aae4 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceStatisticsImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceStatisticsImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.CqServiceStatistics;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceVsdStats.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceVsdStats.java
similarity index 99%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceVsdStats.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceVsdStats.java
index 1688de7..86931da 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqServiceVsdStats.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqServiceVsdStats.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import org.apache.logging.log4j.Logger;
 
@@ -24,6 +24,7 @@ import org.apache.geode.StatisticsTypeFactory;
 import org.apache.geode.cache.query.CqException;
 import org.apache.geode.cache.query.CqQuery;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
+import org.apache.geode.cache.query.internal.cq.CqService;
 import org.apache.geode.internal.NanoTimer;
 import org.apache.geode.internal.cache.FilterProfile;
 import org.apache.geode.internal.cache.InternalCache;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqStatisticsImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqStatisticsImpl.java
similarity index 97%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqStatisticsImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqStatisticsImpl.java
index 3fbbc56..a3717eb 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/CqStatisticsImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/CqStatisticsImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import org.apache.geode.cache.query.CqStatistics;
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ServerCQImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ServerCQImpl.java
similarity index 99%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ServerCQImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ServerCQImpl.java
index cb029fd..b1a4f0f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/query/internal/cq/ServerCQImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ServerCQImpl.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.query.internal.cq;
+package org.apache.geode.cache.query.cq.internal;
 
 import java.io.DataInput;
 import java.io.DataOutput;
@@ -43,6 +43,8 @@ import org.apache.geode.cache.query.internal.CompiledRegion;
 import org.apache.geode.cache.query.internal.CompiledSelect;
 import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.DefaultQuery;
+import org.apache.geode.cache.query.internal.cq.CqServiceProvider;
+import org.apache.geode.cache.query.internal.cq.ServerCQ;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.LocalRegion;
 import org.apache.geode.internal.cache.Token;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/BaseCQCommand.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/BaseCQCommand.java
similarity index 93%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/BaseCQCommand.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/BaseCQCommand.java
index ef2f144..e8d864a 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/BaseCQCommand.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/BaseCQCommand.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import org.apache.geode.internal.cache.tier.sockets.BaseCommandQuery;
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQ.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/CloseCQ.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQ.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/CloseCQ.java
index 220e898..6274840 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQ.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/CloseCQ.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 import java.util.HashSet;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ.java
similarity index 99%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ.java
index 94ac68b..069986f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 import java.util.Set;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ61.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ61.java
index c4c9a09..f5825fc 100755
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/ExecuteCQ61.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 import java.util.Set;
@@ -22,11 +22,11 @@ import org.apache.logging.log4j.Logger;
 import org.apache.geode.cache.operations.ExecuteCQOperationContext;
 import org.apache.geode.cache.query.CqException;
 import org.apache.geode.cache.query.Query;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
+import org.apache.geode.cache.query.cq.internal.ServerCQImpl;
 import org.apache.geode.cache.query.internal.DefaultQuery;
 import org.apache.geode.cache.query.internal.DefaultQueryService;
-import org.apache.geode.cache.query.internal.cq.CqServiceImpl;
 import org.apache.geode.cache.query.internal.cq.CqServiceProvider;
-import org.apache.geode.cache.query.internal.cq.ServerCQImpl;
 import org.apache.geode.distributed.internal.DistributionStats;
 import org.apache.geode.internal.cache.tier.CachedRegionHelper;
 import org.apache.geode.internal.cache.tier.Command;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetCQStats.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetCQStats.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetCQStats.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetCQStats.java
index 69be8eb..7b15e7f 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetCQStats.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetCQStats.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetDurableCQs.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetDurableCQs.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetDurableCQs.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetDurableCQs.java
index 9da8df1..713638a 100755
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/GetDurableCQs.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/GetDurableCQs.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 import java.util.ArrayList;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/MonitorCQ.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/MonitorCQ.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/MonitorCQ.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/MonitorCQ.java
index fd00633..332e179 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/MonitorCQ.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/MonitorCQ.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 
diff --git 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQ.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/StopCQ.java
similarity index 98%
rename from 
geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQ.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/StopCQ.java
index 566746c..fedf3d4 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQ.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/command/StopCQ.java
@@ -12,7 +12,7 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.internal.cache.tier.sockets.command;
+package org.apache.geode.cache.query.cq.internal.command;
 
 import java.io.IOException;
 import java.util.HashSet;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CloseCQOp.java 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CloseCQOp.java
similarity index 87%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/CloseCQOp.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CloseCQOp.java
index 16f6b90..9c18b55 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CloseCQOp.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CloseCQOp.java
@@ -12,9 +12,12 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
-import org.apache.geode.cache.client.internal.CreateCQOp.CreateCQOpImpl;
+import org.apache.geode.cache.client.internal.AbstractOp;
+import org.apache.geode.cache.client.internal.ConnectionStats;
+import org.apache.geode.cache.client.internal.ExecutablePool;
+import org.apache.geode.cache.query.cq.internal.ops.CreateCQOp.CreateCQOpImpl;
 import org.apache.geode.internal.cache.tier.MessageType;
 
 /**
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQOp.java 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQOp.java
similarity index 95%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQOp.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQOp.java
index faea01e..0f0c81b 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQOp.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQOp.java
@@ -12,10 +12,14 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
 import org.apache.geode.InternalGemFireError;
 import org.apache.geode.cache.client.ServerOperationException;
+import org.apache.geode.cache.client.internal.AbstractOp;
+import org.apache.geode.cache.client.internal.Connection;
+import org.apache.geode.cache.client.internal.ConnectionStats;
+import org.apache.geode.cache.client.internal.ExecutablePool;
 import org.apache.geode.internal.Version;
 import org.apache.geode.internal.cache.tier.MessageType;
 import org.apache.geode.internal.cache.tier.sockets.ChunkedMessage;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQWithIROp.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQWithIROp.java
similarity index 93%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQWithIROp.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQWithIROp.java
index 7f68731..bf5be6e 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/CreateCQWithIROp.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/CreateCQWithIROp.java
@@ -12,8 +12,11 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
+import org.apache.geode.cache.client.internal.AbstractOp;
+import org.apache.geode.cache.client.internal.ConnectionStats;
+import org.apache.geode.cache.client.internal.ExecutablePool;
 import org.apache.geode.cache.client.internal.QueryOp.QueryOpImpl;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.internal.cache.tier.MessageType;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/GetDurableCQsOp.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/GetDurableCQsOp.java
similarity index 93%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/GetDurableCQsOp.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/GetDurableCQsOp.java
index 1ac7cac..8245959 100755
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/GetDurableCQsOp.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/GetDurableCQsOp.java
@@ -12,14 +12,17 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
 import java.util.LinkedList;
 import java.util.List;
 
 import org.apache.geode.InternalGemFireError;
 import org.apache.geode.cache.client.ServerOperationException;
-import org.apache.geode.cache.client.internal.CreateCQOp.CreateCQOpImpl;
+import org.apache.geode.cache.client.internal.AbstractOp;
+import org.apache.geode.cache.client.internal.ConnectionStats;
+import org.apache.geode.cache.client.internal.ExecutablePool;
+import org.apache.geode.cache.query.cq.internal.ops.CreateCQOp.CreateCQOpImpl;
 import org.apache.geode.internal.Version;
 import org.apache.geode.internal.cache.tier.MessageType;
 import org.apache.geode.internal.cache.tier.sockets.ChunkedMessage;
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/ServerCQProxyImpl.java
 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/ServerCQProxyImpl.java
similarity index 92%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/ServerCQProxyImpl.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/ServerCQProxyImpl.java
index 9412d85..f86aadb 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/ServerCQProxyImpl.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/ServerCQProxyImpl.java
@@ -12,10 +12,14 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
 import java.util.List;
 
+import org.apache.geode.cache.client.internal.Connection;
+import org.apache.geode.cache.client.internal.ExecutablePool;
+import org.apache.geode.cache.client.internal.InternalPool;
+import org.apache.geode.cache.client.internal.ServerProxy;
 import org.apache.geode.cache.query.SelectResults;
 import org.apache.geode.cache.query.internal.CqStateImpl;
 import org.apache.geode.cache.query.internal.cq.ClientCQ;
@@ -41,7 +45,7 @@ public class ServerCQProxyImpl extends ServerProxy {
    * @param sp server proxy whose pool we are to use
    */
   public ServerCQProxyImpl(ServerProxy sp) {
-    this(sp.pool);
+    this(sp.getPool());
   }
 
   /**
diff --git 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/StopCQOp.java 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/StopCQOp.java
similarity index 87%
rename from 
geode-cq/src/main/java/org/apache/geode/cache/client/internal/StopCQOp.java
rename to 
geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/StopCQOp.java
index ae82bde..d285d0d 100644
--- 
a/geode-cq/src/main/java/org/apache/geode/cache/client/internal/StopCQOp.java
+++ 
b/geode-cq/src/main/java/org/apache/geode/cache/query/cq/internal/ops/StopCQOp.java
@@ -12,9 +12,12 @@
  * or implied. See the License for the specific language governing permissions 
and limitations under
  * the License.
  */
-package org.apache.geode.cache.client.internal;
+package org.apache.geode.cache.query.cq.internal.ops;
 
-import org.apache.geode.cache.client.internal.CreateCQOp.CreateCQOpImpl;
+import org.apache.geode.cache.client.internal.AbstractOp;
+import org.apache.geode.cache.client.internal.ConnectionStats;
+import org.apache.geode.cache.client.internal.ExecutablePool;
+import org.apache.geode.cache.query.cq.internal.ops.CreateCQOp.CreateCQOpImpl;
 import org.apache.geode.internal.cache.tier.MessageType;
 
 /**
diff --git 
a/geode-cq/src/main/resources/META-INF/services/org.apache.geode.cache.query.internal.cq.spi.CqServiceFactory
 
b/geode-cq/src/main/resources/META-INF/services/org.apache.geode.cache.query.internal.cq.spi.CqServiceFactory
index 0e1f928..394be64 100644
--- 
a/geode-cq/src/main/resources/META-INF/services/org.apache.geode.cache.query.internal.cq.spi.CqServiceFactory
+++ 
b/geode-cq/src/main/resources/META-INF/services/org.apache.geode.cache.query.internal.cq.spi.CqServiceFactory
@@ -12,4 +12,4 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-org.apache.geode.cache.query.internal.cq.CqServiceFactoryImpl
+org.apache.geode.cache.query.cq.internal.CqServiceFactoryImpl
diff --git 
a/geode-cq/src/main/resources/META-INF/services/org.apache.geode.distributed.internal.DistributedSystemService
 
b/geode-cq/src/main/resources/META-INF/services/org.apache.geode.distributed.internal.DistributedSystemService
index 8669119..7b645e3 100644
--- 
a/geode-cq/src/main/resources/META-INF/services/org.apache.geode.distributed.internal.DistributedSystemService
+++ 
b/geode-cq/src/main/resources/META-INF/services/org.apache.geode.distributed.internal.DistributedSystemService
@@ -12,5 +12,5 @@
 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 # See the License for the specific language governing permissions and
 # limitations under the License.
-org.apache.geode.internal.CQDistributedSystemService
+org.apache.geode.cache.query.cq.internal.CQDistributedSystemService
 
diff --git 
a/geode-cq/src/main/resources/org/apache/geode/internal/sanctioned-geode-cq-serializables.txt
 
b/geode-cq/src/main/resources/org/apache/geode/cache/query/cq/internal/sanctioned-geode-cq-serializables.txt
similarity index 69%
rename from 
geode-cq/src/main/resources/org/apache/geode/internal/sanctioned-geode-cq-serializables.txt
rename to 
geode-cq/src/main/resources/org/apache/geode/cache/query/cq/internal/sanctioned-geode-cq-serializables.txt
index bdd8db9..21e0e4b 100755
--- 
a/geode-cq/src/main/resources/org/apache/geode/internal/sanctioned-geode-cq-serializables.txt
+++ 
b/geode-cq/src/main/resources/org/apache/geode/cache/query/cq/internal/sanctioned-geode-cq-serializables.txt
@@ -1 +1 @@
-org/apache/geode/cache/query/internal/cq/CqConflatable,true,-7215022132135862557,conflate:boolean,id:org/apache/geode/internal/cache/EventID,key:java/lang/Object,regionname:java/lang/String,value:java/lang/Object
+org/apache/geode/cache/query/cq/internal/CqConflatable,true,-7215022132135862557,conflate:boolean,id:org/apache/geode/internal/cache/EventID,key:java/lang/Object,regionname:java/lang/String,value:java/lang/Object
diff --git 
a/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceImplJUnitTest.java
 
b/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceImplJUnitTest.java
index 6499a20..90feea1 100644
--- 
a/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceImplJUnitTest.java
+++ 
b/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceImplJUnitTest.java
@@ -23,6 +23,7 @@ import org.junit.Test;
 
 import org.apache.geode.CancelCriterion;
 import org.apache.geode.cache.query.CqException;
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.distributed.DistributedSystem;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.tier.sockets.CacheClientNotifier;
diff --git 
a/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceUnitTest.java
 
b/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceUnitTest.java
index facc4b0..f16ac2c 100644
--- 
a/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceUnitTest.java
+++ 
b/geode-cq/src/test/java/org/apache/geode/cache/query/internal/cq/CqServiceUnitTest.java
@@ -19,6 +19,7 @@ import static org.junit.Assert.assertEquals;
 
 import org.junit.Test;
 
+import org.apache.geode.cache.query.cq.internal.CqServiceImpl;
 import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID;
 import org.apache.geode.test.fake.Fakes;
 
diff --git 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQTest.java
 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQTest.java
index d0db3e1..d883afb 100644
--- 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQTest.java
+++ 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/CloseCQTest.java
@@ -22,6 +22,7 @@ import static org.mockito.Mockito.verify;
 import org.junit.Rule;
 import org.junit.Test;
 
+import org.apache.geode.cache.query.cq.internal.command.CloseCQ;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
 import org.apache.geode.test.dunit.rules.CQUnitTestRule;
diff --git 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61Test.java
 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61Test.java
index 5be7216..5ec3fcb 100644
--- 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61Test.java
+++ 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/ExecuteCQ61Test.java
@@ -22,6 +22,7 @@ import static org.mockito.Mockito.verify;
 import org.junit.Rule;
 import org.junit.Test;
 
+import org.apache.geode.cache.query.cq.internal.command.ExecuteCQ61;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
 import org.apache.geode.test.dunit.rules.CQUnitTestRule;
diff --git 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQTest.java
 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQTest.java
index a146f83..3c53147 100644
--- 
a/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQTest.java
+++ 
b/geode-cq/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/StopCQTest.java
@@ -22,6 +22,7 @@ import static org.mockito.Mockito.verify;
 import org.junit.Rule;
 import org.junit.Test;
 
+import org.apache.geode.cache.query.cq.internal.command.StopCQ;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
 import org.apache.geode.security.ResourcePermission.Target;
diff --git 
a/geode-docs/tools_modules/http_session_mgmt/weblogic_setting_up_the_module.html.md.erb
 
b/geode-docs/tools_modules/http_session_mgmt/weblogic_setting_up_the_module.html.md.erb
index 999ed45..f239b2a 100644
--- 
a/geode-docs/tools_modules/http_session_mgmt/weblogic_setting_up_the_module.html.md.erb
+++ 
b/geode-docs/tools_modules/http_session_mgmt/weblogic_setting_up_the_module.html.md.erb
@@ -91,7 +91,7 @@ If you are deploying an ear file:
     lib/fastutil-7.0.2.jar
     lib/geode-core-1.0.0.jar
     lib/geode-json-1.0.0.jar
-    lib/javax.transaction-api-1.2.jar
+    lib/javax.transaction-api-1.3.jar
     lib/jgroups-3.6.8.Final.jar
     lib/log4j-api-2.5.jar
     lib/log4j-core-2.5.jar
diff --git 
a/geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/ProcessManager.java
 
b/geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/ProcessManager.java
index b3ddb32..6b864e4 100755
--- 
a/geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/ProcessManager.java
+++ 
b/geode-dunit/src/main/java/org/apache/geode/test/dunit/internal/ProcessManager.java
@@ -183,8 +183,44 @@ public class ProcessManager {
     ioTransport.start();
   }
 
+  private String removeModulesFromPath(String classpath, String... modules) {
+    for (String module : modules) {
+      classpath = removeModuleFromGradlePath(classpath, module);
+      classpath = removeModuleFromEclipsePath(classpath, module);
+    }
+    return classpath;
+  }
+
+  private String removeModuleFromEclipsePath(String classpath, String module) {
+    String buildDir = File.separator + module + File.separator + "out" + 
File.separator;
+
+    String mainClasses = buildDir + "production";
+
+    classpath = removeFromPath(classpath, mainClasses);
+    return classpath;
+  }
+
+  private String removeModuleFromGradlePath(String classpath, String module) {
+    String buildDir = File.separator + module + File.separator + "build" + 
File.separator;
+
+    String mainClasses = buildDir + "classes" + File.separator + "java" + 
File.separator + "main";
+    classpath = removeFromPath(classpath, mainClasses);
+
+    String libDir = buildDir + "libs";
+    classpath = removeFromPath(classpath, libDir);
+
+    String mainResources = buildDir + "resources" + File.separator + "main";
+    classpath = removeFromPath(classpath, mainResources);
+
+    String generatedResources = buildDir + "generated-resources" + 
File.separator + "main";
+    classpath = removeFromPath(classpath, generatedResources);
+
+    return classpath;
+  }
+
   private String[] buildJavaCommand(int vmNum, int namingPort, String version) 
{
-    String cmd = System.getProperty("java.home") + File.separator + "bin" + 
File.separator + "java";
+    String cmd = System.getProperty("java.home") + File.separator
+        + "bin" + File.separator + "java";
     String dunitClasspath = System.getProperty("java.class.path");
     String separator = File.separator;
     String classPath;
@@ -192,27 +228,10 @@ public class ProcessManager {
       classPath = dunitClasspath;
     } else {
       // remove current-version product classes and resources from the 
classpath
-      String buildDir = separator + "geode-core" + separator + "build" + 
separator;
-
-      String mainClasses = buildDir + "classes" + separator + "main";
-      dunitClasspath = removeFromPath(dunitClasspath, mainClasses);
-
-      dunitClasspath = removeFromPath(dunitClasspath, 
"geode-core/out/production");
-
-      String mainResources = buildDir + "resources" + separator + "main";
-      dunitClasspath = removeFromPath(dunitClasspath, mainResources);
-
-      String generatedResources = buildDir + "generated-resources" + separator 
+ "main";
-      dunitClasspath = removeFromPath(dunitClasspath, generatedResources);
-
-      buildDir = separator + "geode-common" + separator + "build" + separator 
+ "classes"
-          + separator + "main";
-      dunitClasspath = removeFromPath(dunitClasspath, buildDir);
-
-      buildDir = separator + "geode-json" + separator + "build" + separator + 
"classes" + separator
-          + "main";
-      dunitClasspath = removeFromPath(dunitClasspath, buildDir);
-
+      dunitClasspath =
+          removeModulesFromPath(dunitClasspath, "geode-core", "geode-cq", 
"geode-common",
+              "geode-json",
+              "geode-wan");
       classPath = versionManager.getClasspath(version) + File.pathSeparator + 
dunitClasspath;
     }
 
diff --git 
a/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
 
b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
index 01a20c5..898f105 100644
--- 
a/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
+++ 
b/geode-junit/src/main/java/org/apache/geode/codeAnalysis/AnalyzeSerializablesJUnitTestBase.java
@@ -112,7 +112,7 @@ public abstract class AnalyzeSerializablesJUnitTestBase {
 
   public void loadExpectedSerializables() throws Exception {
     this.expectedSerializablesFile =
-        getResourceAsFile(InternalDataSerializer.class, 
expectedSerializablesFileName);
+        getResourceAsFile(getModuleClass(), expectedSerializablesFileName);
     assertThat(this.expectedSerializablesFile).exists().canRead();
 
     this.expectedSerializables =
@@ -151,6 +151,10 @@ public abstract class AnalyzeSerializablesJUnitTestBase {
    */
   protected abstract String getModuleName();
 
+  protected Class getModuleClass() {
+    return InternalDataSerializer.class;
+  }
+
   @Test
   public void testDataSerializables() throws Exception {
     assumeTrue("Ignoring this test when java version is 9 and above",
diff --git a/gradle/dependency-versions.properties 
b/gradle/dependency-versions.properties
index 40aae8e..3ca2691 100644
--- a/gradle/dependency-versions.properties
+++ b/gradle/dependency-versions.properties
@@ -45,6 +45,7 @@ hamcrest-all.version = 1.3
 httpclient.version = 4.5.6
 httpcore.version = 4.4.10
 httpunit.version = 1.7.3
+istacks.version = 2.2
 jackson.version = 2.9.7
 jackson-module-scala_2.10.version = 2.9.6
 jansi.version = 1.17.1
@@ -52,12 +53,12 @@ javax.ejb-api.version = 3.0
 javax.jsr250-api.version = 1.0
 javax.mail-api.version = 1.6.2
 javax.persistence-api.version = 2.2.1
-javax.resource-api.version = 1.7
+javax.resource-api.version = 1.7.1
 javax.servlet-api.version = 3.1.0
-javax.transaction-api.version = 1.2
+javax.transaction-api.version = 1.3
 jedis.version = 2.9.0
-jaxb.version = 2.2.11
-javax-activation.version = 1.1.1
+jaxb.version = 2.3.1
+javax-activation.version = 1.2.0
 javax-annotation.version = 1.3.2
 # The jetty version is also hard-coded in geode-assembly:test
 # at o.a.g.sessions.tests.GenericAppServerInstall.java
diff --git a/settings.gradle b/settings.gradle
index c39feb3..a4a2cc2 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -55,6 +55,7 @@ include 'geode-experimental-driver'
 include 'geode-protobuf-messages'
 include 'extensions:session-testing-war'
 include 'geode-concurrency-test'
+include 'boms:geode-client-bom'
 
 
 if (GradleVersion.current() < GradleVersion.version(minimumGradleVersion)) {

Reply via email to