Enrico Olivelli created BOOKKEEPER-942:
------------------------------------------
Summary: Clean up Public Client Bootstrap API
Key: BOOKKEEPER-942
URL: https://issues.apache.org/jira/browse/BOOKKEEPER-942
Project: Bookkeeper
Issue Type: Improvement
Components: bookkeeper-client
Affects Versions: 4.4.0
Reporter: Enrico Olivelli
Assignee: Enrico Olivelli
The idea is to clean up the public client API to be used to bootstrap BookKeeper
The first problem to solve is to define a clear way to create the client, in
4.4.0 there are several constructors and a builder class.
The presence of many constructors is a burden to carry on for all the future
versions, it would be better to have only a single way to boostrap the client.
Another minor issue is that from the point of view of a developer which uses
BookKeeper client API it is very difficult to decide which API use,
We should also remove from the public API direct dependencies on third party
APIs, like Netty 3.x, and maybe from ZooKeeper too.
At the same time we must support the option for the client to reuse existing
expensive shared resources (such as ZooKeeper client, or netty3
HashedWheelTimer)
This issue may:
- deprecate existing constructors and BookKeeper.Builder class
- introduce a more future-proof API
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)