camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ranx <brad.john...@mediadriver.com>
Subject Re: Camel 3
Date Thu, 04 Feb 2016 15:51:19 GMT
I'd like to amplify one of the comments by Claus about slimming the core of
camel and making other components less dependent on it.

I'd like to see the core limited to compile time dependencies - annotations,
interfaces and factories only.  The runtime engine might be blueprint,
spring, or whatever.

A maven project file might look like:

	<dependencies>

		<dependency>
			<groupId>org.apache.camel</groupId>
			<artifactId>camel-core</artifactId>
		</dependency>

....

		<dependency>
			<groupId>org.apache.camel</groupId>
			<artifactId>spring-engine</artifactId>
			<scope>test</scope>
		</dependency>

Then the specified engine would also need to be present through whatever
bootstrap mechanism whether in Spring, Karaf or whatever.

This would also make for a unified test structure during Camel 3
development.  The same set of acceptance tests should run against any of the
engines since they'd be running against the Camel core API/factories and not
explicitly running against the engines themselves.  In other words, the
engines should be firmly hidden behind the facades of the core.

In a way it would be the way that JDBC is supposed to work but Apache Camel
group would have full control over the compliance.  If the acceptance tests
run against all of the engines then things are fine.  If a test fails when
an engine is swapped in then the engine implementation has to be fixed or
dealt with in some fashion.

If someone later on wants to develop a new engine with a new
framework/library there would be a standard set of acceptance tests keyed to
the core bundle that the engine would have to pass.  This would make for
easy expansion to other frameworks in the future that may yet to be invented
or that are just coming into acceptance now.




--
View this message in context: http://camel.465427.n5.nabble.com/Camel-3-tp5777217p5777219.html
Sent from the Camel Development mailing list archive at Nabble.com.

Mime
View raw message