ACCUMULO-2470 (unit tests for server/base) is made difficult by the heavy dependence on static method calls in our architecture. This ticket is for introducing an InstanceFactory interface that will greatly ease testing of code that currently retrieves instances via static methods (e.g., HdfsZooInstance.getInstance()).
- Work here should be limited to creating InstanceFactory and its implementations, and not integrating it into existing code (yet).
- Work is limited to 1.6 and later. To avoid perturbing the 1.6.0 release no new code may be introduced into the public API (Instance is in the public API).
- A refactoring of the client API is being considered (see
ACCUMULO-2128), so this change should not further complicate - and should hopefully help - that future effort.