Hi Babak Nice you got attention on these details as well.
After the 2.9.0 release we could take a look what makes sense. For example changing/adding serial version UUID would break backwards comp. So IMHO only to be done on the 2.10 release. etc On Tue, Dec 13, 2011 at 3:48 PM, bvahdat <babak.vah...@swissonline.ch> wrote: > Hi again, > > I already messed it up with the provided links in the botom of my previous > post, so here a second try: > > > Hi Devs, > > As Claus has already once stated [1] thanks to my own professionalism I > intend to take over the trunk code-clean-up activity :-) > > This task (at least to the main extend) can be of course achieved in an > (almost) automated manner (*even* eclipse can do that!), which is through > the "Clean Up..." pop-up-menu. But before digging into it I want to get your > "taste" about what YOU expect to be in there and what not, so here my > proposal: > > 1- Add of the missing Annotations for @Deprecated & @Override: > As per Java Tiger, other than Javadoc @deprecated tag there's also the > annotation @Deprecated, good to be used because of the reasons mentioned in > [2].Also as per Java-Mustang, the semantics of the @Override annotation has > been extended to not only mean "implements" but also "overrides", so that > new Processor(){ > public void process(Exchange exchange) { > ... > } > } > > becomes: > new Processor(){ > @Override > public void process(Exchange exchange) { > ... > } > } > > or: > return new RouteBuilder() { > public void configure() { > ... > } > }; > > becomes: > return new RouteBuilder() { > @Override > public void configure() { > ... > } > }; > > Do you think this is an overkill? > > 2- Add of serialVersionUID with default to 1L by all those classes which > claim to be Serializable (like CamelAuthorizationException which has not > serialVersionUID), as per spec. letting the JVM to calculate the value at > runtime is not the best practice (for good reasons). Also by all other camel > serializable classes which already have that serialVersionUID change the > value to 1L. Any API/Field/Method serialization-breaking-change a Commiter > does on those classes should also include a count-up of that field (1L -> 2L > or 7L->8L). > > Example: > > from: > public class CamelAuthorizationException extends CamelExchangeException { > private final String policyId; > ... > > to: > public class CamelAuthorizationException extends CamelExchangeException { > private static final long serialVersionUID = 1L; > private final String policyId; > ... > > 3- Remove unused imports: I think all of us already agree on this. > > 4- Remove unnecessary casts > from: > List<MBeanServer> servers = > (List<MBeanServer>)MBeanServerFactory.findMBeanServer(null); > > to: > List<MBeanServer> servers = MBeanServerFactory.findMBeanServer(null); > > Even here, I assume we all do agree on this. > > 5- Remove trailing whitespace on *all* lines, even on the empty ones! Would > we maybe want to also extend the checkstyle rules to bawl on that as well? > > 6- Remove of all unused *private* members: Types, Constructors, Fields and > Methods! We maybe want to be careful about this when the Reflection-API > usage in Camel comes into the play. > > 7- Remove unnecessary $NON-NLS$ tags: just hit 2 of them in [3] & [4] see > also [5] for it's semantics in eclipse > > Applying the clean-up rules I mentioned above on my workspace, I see > currently around 343 out-going-source-changes. > > I would of course run a full install including all unit-test-run & > checkstyle-checks to garantie no side effect. BTW, my intention is *not* to > force this into the 2.9.0 final release as this would be already too late > for that sun-shine-release. > > Another *important* clean-up activity would be of course the generics-stuff > which is completely another story I may also get some time to take care of > that in the future (for example look at the ProcessorDefinition class). > However there I don't see any automatable approach which I could apply :-( > So maybe I have to dig into [6] again to get an idea about all those already > well-known generics magics ;-)) > > [1] > http://camel.465427.n5.nabble.com/HEADS-UP-Adjustments-to-ExecutorServiceManager-on-trunk-tp4693698p4715407.html > [2] > http://docs.oracle.com/javase/1.5.0/docs/guide/javadoc/deprecation/deprecation.html > [3] > https://svn.apache.org/repos/asf/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/osgi/tracker/AbstractTracked.java > [4] > https://svn.apache.org/repos/asf/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/osgi/tracker/BundleTracker.java > [5] > http://www.eclipse.org/eclipse/platform-core/documents/3.1/message_bundles.html > [6] http://www.angelikalanger.com/GenericsFAQ/JavaGenericsFAQ.html > > Babak > > -- > View this message in context: > http://camel.465427.n5.nabble.com/DISCUSS-Trunk-Code-Cleanup-tp5071594p5071664.html > Sent from the Camel Development mailing list archive at Nabble.com. -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com Twitter: davsclaus, fusenews Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/