Author: buildbot Date: Tue May 28 13:20:03 2013 New Revision: 863464 Log: Production update by buildbot for camel
Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/camel-30-ideas.html Modified: websites/production/camel/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/camel/content/camel-30-ideas.html ============================================================================== --- websites/production/camel/content/camel-30-ideas.html (original) +++ websites/production/camel/content/camel-30-ideas.html Tue May 28 13:20:03 2013 @@ -92,7 +92,7 @@ <table class="sectionMacro" border="0" cellpadding="5" cellspacing="0" width="100%"><tbody><tr><td colspan="1" rowspan="1" valign="top" class="confluenceTd" width="20%"> <div class="panel" style="border-width: 1px;"><div class="panelContent"> <div> -<ul><li><a shape="rect" href="#Camel3.0-Ideas-Camel3.0Ideas">Camel 3.0 Ideas</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Tableofcontents">Table of contents</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JDKsupport">JDK support</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JDK8JavaDSL">JDK8 Java DSL</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RoutingCoreReengineering%28raulk%29">Routing Core Re-engineering (raulk)</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-ConvertingsomeEIPsfrom%22performers%22tomere%22deciders%22">Converting some EIPs from "performers" to mere "deciders"</a></li></ul><li><a shape="rect" href="#Camel3.0-Ideas-ClearerArchitectureofCamelCore">Clearer Architecture of Camel Core</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Splitcamelcoreintomultipleparts%28hadrian%29">Split camel-core into multiple parts (hadrian)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Avoidshadinggoogleconcurrentlinkedmapincamelcore">Avoid sh ading google concurrent linked map in camel-core</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Definescopeandrulesforcamelcorepackages%28champion%3F%29">Define scope and rules for camel-core packages ( <em>champion</em>?)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Moreflexibleroutesatruntime%28claus%29">More flexible routes at runtime (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Fixrouteswithmultipleinputs%28claus%29">Fix routes with multiple inputs (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RouteinitializationlogicforJavaDSLandXMLDSLs%28claus%29">Route initialization logic for Java DSL and XML DSLs (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddOnException%2CInterceptor%2Cetc.toJAXBmodelforaCamelContextDefinition%28claus%29">Add OnException, Interceptor, etc. to JAXB model for a CamelContextDefinition (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Tightenuproutedefinitions%28claus%29">Tighten up route definitio ns (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-MessageHistoryEIP%2FMessageStore%28ChristianOhr%29">Message History EIP/Message Store (Christian Ohr)</a></li></ul><li><a shape="rect" href="#Camel3.0-Ideas-DependencyUpgrades">Dependency Upgrades</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JMXnaming">JMX naming</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Removenotusedcomponents">Remove not used components</a></li><li><a shape="rect" href="#Camel3.0-Ideas-SplitcamelcxfintoWSandREST">Split camel-cxf into WS and REST</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Oldideas">Old ideas</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Supportforasynchronoustransactions">Support for asynchronous transactions</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Streamcaching">Stream caching</a></li><li><a shape="rect" href="#Camel3.0-Ideas-EIP">EIP</a></li><li><a shape="rect" href="#Camel3.0-Ideas-ScheduleinDSL">Schedule in DSL</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AdvancedScalasupport">Advanced Scala support</a></li><li><a shape="rect" href="#Camel3.0-Ideas-MoreEIPsas@annotations">More EIPs as @annotations</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Unifiedstatistics">Unified statistics</a></li><li><a shape="rect" href="#Camel3.0-Ideas-SEDA%2FVMcomponentstoleverageasyncroutingengine">SEDA/VM components to leverage async routing engine</a></li><li><a shape="rect" href="#Camel3.0-Ideas-camelosgitest">camel-osgi-test</a></li><li><a shape="rect" href="#Camel3.0-Ideas-REST">REST</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Moreloadtests%28cmueller%29">More load tests (cmueller)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-OSGienhancements">OSGi enhancements</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Easiercommit%2Frollbackforcomponentdevelopers">Easier commit/rollback for component developers</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RefactorUnitOfWork">Refactor UnitOfWork</a></li><li><a shape="rect" href="#Camel3.0-Ideas-ImprovementstoThreadPoolProfileforthreadmanagement">Improvements to ThreadPoolProfile for thread management</a></li><li><a shape="rect" href="#Camel3.0-Ideas-TightenuponException">Tighten up onException</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddcompositeEIPtocomposeanumberofEIPsintoasingleEIP">Add composite EIP to compose a number of EIPs into a single EIP</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RemoveSpringtransactiondependencyfromJMScomponent%28RemovedbecauseSJMSwillbenonspringversion%29"> </a><del>Remove Spring transaction dependency from JMS component</del> (Removed because SJMS will be non-spring version)</li></ul><li><a shape="rect" href="#Camel3.0-Ideas-DefaulttouseTransactedmodebydefault">Default to use Transacted mode by default</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddtraceinformationtotheCamelexceptions">Add trace information to the Camel exceptions</a></li></ul></ul></div> +<ul><li><a shape="rect" href="#Camel3.0-Ideas-Camel3.0Ideas">Camel 3.0 Ideas</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Tableofcontents">Table of contents</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JDKsupport">JDK support</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JDK8JavaDSL">JDK8 Java DSL</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RoutingCoreReengineering%28raulk%29">Routing Core Re-engineering (raulk)</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-ConvertingsomeEIPsfrom%22performers%22tomere%22deciders%22">Converting some EIPs from "performers" to mere "deciders"</a></li></ul><li><a shape="rect" href="#Camel3.0-Ideas-ClearerArchitectureofCamelCore">Clearer Architecture of Camel Core</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Splitcamelcoreintomultipleparts%28hadrian%29">Split camel-core into multiple parts (hadrian)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Avoidshadinggoogleconcurrentlinkedmapincamelcore">Avoid sh ading google concurrent linked map in camel-core</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Definescopeandrulesforcamelcorepackages%28champion%3F%29">Define scope and rules for camel-core packages ( <em>champion</em>?)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Moreflexibleroutesatruntime%28claus%29">More flexible routes at runtime (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Fixrouteswithmultipleinputs%28claus%29">Fix routes with multiple inputs (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RouteinitializationlogicforJavaDSLandXMLDSLs%28claus%29">Route initialization logic for Java DSL and XML DSLs (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddOnException%2CInterceptor%2Cetc.toJAXBmodelforaCamelContextDefinition%28claus%29">Add OnException, Interceptor, etc. to JAXB model for a CamelContextDefinition (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Tightenuproutedefinitions%28claus%29">Tighten up route definitio ns (claus)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-MessageHistoryEIP%2FMessageStore%28ChristianOhr%29">Message History EIP/Message Store (Christian Ohr)</a></li></ul><li><a shape="rect" href="#Camel3.0-Ideas-DependencyUpgrades">Dependency Upgrades</a></li><li><a shape="rect" href="#Camel3.0-Ideas-JMXnaming">JMX naming</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Removenotusedcomponents">Remove not used components</a></li><li><a shape="rect" href="#Camel3.0-Ideas-SplitcamelcxfintoWSandREST">Split camel-cxf into WS and REST</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Oldideas">Old ideas</a></li><ul><li><a shape="rect" href="#Camel3.0-Ideas-Supportforasynchronoustransactions">Support for asynchronous transactions</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Streamcaching">Stream caching</a></li><li><a shape="rect" href="#Camel3.0-Ideas-EIP">EIP</a></li><li><a shape="rect" href="#Camel3.0-Ideas-ScheduleinDSL">Schedule in DSL</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AdvancedScalasupport">Advanced Scala support</a></li><li><a shape="rect" href="#Camel3.0-Ideas-MoreEIPsas@annotations">More EIPs as @annotations</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Unifiedstatistics">Unified statistics</a></li><li><a shape="rect" href="#Camel3.0-Ideas-SEDA%2FVMcomponentstoleverageasyncroutingengine">SEDA/VM components to leverage async routing engine</a></li><li><a shape="rect" href="#Camel3.0-Ideas-camelosgitest">camel-osgi-test</a></li><li><a shape="rect" href="#Camel3.0-Ideas-REST">REST</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Moreloadtests%28cmueller%29">More load tests (cmueller)</a></li><li><a shape="rect" href="#Camel3.0-Ideas-OSGienhancements">OSGi enhancements</a></li><li><a shape="rect" href="#Camel3.0-Ideas-Easiercommit%2Frollbackforcomponentdevelopers">Easier commit/rollback for component developers</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RefactorUnitOfWork">Refactor UnitOfWork</a></li><li><a shape="rect" href="#Camel3.0-Ideas-ImprovementstoThreadPoolProfileforthreadmanagement">Improvements to ThreadPoolProfile for thread management</a></li><li><a shape="rect" href="#Camel3.0-Ideas-TightenuponException">Tighten up onException</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddcompositeEIPtocomposeanumberofEIPsintoasingleEIP">Add composite EIP to compose a number of EIPs into a single EIP</a></li><li><a shape="rect" href="#Camel3.0-Ideas-RemoveSpringtransactiondependencyfromJMScomponent%28RemovedbecauseSJMSwillbenonspringversion%29"> </a><del>Remove Spring transaction dependency from JMS component</del> (Removed because SJMS will be non-spring version)</li></ul><li><a shape="rect" href="#Camel3.0-Ideas-DefaulttouseTransactedmodebydefault">Default to use Transacted mode by default</a></li><li><a shape="rect" href="#Camel3.0-Ideas-AddtraceinformationtotheCamelexceptions">Add trace information to the Camel exceptions</a></li><li><a shape="rect" href="#Camel3.0-Ide as-AvoidthrowsExceptiononenduserAPI">Avoid throws Exception on end user API</a></li></ul></ul></div> </div></div></td></tr></tbody></table> <h3><a shape="rect" name="Camel3.0-Ideas-JDKsupport"></a>JDK support</h3> @@ -374,7 +374,17 @@ It may make more sense to move onRedeliv <h3><a shape="rect" name="Camel3.0-Ideas-AddtraceinformationtotheCamelexceptions"></a>Add trace information to the Camel exceptions</h3> <p>If and exception occurs, it would be helpful if the exception contains trace information like the passed endpoints/processors and the current endpoint/processor. We may could also extend the error handler to log (or not) this information.<br clear="none"> -That make it much easier to dig into the problem when we encounter an exception.</p></div> +That make it much easier to dig into the problem when we encounter an exception.</p> + +<h3><a shape="rect" name="Camel3.0-Ideas-AvoidthrowsExceptiononenduserAPI"></a>Avoid throws Exception on end user API</h3> + +<p><b>Important:</b> The <tt>org.apache.camel.Processor</tt> should stay as is. This API has been like this since the first commit, and we should let it be backwards compatible.</p> + +<p>But there is a number of end user APIs such as <tt>Service</tt>, eg when you call <tt>start</tt> on a CamelContext. It would be better to have that not throws Exception but use runtime exceptions if failed to start etc.</p> + +<p>An API which uses unchecked exceptions is the <tt>ProducerTemplate</tt> which end users uses. So its nice and easy to use.<br clear="none"> +Another example would be <tt>Main</tt> and <tt>MainSupport</tt> where the <tt>run</tt> method throws exception etc.<br clear="none"> +There is possible other end user APIs which we can make a bit more friendly.</p></div> </td> <td valign="top"> <div class="navigation">