Create a project structure that separates the different parts of ZooKeeper into a more meaningful packages for the future maven build.
This should be done in iterations to limit the impact.
- First iteration - safe changes including moving src/docs to zk-docs, creating zk-it empty directory. Build and conf directory remains unchanged. These changes also have minimum impact on PR’s.
- Second iteration - move src/recipes to zk-recipes.
- Third iteration - move src/contrib to zk-contrib.
- Fourth iteration - move src/c to zk-client (java will be moved in Phase 2)
- Fifth iteration - move jute under src directory
- Sixth iteration - move src/java/main to zk-server, also separate client code from server code, move common files to zookeeper-common.
It is not feasible to separate core java files into server, client and common. It will remain in zookeeper-server.