Chia-Ping Tsai created KAFKA-16589:
--------------------------------------

             Summary: Consider removing `ClusterInstance#createAdminClient` 
since callers are not sure whether they need to call close
                 Key: KAFKA-16589
                 URL: https://issues.apache.org/jira/browse/KAFKA-16589
             Project: Kafka
          Issue Type: Improvement
            Reporter: Chia-Ping Tsai
            Assignee: Chia-Ping Tsai


Sometimes we close the admin created by `createAdminClient`, and sometimes we 
don't. That is not a true problem since the `ClusterInstance` will call `close` 
when stopping.

However, that cause a lot of inconsistent code, and in fact it does not save 
much time since creating a Admin is not a hard work. We can get 
`bootstrapServers` and `bootstrapControllers` from `ClusterInstance` easily.

 
{code:java}
// before
try (Admin admin = cluster.createAdminClient()) { }

// after v0
try (Admin admin = Admin.create(Collections.singletonMap(
        CommonClientConfigs.BOOTSTRAP_SERVERS_CONFIG, 
cluster.bootstrapServers()))) {}

{code}
Personally, the `after` version is not verbose, but we can have alternatives: 
`Map<String, Object> clientConfigs`.

 
{code:java}
// after v1
try (Admin admin = Admin.create(cluster.clientConfigs())) {}{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to