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

Aaron Whiteside updated CAMEL-6105:
-----------------------------------

    Attachment: direct_consumer_not_available_exception.patch

patch for new DirectConsumerNotAvailableException thrown instead of 
CamelExchangeException
                
> Make DirectProducer throw a specific exception when it cannot find the 
> corresponding consumer, instead of a generic CamelExchangeException.
> -------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-6105
>                 URL: https://issues.apache.org/jira/browse/CAMEL-6105
>             Project: Camel
>          Issue Type: New Feature
>          Components: camel-core
>    Affects Versions: 2.10.3
>            Reporter: Aaron Whiteside
>         Attachments: direct_consumer_not_available_exception.patch
>
>
> Make DirectProducer throw a specific exception when it cannot find the 
> corresponding consumer, instead of a generic CamelExchangeException.
> Our use case is that some routes will be dynamically redeployed at run-time, 
> this is not a problem for routes using jms:xxx and other such endpoints, but 
> for  direct:xxx endpoints this poses a problem.
> I am asking if we could change DirectProducer to throw a new exception 
> something like NoConsumerAvailableException which extends 
> CamelExchangeException for backwards compatibility. As this would allow us to 
> setup a default re-delivery policy for this specific exception.
> I also have a second request, let me know if you want this in a separate jira 
> issue.
> Ideally instead of retrying when a direct endpoints consumer disappears 
> temporarily it would be nice if the direct producer would blocked for a 
> configurable duration waiting for a consumer to come, back, into existence.
> The default would obviously be not to block, to maintain backwards 
> compatibility.
> Something along these lines:
> {code}
> direct:xxxx?block=true&timeout=5000
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to