cmccabe commented on pull request #10696: URL: https://github.com/apache/kafka/pull/10696#issuecomment-842547338
(Copying offline discussion to github) I think creating a base class and using implementation inheritance is worse than the current code. Looking at the code, I see very little commonality between the ZK implementation and the API-based implementation. I think we should just have an interface and two separate implementations. The main code that we'd want to share between the two implementations is the routine that checks if topics have the wrong names. That's a very small amount of code which could simply be in a static method. If you want you could combine that with checking if a change is "in-flight" by passing in a map from topics to booleans, or similar. Or just have two separate maps in the separate implementations. -- 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: us...@infra.apache.org