camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Antonin Stefanutti (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-10391) Camel-CDI adds every RouteBuilder instance it can find to Camel context
Date Tue, 18 Oct 2016 08:32:58 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-10391?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15584867#comment-15584867
] 

Antonin Stefanutti commented on CAMEL-10391:
--------------------------------------------

Yes {{DoNotAddToCamelContext}} can actually be anything, so a dummy name has been picked up
just for the sake of the example.

We may emulate Spring behaviour, that is to explicitly define which classes are to be considered
CDI beans, though this may surprise most CDI users accustomed to the _standard_ behaviour.
Plus, if I understand correctly, the use case here is not to exclude some {{RouteBuilder}}
classes from being deployed as CDI beans, but avoid the auto-configuration that adds these
{{RouteBuilder}} beans to the corresponding Camel context. Otherwise using the standard {{@Veto}}
annotation would probably do the trick.

> Camel-CDI adds every RouteBuilder instance it can find to Camel context
> -----------------------------------------------------------------------
>
>                 Key: CAMEL-10391
>                 URL: https://issues.apache.org/jira/browse/CAMEL-10391
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-cdi
>    Affects Versions: 2.18.0
>         Environment: Wildfly 10 with wildfly-camel extension
>            Reporter: Sverker Abrahamsson
>            Assignee: Antonin Stefanutti
>
> Camel-CDI will find every class in a deployment which extends RouteBuilder and automatically
add them to the context. This is a major issue for me as I usually wants to instantiate my
RouteBuilders programatically setting various parameters, with CDI support.
> This behaviour was introduced with https://github.com/apache/camel/commit/0421c24dfcf992f3296ed746469771e3800200e3
from [~antonin.stefanutti] and we had a good discussion about the issue on his github project
in https://github.com/astefanutti/camel-cdi/issues/12 but never came up with a good solution
for it. I have patched camel-cdi to use a marker annotation @DoNotAddToCamelContext to work
around it but I don't want to have to patch every release I use..
> I understand the logic why Camel-CDI finds and add every RouteBuilder class, even though
I don't agree that it is a good idea but it could very well be the default behavior as long
as it is possible to override it.
> What I would like is a discussion on how this could be made configurable. I'm thinking
about if there could be an annotation like @CamelContextStartup(false) or maybe even a more
general @CamelContextConfig(autostart=false) if there are other things that should be configurable.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message