Details
-
Improvement
-
Status: Open
-
P3
-
Resolution: Unresolved
-
None
-
None
Description
Today the applyJavaNature method demonstrates a significant programming and build config anti-pattern: one giant method with unclear/no spec and some flags to tweak what it does, that can only really be understood by reading its full code.
Instead, best practice would be to separate the functionality controlled by each flag into a block that a module can call. It is not wrong to pass configuration parameters, but in this case that's not really what is going on.
Since the flags are "on by default" and serve to suppress things like findbugs, this just means breaking out the findbugs into a separate bit. We can always also have a convenience three-liner that calls the basics, calls findbugs, etc.