Hadrian,

did you found time to work on the new Camel components test kit?
Should we plan a coding session in Portland?

Best,
Christian

On Tue, Feb 19, 2013 at 8:34 PM, Hadrian Zbarcea <hzbar...@gmail.com> wrote:

> Comments inline.
> Cheers,
> Hadrian
>
>
> On 02/19/2013 01:09 PM, Claus Ibsen wrote:
>
>> On Tue, Feb 19, 2013 at 11:04 AM, Christian Schneider
>> <ch...@die-schneider.net> wrote:
>>
>>> Hi Claus,
>>>
>>> do you think it is possible to refactor camel core in this way (to
>>> implement a real routing engine)? After the refactorings I already did I
>>> am not sure it would work.
>>>
>>>
>> Yes it is possible. The main switch is to use a runtime iterator based
>> model, that decides at runtime
>> which next processor to invoke. Instead of the current "static" approach.
>>
>
> I know for a fact that it's much more complicated than that and I am more
> with Christian on that. While I think it's possible, it's far, far from
> just an iterator.
>
>
>
>>
>>  Another aproach instead of refactoring would be to first define a new
>>> really slim API for components and implement it using the current
>>> camel-core.
>>> Then we would change each component to use the new API. When all
>>> components are switched it will be much easier to change the core as we
>>> do not have to
>>> refactor all components to make the build work again. We discussed this
>>> idea at last Apachecon with Guillaume, Christian Müller and Charles.
>>> Then it was mainly in the light of having a small self contained API but
>>> I think it would also help with the routing engine.
>>>
>>>
>> The change in the routing engine should be internal facing only, and
>> all the tests should ideally pass.
>> There may be a few gremlins in the tests that has some internal
>> assumptions. But any end user scenario
>> of unit tests should have the goal of pass as is. To ensure backwards
>> compatability.
>>
> Agree that the routing engine should be a change internal to the runtime.
> The tests we have are not unit tests and in principle I agree with the goal
> of them passing as is after the refactoring. However I believe that with
> the tests in the current shape it will be cost (time/energy) prohibitive to
> refactor the core.
>
>
>
>> So there is no need to change any unit tests. Also the unit tests we
>> have today serve as good use-cases
>> for people to understand how to use Camel and its routes / components.
>>
>
> Actually in my opinion changing the tests is an absolutee must for 3.0 to
> have a chance of being more than lipstick. If we give that up, we'll give
> up refactoring the api as well. That's what my crystal globe tells me.
>
>
>
>
>>
>>
>>  Christian
>>>
>>> On 19.02.2013 10:31, Claus Ibsen wrote:
>>>
>>>>
>>>> Its been on the Camel 3.0 roadmap for a long time
>>>>
>>>> Though its heading caption may have been chosen a better wording than
>>>> - More flexible routes at runtime
>>>> http://camel.apache.org/camel-**30-ideas.html<http://camel.apache.org/camel-30-ideas.html>
>>>>
>>>> We had it as target for a long time, but as you said it safter to work
>>>> on this in a major release than on the 2.x architecture.
>>>> And hence why its not been done yet.
>>>>
>>>> And in term of the model, then we have missing pieces about the
>>>> inteceptors/onExceptions and whatnot. This is also on the roadmap for
>>>> Camel 3.0
>>>> - Add OnException, Interceptor, etc. to JAXB model for a
>>>> CamelContextDefinition
>>>>
>>>>
>>>>
>>> --
>>> Christian Schneider
>>> http://www.liquid-reality.de
>>>
>>> Open Source Architect
>>> http://www.talend.com
>>>
>>>
>>
>>
>>


--

Reply via email to