You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Aaron Whiteside (JIRA)" <ji...@apache.org> on 2013/03/03 03:55:13 UTC

[jira] [Updated] (CAMEL-6105) Make DirectProducer throw a specific exception when it cannot find the corresponding consumer, instead of a generic CamelExchangeException.

     [ 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