Ignite Queues
Since Camel 2.17
The Ignite Queue endpoint is one of camel-ignite endpoints which allows you to interact with Ignite Queue data structures.
This endpoint only supports producers.
Options
The Ignite Queues component supports 4 options, which are listed below.
Name | Description | Default | Type |
---|---|---|---|
ignite (producer) |
Sets the Ignite instance. |
Ignite |
|
configurationResource (producer) |
Sets the resource from where to load the configuration. It can be a: URI, String (URI) or an InputStream. |
Object |
|
igniteConfiguration (producer) |
Allows the user to set a programmatic IgniteConfiguration. |
IgniteConfiguration |
|
resolveProperty Placeholders (advanced) |
Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. |
true |
boolean |
The Ignite Queues endpoint is configured using URI syntax:
ignite-queue:name
with the following path and query parameters:
Query Parameters (7 parameters):
Name | Description | Default | Type |
---|---|---|---|
capacity (producer) |
The queue capacity. Default: non-bounded. |
int |
|
configuration (producer) |
The collection configuration. Default: empty configuration. You can also conveniently set inner properties by using configuration.xyz=123 options. |
CollectionConfiguration |
|
operation (producer) |
The operation to invoke on the Ignite Queue. Superseded by the IgniteConstants.IGNITE_QUEUE_OPERATION header in the IN message. Possible values: CONTAINS, ADD, SIZE, REMOVE, ITERATOR, CLEAR, RETAIN_ALL, ARRAY, DRAIN, ELEMENT, PEEK, OFFER, POLL, TAKE, PUT. |
IgniteQueueOperation |
|
propagateIncomingBodyIfNo ReturnValue (producer) |
Sets whether to propagate the incoming body if the return type of the underlying Ignite operation is void. |
true |
boolean |
timeoutMillis (producer) |
The queue timeout in milliseconds. Default: no timeout. |
Long |
|
treatCollectionsAsCache Objects (producer) |
Sets whether to treat Collections as cache objects or as Collections of items to insert/update/compute, etc. |
false |
boolean |
synchronous (advanced) |
Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). |
false |
boolean |
Spring Boot Auto-Configuration
When using Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-ignite-starter</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
The component supports 5 options, which are listed below.
Name | Description | Default | Type |
---|---|---|---|
camel.component.ignite-queue.configuration-resource |
Sets the resource from where to load the configuration. It can be a: URI, String (URI) or an InputStream. The option is a java.lang.Object type. |
String |
|
camel.component.ignite-queue.enabled |
Enable ignite-queue component |
true |
Boolean |
camel.component.ignite-queue.ignite |
Sets the Ignite instance. The option is a org.apache.ignite.Ignite type. |
String |
|
camel.component.ignite-queue.ignite-configuration |
Allows the user to set a programmatic IgniteConfiguration. The option is a org.apache.ignite.configuration.IgniteConfiguration type. |
String |
|
camel.component.ignite-queue.resolve-property-placeholders |
Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. |
true |
Boolean |
Headers used
This endpoint uses the following headers:
Header name | Constant | Expected type | Description |
---|---|---|---|
CamelIgniteQueueOperation |
IgniteConstants.IGNITE_QUEUE_OPERATION |
IgniteQueueOperation enum |
Allows you to dynamically change the queue operation. |
CamelIgniteQueueMaxElements |
IgniteConstants.IGNITE_QUEUE_MAX_ELEMENTS |
Integer or int |
When invoking the DRAIN operation, the amount of items to drain. |
CamelIgniteQueueTransferredCount |
IgniteConstants.IGNITE_QUEUE_TRANSFERRED_COUNT |
Integer or int |
The amount of items transferred as the result of the DRAIN operation. |
CamelIgniteQueueTimeoutMillis |
IgniteConstants.IGNITE_QUEUE_TIMEOUT_MILLIS |
Long or long |
Dynamically sets the timeout in milliseconds to use when invoking the OFFER or POLL operations. |