Description
Is your feature request related to a problem? Please describe.
The backend.getFactory function should be made public. This can allow backends to be written can instantiate any other backend implementation (S3, HDFS, etc.) without having to re-implement the factory method explicitly. For example, I am working on a "shadow" client that can read/write to multiple backends and allow fallback from one to the other, say S3 and HDFS. However to implement this I have to re-implement the HDFS and S3 backend client factory methods since I can't use "getFactory" to access already registered factory functions.
Describe the solution you'd like
Make backend.getFactory a public method.
Describe alternatives you've considered
I have had to re-implement the factory methods for backend clients I am using in my "shadow" client