DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
Direct Component
The direct: component provides direct, synchronous invocation of any consumers when a producer sends a message exchange.
This endpoint can be used to connect existing routes in the same camel context.
...
| Tip | ||
|---|---|---|
| ||
The VM component provides connections between Camel contexts as long they run in the same JVM. |
URI format
| Code Block | ||
|---|---|---|
| ||
direct:someName[?options] |
Where someName can be any string to that uniquely identify identifies the endpoint.
Options
...
Name | Default Value | Description |
|---|---|---|
|
| @deprecated If set to Will be removed in Camel 2.1: Direct endpoint does not support multiple consumers. |
|
| Camel |
...
2.11.1: |
...
If |
...
sending |
...
a |
...
message |
...
to |
...
a |
...
direct |
...
endpoint |
...
which |
...
has |
...
no |
...
active |
...
consumer, |
...
the |
...
producer |
...
will block for | ||
|
| Camel 2.11.1: |
...
The |
...
timeout |
...
value |
...
, in milliseconds, to block, when enabled, for an active consumer. | ||
|
| Camel 2.16.0: Indicates whether the producer should fail by throwing an exception when sending to a |
You can append query options to the URI in the following format: ?option=value&option=value&...
...
Samples
In the route below we use the direct component to link the two routes together:
| Code Block | ||
|---|---|---|
| ||
from("activemq:queue:order.in")
.to("bean:orderServer?method=validate")
.to("direct:processOrder?block=true&timeout=5000");
from("direct:processOrder")
.to("bean:orderService?method=process")
.to("activemq:queue:order.out");
|
And the sample using spring DSL:
| Code Block | ||
|---|---|---|
| ||
<route>
<from uri="activemq:queue:order.in"/>
<to uri="bean:orderService?method=validate"/>
<to uri="direct:processOrder?failIfNoConsumers=false"/>
</route>
<route>
<from uri="direct:processOrder"/>
<to uri="bean:orderService?method=process"/>
<to uri="activemq:queue:order.out"/>
</route>
|
...