THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
Camel 2.0 Design
This wiki page lists the overall goals of the 2.0 release of Camel. For a detailed view see the Camel 2.0 JIRA roadmap
Main features
- New async routing leveraging the JDK concurrent API to replace AsyncProcessor DONE
- default to using transacted mode along with transacted error handlers CAMEL-866 DONE
- improve smart completion of Java & XML DSLs DONE
- make more endpoints easily configurable as beans in Spring XML CAMEL-506 DONE
- improve the DSL
- get rid of
consumer.
options for common options DONE - support # notation for URI options to lookup a reference in the bean registry DONE
- consider how we can expose some of the ExpressionBuilder we have in Javs DSL in the XML DSL as well DONE
- get rid of
- solving MEP issues DONE
- using Camel${component}${name} pattern as header keys instead of using package names with dots that isn't likely to be transported by JMS or other transport types DONE
- OSGi sample and wiki documentation DONE
- Add the OSGi integration test support DONE
- All of the bootstrap mechanisms (components, endpoints, converters, registry) should be osgi aware DONE
- ServiceMix and Camel sample and wiki documentation DONE
- Easier transacted route configuration DONE
- onComplete(), onFailure() callbacks to UnitOfWork on a Exchange allowing custom code being executed when a Exchange completes DONE
- Get the onComplete, onFailure callbacks on UnitOfWork exposes in the DSL and used by component to do cleanup after processing an exchange IN PROGRESS
Refactoring of code and internal API changes
- remove the use of generics on Component, Exchange, Producer, Consumer CAMEL-872 CAMEL-507 DONE
- dealing with streams DONE
- enhance the Expression/Predicate APIs to allow the required type to be passed in DONE
- remove @deprecated code DONE
- improvement of discovery of class resources in OSGi bundles CAMEL-775 DONE
- cleanup BeanInfo (the algorithm to select right method to invoke by bean component) DONE
- rewrite of the File and FTP component DONE
- support VFS in Camel to reuse code for file transport types such as File, FTP DONE
- reduce package tangling DONE
- header filter strategy move from component to endpoint DONE
- Introduce Channel DONE
- Route navigator for tooling DONE
- ProducerTemplate better method names
- No lazy creation of messages in getOut, getFault to align them with regular java property behavior DONE
- Consider removing FAULT and merge it with Exception (hadrian)
Other
- UUID generator to be file friendly (eg zapping / and : chars) DONE
Nice to haves
- Model objects toString(), label, shortName and description aligned and usable from Tracer/Visual Tooling etc.
Camel 2.1 Design
Main features
- More JMX stuff
- More advanced and easier thread pool configuration such as from managed environments
- interceptors should be runtime applied and not woven in at design time - separate design time vs. runtime stuff
Internal
- reduce the need to copy exchanges CAMEL-872
OSGi
- Much improved OSGi (willem)
- Making component/converter discovery use OSGi services when in an OSGi environment
- Making ObjectHelper.loadClass aware of OSGi environment
- More documentation and samples
DSL
- improve the DSL
Other
- JAXB generator to slurp javadoc to be used for XSD documentation
- Spring 3.0 support
- Upgrade to use JUnit 4.x
- Improved Dynamic Route Manipulation
- Dynamic routing add/edit/stop/remove
- Pausing consumers
- Customization of endpoint options
- and a lot more
- self document the custom headers used in the endpoints/components CAMEL-228
Camel 2.x Design
- have nice Spring 2 namespace schemas for different endpoints for nicer IDE completion
- pluggable DSL (Hadrian) (Groovy will be able to do this)