I thought about something similar (and still have a patch somewhere), but I was focusing on mostly on attributes for the params to describe if they are required or not, if they are secret or not (i.e. replace them with *** when printing) and if they are producer/consumer/both side. We can then have smarter toString impls for endpoints too. Adding documentation to that would be a good thing too.
When I started to work on it it was more work then I initially thought with all the components we have, but still plan on getting it done for a 3.0 at the latest. Cheers, Hadrian On Apr 20, 2011, at 10:50 AM, Charles Moulliard wrote: > Hi, > > I would like to suggest that we add annotation to document the > properties of the Camel Component class which are used customise the > component according to the keys defined into the URIs. > > What do you about that ? > > idea > > URI => componentName:property1:property2....?key1=value&key2=value ..... > > @CamelComponent(name="","description="",example="", pageUrl="") > public class Component { > > @CamelComponentKey(name="", description="", type="boolean, string") > String key1; > > @CamelComponentKey(name="", description="", type="boolean, string") > String key2; > > String key3; > ... > } > > We could use those annotations to document camel component (when > generating pdf, html, ...) or provide URI definition when using > autocompletion in Eclipse, IntelliJ, .... > > Regards, > > Charles Moulliard > > Sr. Principal Solution Architect - FuseSource > Apache Committer > > Blog : http://cmoulliard.blogspot.com > Twitter : http://twitter.com/cmoulliard > Linkedin : http://www.linkedin.com/in/charlesmoulliard > Skype: cmoulliard