Daniel created CAMEL-7905:
-----------------------------

             Summary: New option to ignore missing consumers on direct endpoints
                 Key: CAMEL-7905
                 URL: https://issues.apache.org/jira/browse/CAMEL-7905
             Project: Camel
          Issue Type: Improvement
    Affects Versions: 2.14.0
            Reporter: Daniel


Currently a {{DirectConsumerNotAvailableException}} or 
{{DirectVmConsumerNotAvailableException}} is thrown when a message is send via 
a direct endoint and no consumer has been set up for this endpoint.

I a current scenario I want to use camel to loosely couple two components using 
direct endpoints that _might_ be consumed by some bean. Especially there should 
be no dependency from the producing component to the consuming component. 
However, if there is a consumer, messages send from the producer must be 
consumed synchronously in the same thread to preserve the transaction context 
of the producer. That why I chose {{direct}} for the producer's endpoint.

What is meant by "the messages might be consumed" is that the consuming 
component might not be deployed, when the consumer produces the first messages, 
or perhaps will never be deployed. I know there is the {{block}} option for the 
{{direct}} component but I don't want the producer to wait for the consumer as 
it might take some for the consumer to be available.

I think this is a very common scenario for a messaging system and I was 
surprised not to find an easy out-of-the-box way to handle this with camel. 
That's why I think an additional option {{failIfNoConsumers}} (similar to the 
option for the seda component) for the {{direct}} and {{direct-vm}} component 
would be very handy.



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

Reply via email to