-1. I hate to squash other engineers ideas, but it seems that the advantages this package brings to the table does not outweigh the disadvantages. I agree with others that posts to this thread about requiring an IDE to rely on a third-party tool to generate code. If something breaks, we are dead in the water for a while - whether we are waiting for someone to fix the issue in the tool or whether we need to rewrite code to rip it out.
Also, what about debugging? If there is a bug somewhere and it happens to be in or near the generated code (or the meta-code used to generate the actual code), how easy or hard would it be to access, read, or walk-through that code. Or what if the code generator had a bug generating code. We will either need to wait for a fix in the generator or figure out a work-around. It just seems to me that there is more work around using this tool then it is to just manually create the classes. On that note, how many classes are really that simple that we need such a tool? Rob On 3/2/18, 11:58 AM, "Doroszlai, Attila" <[email protected]> wrote: Hi all, I'd like to start a vote on adding the FreeBuilder library to Ambari. FreeBuilder is an annotation processor that generates (at compile time) immutable value objects and their builders from interfaces or abstract classes annotated with @FreeBuilder. If you are interested in the details, please check the website at https://github.com/inferred/FreeBuilder#freebuilder Their concise readme has examples and explanations. The reason for the vote thread is that a quick, one-time setup is needed for IDEs for those working on ambari-server. * IDEA: find the directory "ambari-server > target > generated-sources > annotations" in the Project pane, right-click it, and select Mark Directory as > Generated Sources Root. * Eclipse: instructions are at https://github.com/inferred/FreeBuilder#eclipse * NetBeans: non-FreeBuilder-specific tutorial: https://netbeans.org/kb/docs/java/annotations.html If the vote passes, I will add setup instructions to the Ambari wiki. Please vote: [ ] +1, add FreeBuilder to Ambari [ ] -1, keep FreeBuilder out of Ambari Thanks for your time. -Attila
