[ 
https://issues.apache.org/jira/browse/CAMEL-4464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christian Schneider reassigned CAMEL-4464:
------------------------------------------

    Assignee:     (was: Christian Schneider)

> Resolve cycle between processor package and its subpackages
> -----------------------------------------------------------
>
>                 Key: CAMEL-4464
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4464
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core
>    Affects Versions: 2.8.0
>            Reporter: Christian Schneider
>             Fix For: 3.0.0
>
>         Attachments: CAMEL-4464_after.png, CAMEL-4464_before.png
>
>
> The processor package and its subpackages interceptor and aggregator form a 
> dependency cycle.
> The first cycle is between processor and processor.interceptor. The package 
> interceptor needs several processor classes so this direction can not be 
> avoided easily. Int the other direction DefaultChannel depends on interceptor 
> clases. Interestingly DefaultChannel is not used from other classes in 
> processor. So I propose to jsut move DefaultChannel to interceptor to keep 
> interceptor related stuff together.
> The second cycle is between processor and processor.aggregate. The 
> AggregateProcessor uses the SendProcessor. Here I propose to just use a 
> producerTemplate to end the failed exchange. ProducerTemplate is a API 
> element and can be fetched from the camelContext so this solves the cycle. I 
> hope that using the ProducerTemplate does not create other issues. The tests 
> seem to work.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to