GitHub user galen-pivotal opened a pull request: https://github.com/apache/geode/pull/586
GEODE-3075: initial flow adding the new client protocol to core. Create `ServerConnectionFactory`, which creates either instances of LegacyServerConnection (identical in functionality to the old `ServerConnection`) or `NewProtocolServerConnection` (which is currently basically a stub, but will never get called unless a feature flag is set). This is the initial work for GEODE-3074, and will allow us to continue to work on further tasks for that project. An explicit goal with this PR is to not disturb any existing functionality. Unless a feature flag is set *and* a connection with a certain magic byte is received, server connections will work as before. If you see something that you think may break, please let me know. Have a nice day! ---- Thank you for submitting a contribution to Apache Geode. In order to streamline the review of the contribution we ask you to ensure the following steps have been taken: ### For all changes: - [x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message? - [x] Has your PR been rebased against the latest commit within the target branch (typically `develop`)? - [ ] Is your initial contribution a single, squashed commit? - [x] Does `gradlew build` run cleanly? - [x] Have you written or updated unit tests to verify your changes? - [n/a] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)? ### Note: Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible. If you need help, please send an email to dev@geode.apache.org. You can merge this pull request into a Git repository by running: $ git pull https://github.com/galen-pivotal/geode feature/GEODE-3075 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/geode/pull/586.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #586 ---- commit 61b2c2746ea7128a5aafec7469c23fc6417f283a Author: Galen OSullivan <gosulli...@pivotal.io> Date: 2017-06-12T16:33:35Z GEODE-3075: Initial refactor adding NewProtocolServerConnection subclassing `ServerConnection`. The new code is broken but it won't be called under normal operation, since it's gated on a system property, "geode.feature-protobuf-protocol" Further refactoring and feature work to come. commit 649f4d31fd78d5301c13d29f7cd10481fda824b2 Author: Galen OSullivan <gosulli...@pivotal.io> Date: 2017-06-16T16:59:11Z GEODE-3075: Add an integration test for the ServerConnectionFactory the current implementation is bogus, but does test that the flow works. ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---