You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2021/06/01 09:33:16 UTC

[GitHub] [pulsar] freeznet commented on pull request #10697: [fix #9640] remove `pulsar-client-admin-api` dependency : `pulsar-common`

freeznet commented on pull request #10697:
URL: https://github.com/apache/pulsar/pull/10697#issuecomment-851980218


   @eolivelli thanks for your comments again. 
   
   > This makes me think that even if we are now allowing to use pure interfaces in order to define the API, this API is not usable without the "Impl" classes.
   
   Interfaces are intended to define the APIs and specifications, which of cause not usable without the "impl" classes. So I don't think this is a problem here. 
   
   > So, what is the benefit of splitting the API classes from Impl ?
   
   The main purpose of this PR is to solve #9640, and I am not splitting all the API classes into interface and impl class here, only those classes that will bring external dependencies into `pulsar-client-admin-api`. @lhotari has made a very clear description in #9640, and the discussion between @lhotari and @jerrypeng in #9638 is also very helpful to get to the context. 
   
   > will it be allowed to run something like:
   ```
   class MyClusterData implements ClusterData {
   .....
   }
   
   admin.clusters().createCluster("test", new MyClusterData());
   ```
   
   Actually, I do not get this point very clear, it would be great if you could give me more background about how you came up with this idea? 
   
   > Probably we have to think more about this big breaking change, especially now that we are close to releasing 2.8.0.
   
   You are right, so welcome to point it out if you have any specified concerns about this breaking change. You can also check [here](https://docs.google.com/document/d/19dXkVXeU2q_nHmkG8zURjKnYlvD96TbKf5KjYyASsOE/edit#bookmark=id.mwryw95kuerm) for some more details about the discussion on Pulsar Community Meeting. 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org