[
https://issues.apache.org/jira/browse/CAMEL-8271?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hendy Irawan updated CAMEL-8271:
--------------------------------
Description:
Currently all exchanges must set the {{autoDelete}} and {{exchangeType}}
properties, and cannot be left empty, otherwise camel-rabbitmq will complain
that these don't match.
The RabbitMQ builtin exchanges have predefined behavior and should be usable
from {{camel-rabbitmq}} without setting these properties:
1. {{""}} / {{amq.direct}}
2. {{amq.fanout}}
3. {{amq.topic}}
4. {{amq.match}}, {{amq.headers}}
In addition, when consuming from these, {{durable}} & {{autoDelete}} should
configure the queue that will be bound to these exchanges, not the current
behavior of configuring these builtin exchanges.
For example, currently it's impossible to do:
{{rabbitmq://localhost/amq.topic?durable=false&autoDelete=true&routingKey=lumen.speech.synthesis}}
Which is actually is a common scenario: declare a durable, auto-delete,
autonamed queue that is bound to exchange {{amq.topic}} and routing key
{{lumen.speech.synthesis}}. Instead, RabbitMQ fails with error.
Another request is to support {{exclusive=true}}, which is typically used for
autogenerated queues.
Reference: https://www.rabbitmq.com/tutorials/amqp-concepts.html
Relates to CAMEL-8270
was:
Currently all exchanges must set the {{autoDelete}} and {{exchangeType}}
properties, and cannot be left empty, otherwise camel-rabbitmq will complain
that these don't match.
The RabbitMQ builtin exchanges have predefined behavior and should be usable
from {{camel-rabbitmq}} without setting these properties:
1. "" / amq.direct
2. amq.fanout
3. amq.topic
4. amq.match, amq.headers
Reference: https://www.rabbitmq.com/tutorials/amqp-concepts.html
Relates to CAMEL-8270
> camel-rabbitmq: Builtin exchanges should not require autoDelete &
> exchangeType properties
> -----------------------------------------------------------------------------------------
>
> Key: CAMEL-8271
> URL: https://issues.apache.org/jira/browse/CAMEL-8271
> Project: Camel
> Issue Type: Improvement
> Components: camel-rabbitmq
> Affects Versions: 2.14.1
> Reporter: Hendy Irawan
> Priority: Trivial
>
> Currently all exchanges must set the {{autoDelete}} and {{exchangeType}}
> properties, and cannot be left empty, otherwise camel-rabbitmq will complain
> that these don't match.
> The RabbitMQ builtin exchanges have predefined behavior and should be usable
> from {{camel-rabbitmq}} without setting these properties:
> 1. {{""}} / {{amq.direct}}
> 2. {{amq.fanout}}
> 3. {{amq.topic}}
> 4. {{amq.match}}, {{amq.headers}}
> In addition, when consuming from these, {{durable}} & {{autoDelete}} should
> configure the queue that will be bound to these exchanges, not the current
> behavior of configuring these builtin exchanges.
> For example, currently it's impossible to do:
> {{rabbitmq://localhost/amq.topic?durable=false&autoDelete=true&routingKey=lumen.speech.synthesis}}
> Which is actually is a common scenario: declare a durable, auto-delete,
> autonamed queue that is bound to exchange {{amq.topic}} and routing key
> {{lumen.speech.synthesis}}. Instead, RabbitMQ fails with error.
> Another request is to support {{exclusive=true}}, which is typically used for
> autogenerated queues.
> Reference: https://www.rabbitmq.com/tutorials/amqp-concepts.html
> Relates to CAMEL-8270
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)