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)

Reply via email to