This is an automated email from the ASF dual-hosted git repository. nfilotto pushed a commit to branch CAMEL-17792/doc-message-headers in repository https://gitbox.apache.org/repos/asf/camel.git
commit 36e4dfd0eb301e12538892a490bde6b807dc79aa Author: Nicolas Filotto <[email protected]> AuthorDate: Tue Mar 29 16:45:36 2022 +0200 CAMEL-17792: Add doc about the message headers of camel-ignite --- .../camel/component/ignite/cache/ignite-cache.json | 9 ++++ .../component/ignite/compute/ignite-compute.json | 7 +++ .../camel/component/ignite/idgen/ignite-idgen.json | 3 ++ .../ignite/messaging/ignite-messaging.json | 4 ++ .../camel/component/ignite/queue/ignite-queue.json | 6 +++ .../camel/component/ignite/set/ignite-set.json | 3 ++ .../src/main/docs/ignite-cache-component.adoc | 34 ++----------- .../src/main/docs/ignite-compute-component.adoc | 26 ++-------- .../src/main/docs/ignite-idgen-component.adoc | 4 +- .../src/main/docs/ignite-messaging-component.adoc | 18 ++----- .../src/main/docs/ignite-queue-component.adoc | 22 ++------ .../src/main/docs/ignite-set-component.adoc | 13 ++--- .../camel/component/ignite/IgniteConstants.java | 59 ++++++++++++++++++++++ .../ignite/cache/IgniteCacheEndpoint.java | 7 ++- .../ignite/compute/IgniteComputeEndpoint.java | 7 ++- .../ignite/events/IgniteEventsEndpoint.java | 4 +- .../ignite/idgen/IgniteIdGenEndpoint.java | 7 ++- .../ignite/messaging/IgniteMessagingEndpoint.java | 7 ++- .../ignite/queue/IgniteQueueEndpoint.java | 7 ++- .../component/ignite/set/IgniteSetEndpoint.java | 7 ++- 20 files changed, 142 insertions(+), 112 deletions(-) diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/cache/ignite-cache.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/cache/ignite-cache.json index ec62407..fac9d5d 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/cache/ignite-cache.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/cache/ignite-cache.json @@ -29,6 +29,15 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteCacheKey": { "kind": "header", "displayName": "", "group": "common", "label": "", "required": false, "javaType": "Object", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The cache key for the entry value in the message body." }, + "CamelIgniteCacheQuery": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.ignite.cache.query.Query", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The query to run when invoking the QUERY operation." }, + "CamelIgniteCacheOperation": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.camel.component.ignite.cache.IgniteCacheOperation", "enum": [ "GET", "PUT", "REMOVE", "SIZE", "REBALANCE", "QUERY", "CLEAR" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change the cache operation to execute." }, + "CamelIgniteCachePeekMode": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.ignite.cache.CachePeekMode", "enum": [ "ALL", "NEAR", "PRIMARY", "BACKUP", "ONHEAP", "OFFHEAP" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change the cache peek mode when running the SIZE operation." }, + "CamelIgniteCacheEventType": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "javax.cache.event.EventType", "enum": [ "CREATED", "UPDATED", "REMOVED", "EXPIRED" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "This header carries the received event type when using the continuous query consumer." }, + "CamelIgniteCacheName": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "This header carries the cache name for which a continuous query event was received (consumer).\nIt does not allow you to dynamically change the cache against which a producer operation is performed. Use EIPs for that (e.g. recipient list, dynami [...] + "CamelIgniteCacheOldValue": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "Object", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "This header carries the old cache value when passed in the incoming cache event." } + }, "properties": { "cacheName": { "kind": "path", "displayName": "Cache Name", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The cache name." }, "propagateIncomingBodyIfNoReturnValue": { "kind": "parameter", "displayName": "Propagate Incoming Body If No Return Value", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to propagate the incoming body if the return type of the underlying Ignite operation is void." }, diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/compute/ignite-compute.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/compute/ignite-compute.json index 3937754..4e5d04f 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/compute/ignite-compute.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/compute/ignite-compute.json @@ -28,6 +28,13 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteComputeExecutionType": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.camel.component.ignite.compute.IgniteComputeExecutionType", "enum": [ "CALL", "BROADCAST", "APPLY", "EXECUTE", "RUN", "AFFINITY_CALL", "AFFINITY_RUN" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change the compute operation to perform." }, + "CamelIgniteComputeParameters": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Any object or Collection of objects", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Parameters for APPLY, BROADCAST and EXECUTE operations." }, + "CamelIgniteComputeReducer": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.ignite.lang.IgniteReducer", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Reducer for the APPLY and CALL operations." }, + "CamelIgniteComputeAffinityCacheName": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Affinity cache name for the AFFINITY_CALL and AFFINITY_RUN operations." }, + "CamelIgniteComputeAffinityKey": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Object", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Affinity key for the AFFINITY_CALL and AFFINITY_RUN operations." } + }, "properties": { "endpointId": { "kind": "path", "displayName": "Endpoint Id", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The endpoint ID (not used)." }, "clusterGroupExpression": { "kind": "parameter", "displayName": "Cluster Group Expression", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.camel.component.ignite.ClusterGroupExpression", "deprecated": false, "autowired": false, "secret": false, "description": "An expression that returns the Cluster Group for the IgniteCompute instance." }, diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/idgen/ignite-idgen.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/idgen/ignite-idgen.json index c05b68e..dba6a5b 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/idgen/ignite-idgen.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/idgen/ignite-idgen.json @@ -28,6 +28,9 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteIdGenOperation": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.camel.component.ignite.idgen.IgniteIdGenOperation", "enum": [ "ADD_AND_GET", "GET", "GET_AND_ADD", "GET_AND_INCREMENT", "INCREMENT_AND_GET" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change the ID Generator operation." } + }, "properties": { "name": { "kind": "path", "displayName": "Name", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The sequence name." }, "batchSize": { "kind": "parameter", "displayName": "Batch Size", "group": "producer", "label": "producer", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, "description": "The batch size." }, diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/messaging/ignite-messaging.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/messaging/ignite-messaging.json index 437d5d6..b79f4fb 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/messaging/ignite-messaging.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/messaging/ignite-messaging.json @@ -29,6 +29,10 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteMessagingTopic": { "kind": "header", "displayName": "", "group": "common", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "(producer) Allows you to dynamically change the topic to send messages to. \n(consumer) It also carries the topic on which a message was received." }, + "CamelIgniteMessagingUUID": { "kind": "header", "displayName": "", "group": "consumer", "label": "consumer", "required": false, "javaType": "java.util.UUID", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "This header is filled in with the UUID of the subscription when a message arrives." } + }, "properties": { "topic": { "kind": "path", "displayName": "Topic", "group": "common", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The topic name." }, "propagateIncomingBodyIfNoReturnValue": { "kind": "parameter", "displayName": "Propagate Incoming Body If No Return Value", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to propagate the incoming body if the return type of the underlying Ignite operation is void." }, diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/queue/ignite-queue.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/queue/ignite-queue.json index ffdc0e7..d691935 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/queue/ignite-queue.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/queue/ignite-queue.json @@ -28,6 +28,12 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteQueueOperation": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.camel.component.ignite.queue.IgniteQueueOperation", "enum": [ "CONTAINS", "ADD", "SIZE", "REMOVE", "ITERATOR", "CLEAR", "RETAIN_ALL", "ARRAY", "DRAIN", "ELEMENT", "PEEK", "OFFER", "POLL", "TAKE", "PUT" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change [...] + "CamelIgniteQueueMaxElements": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Integer", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "When invoking the DRAIN operation, the amount of items to drain." }, + "CamelIgniteQueueTransferredCount": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Integer", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The amount of items transferred as the result of the DRAIN operation." }, + "CamelIgniteQueueTimeoutMillis": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Dynamically sets the timeout in milliseconds to use when invoking the OFFER or POLL operations." } + }, "properties": { "name": { "kind": "path", "displayName": "Name", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The queue name." }, "capacity": { "kind": "parameter", "displayName": "Capacity", "group": "producer", "label": "producer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "description": "The queue capacity. Default: non-bounded." }, diff --git a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/set/ignite-set.json b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/set/ignite-set.json index de28aa1..c93251a 100644 --- a/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/set/ignite-set.json +++ b/components/camel-ignite/src/generated/resources/org/apache/camel/component/ignite/set/ignite-set.json @@ -28,6 +28,9 @@ "lazyStartProducer": { "kind": "property", "displayName": "Lazy Start Producer", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during star [...] "autowiredEnabled": { "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which t [...] }, + "headers": { + "CamelIgniteSetsOperation": { "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "org.apache.camel.component.ignite.set.IgniteSetOperation", "enum": [ "CONTAINS", "ADD", "SIZE", "REMOVE", "ITERATOR", "CLEAR", "RETAIN_ALL", "ARRAY" ], "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Allows you to dynamically change the set operation." } + }, "properties": { "name": { "kind": "path", "displayName": "Name", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The set name." }, "configuration": { "kind": "parameter", "displayName": "Configuration", "group": "producer", "label": "producer", "required": false, "type": "object", "javaType": "org.apache.ignite.configuration.CollectionConfiguration", "deprecated": false, "autowired": false, "secret": false, "description": "The collection configuration. Default: empty configuration. You can also conveniently set inner properties by using configuration.xyz=123 options." }, diff --git a/components/camel-ignite/src/main/docs/ignite-cache-component.adoc b/components/camel-ignite/src/main/docs/ignite-cache-component.adoc index 027b6c6..364dc76 100644 --- a/components/camel-ignite/src/main/docs/ignite-cache-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-cache-component.adoc @@ -34,36 +34,8 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END - - -== Headers used - -This endpoint uses the following headers: -[width="100%",cols="1,1,1,4",options="header"] -|======================================================================= -| Header name | Constant | Expected type | Description -| CamelIgniteCacheKey | IgniteConstants.IGNITE_CACHE_KEY | String | -The cache key for the entry value in the message body. - -| CamelIgniteCacheQuery | IgniteConstants.IGNITE_CACHE_QUERY | Query | -The query to run (producer) when invoking the QUERY operation. - -| CamelIgniteCacheOperation | IgniteConstants.IGNITE_CACHE_OPERATION | IgniteCacheOperation enum | -Allows you to dynamically change the cache operation to execute (producer). - -| CamelIgniteCachePeekMode | IgniteConstants.IGNITE_CACHE_PEEK_MODE | CachePeekMode enum | -Allows you to dynamically change the cache peek mode when running the SIZE operation. - -| CamelIgniteCacheEventType | IgniteConstants.IGNITE_CACHE_EVENT_TYPE | int (EventType constants) | -This header carries the received event type when using the continuous query consumer. - -| CamelIgniteCacheName | IgniteConstants.IGNITE_CACHE_NAME | String | -This header carries the cache name for which a continuous query event was received (consumer). -It does not allow you to dynamically change the cache against which a producer operation is performed. Use EIPs for that (e.g. recipient list, dynamic router). - -| CamelIgniteCacheOldValue | IgniteConstants.IGNITE_CACHE_OLD_VALUE | Object | -This header carries the old cache value when passed in the incoming cache event (consumer). -|======================================================================= - +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/docs/ignite-compute-component.adoc b/components/camel-ignite/src/main/docs/ignite-compute-component.adoc index d5278e9..4a514b6 100644 --- a/components/camel-ignite/src/main/docs/ignite-compute-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-compute-component.adoc @@ -33,6 +33,9 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END == Expected payload types @@ -49,27 +52,4 @@ Each operation expects the indicated types: | AFFINITY_RUN | IgniteRunnable. |======================================================================= -=== Headers used - -This endpoint uses the following headers: -[width="100%",cols="1,1,1,4",options="header"] -|======================================================================= -| Header name | Constant | Expected type | Description -| CamelIgniteComputeExecutionType | IgniteConstants.IGNITE_COMPUTE_EXECUTION_TYPE | IgniteComputeExecutionType enum | - Allows you to dynamically change the compute operation to perform. - -| CamelIgniteComputeParameters | IgniteConstants.IGNITE_COMPUTE_PARAMS | Any object or Collection of objects. | -Parameters for APPLY, BROADCAST and EXECUTE operations. - -| CamelIgniteComputeReducer | IgniteConstants.IGNITE_COMPUTE_REDUCER | IgniteReducer | -Reducer for the APPLY and CALL operations. - -| CamelIgniteComputeAffinityCacheName | IgniteConstants.IGNITE_COMPUTE_AFFINITY_CACHE_NAME | String | -Affinity cache name for the AFFINITY_CALL and AFFINITY_RUN operations. - -| CamelIgniteComputeAffinityKey | IgniteConstants.IGNITE_COMPUTE_AFFINITY_KEY | Object | -Affinity key for the AFFINITY_CALL and AFFINITY_RUN operations. -|======================================================================= - - include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc b/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc index fd28be4..0658176 100644 --- a/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc @@ -29,6 +29,8 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END - +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc b/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc index 47036a3..93b89b0 100644 --- a/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc @@ -29,20 +29,8 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END - -== Headers used - -This endpoint uses the following headers: -[width="100%",cols="1,1,1,4",options="header"] -|======================================================================= -| Header name | Constant | Expected type | Description -| CamelIgniteMessagingTopic | IgniteConstants.IGNITE_MESSAGING_TOPIC | String | -Allows you to dynamically change the topic to send messages to (producer). -It also carries the topic on which a message was received (consumer). - -| CamelIgniteMessagingUUID | IgniteConstants.IGNITE_MESSAGING_UUID | UUID | -This header is filled in with the UUID of the subscription when a message arrives (consumer). -|======================================================================= - +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/docs/ignite-queue-component.adoc b/components/camel-ignite/src/main/docs/ignite-queue-component.adoc index a0daff4..800d0b0 100644 --- a/components/camel-ignite/src/main/docs/ignite-queue-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-queue-component.adoc @@ -29,24 +29,8 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END -== Headers used - -This endpoint uses the following headers: -[width="100%",cols="1,1,1,4",options="header"] -|======================================================================= -| 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. -|======================================================================= - +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/docs/ignite-set-component.adoc b/components/camel-ignite/src/main/docs/ignite-set-component.adoc index 5dc1e4f1..885bb87 100644 --- a/components/camel-ignite/src/main/docs/ignite-set-component.adoc +++ b/components/camel-ignite/src/main/docs/ignite-set-component.adoc @@ -29,15 +29,8 @@ include::partial$component-endpoint-options.adoc[] // endpoint options: END -== Headers used - -This endpoint uses the following headers: -[width="100%",cols="1,1,1,4",options="header"] -|======================================================================= -| Header name | Constant | Expected type | Description -| CamelIgniteSetsOperation | IgniteConstants.IGNITE_SETS_OPERATION | IgniteSetOperation enum | -Allows you to dynamically change the set operation. -|======================================================================= - +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END include::spring-boot:partial$starter.adoc[] diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/IgniteConstants.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/IgniteConstants.java index c34a320..5c7dc92 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/IgniteConstants.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/IgniteConstants.java @@ -16,41 +16,100 @@ */ package org.apache.camel.component.ignite; +import org.apache.camel.spi.Metadata; + /** * Ignite Component constants. */ public final class IgniteConstants { + // Schemes + public static final String SCHEME_CACHE = "ignite-cache"; + public static final String SCHEME_COMPUTE = "ignite-compute"; + public static final String SCHEME_MESSAGING = "ignite-messaging"; + public static final String SCHEME_QUEUE = "ignite-queue"; + public static final String SCHEME_SET = "ignite-set"; + public static final String SCHEME_EVENTS = "ignite-events"; + public static final String SCHEME_IDGEN = "ignite-idgen"; + // Ignite Cache. + @Metadata(description = "The cache key for the entry value in the message body.", javaType = "Object", + applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_KEY = "CamelIgniteCacheKey"; + @Metadata(label = "producer", description = "The query to run when invoking the QUERY operation.", + javaType = "org.apache.ignite.cache.query.Query", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_QUERY = "CamelIgniteCacheQuery"; + @Metadata(label = "producer", description = "Allows you to dynamically change the cache operation to execute.", + javaType = "org.apache.camel.component.ignite.cache.IgniteCacheOperation", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_OPERATION = "CamelIgniteCacheOperation"; + @Metadata(label = "producer", + description = "Allows you to dynamically change the cache peek mode when running the SIZE operation.", + javaType = "org.apache.ignite.cache.CachePeekMode", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_PEEK_MODE = "CamelIgniteCachePeekMode"; + @Metadata(label = "consumer", + description = "This header carries the received event type when using the continuous query consumer.", + javaType = "javax.cache.event.EventType", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_EVENT_TYPE = "CamelIgniteCacheEventType"; + @Metadata(label = "consumer", + description = "This header carries the cache name for which a continuous query event was received (consumer).\n" + + "It does not allow you to dynamically change the cache against which a producer operation is performed. Use EIPs for that (e.g. recipient list, dynamic router).", + javaType = "String", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_NAME = "CamelIgniteCacheName"; + @Metadata(label = "consumer", + description = "This header carries the old cache value when passed in the incoming cache event.", + javaType = "Object", applicableFor = SCHEME_CACHE) public static final String IGNITE_CACHE_OLD_VALUE = "CamelIgniteCacheOldValue"; // Ignite Messaging. + @Metadata(description = "(producer) Allows you to dynamically change the topic to send messages to. \n" + + "(consumer) It also carries the topic on which a message was received.", + javaType = "String", applicableFor = SCHEME_MESSAGING) public static final String IGNITE_MESSAGING_TOPIC = "CamelIgniteMessagingTopic"; + @Metadata(label = "consumer", + description = "This header is filled in with the UUID of the subscription when a message arrives.", + javaType = "java.util.UUID", applicableFor = SCHEME_MESSAGING) public static final String IGNITE_MESSAGING_UUID = "CamelIgniteMessagingUUID"; // Ignite Compute. + @Metadata(label = "producer", description = "Allows you to dynamically change the compute operation to perform.", + javaType = "org.apache.camel.component.ignite.compute.IgniteComputeExecutionType", applicableFor = SCHEME_COMPUTE) public static final String IGNITE_COMPUTE_EXECUTION_TYPE = "CamelIgniteComputeExecutionType"; + @Metadata(label = "producer", description = "Parameters for APPLY, BROADCAST and EXECUTE operations.", + javaType = "Any object or Collection of objects", applicableFor = SCHEME_COMPUTE) public static final String IGNITE_COMPUTE_PARAMS = "CamelIgniteComputeParameters"; + @Metadata(label = "producer", description = "Reducer for the APPLY and CALL operations.", + javaType = "org.apache.ignite.lang.IgniteReducer", applicableFor = SCHEME_COMPUTE) public static final String IGNITE_COMPUTE_REDUCER = "CamelIgniteComputeReducer"; + @Metadata(label = "producer", description = "Affinity cache name for the AFFINITY_CALL and AFFINITY_RUN operations.", + javaType = "String", applicableFor = SCHEME_COMPUTE) public static final String IGNITE_COMPUTE_AFFINITY_CACHE_NAME = "CamelIgniteComputeAffinityCacheName"; + @Metadata(label = "producer", description = "Affinity key for the AFFINITY_CALL and AFFINITY_RUN operations.", + javaType = "Object", applicableFor = SCHEME_COMPUTE) public static final String IGNITE_COMPUTE_AFFINITY_KEY = "CamelIgniteComputeAffinityKey"; // Ignite Sets. + @Metadata(label = "producer", description = "Allows you to dynamically change the set operation.", + javaType = "org.apache.camel.component.ignite.set.IgniteSetOperation", applicableFor = SCHEME_SET) public static final String IGNITE_SETS_OPERATION = "CamelIgniteSetsOperation"; // Ignite ID Gen. + @Metadata(label = "producer", description = "Allows you to dynamically change the ID Generator operation.", + javaType = "org.apache.camel.component.ignite.idgen.IgniteIdGenOperation", applicableFor = SCHEME_IDGEN) public static final String IGNITE_IDGEN_OPERATION = "CamelIgniteIdGenOperation"; // Ignite Queues. + @Metadata(label = "producer", description = "Allows you to dynamically change the queue operation.", + javaType = "org.apache.camel.component.ignite.queue.IgniteQueueOperation", applicableFor = SCHEME_QUEUE) public static final String IGNITE_QUEUE_OPERATION = "CamelIgniteQueueOperation"; + @Metadata(label = "producer", description = "When invoking the DRAIN operation, the amount of items to drain.", + javaType = "Integer", applicableFor = SCHEME_QUEUE) public static final String IGNITE_QUEUE_MAX_ELEMENTS = "CamelIgniteQueueMaxElements"; + @Metadata(label = "producer", description = "The amount of items transferred as the result of the DRAIN operation.", + javaType = "Integer", applicableFor = SCHEME_QUEUE) public static final String IGNITE_QUEUE_TRANSFERRED_COUNT = "CamelIgniteQueueTransferredCount"; + @Metadata(label = "producer", + description = "Dynamically sets the timeout in milliseconds to use when invoking the OFFER or POLL operations.", + javaType = "Long", applicableFor = SCHEME_QUEUE) public static final String IGNITE_QUEUE_TIMEOUT_MILLIS = "CamelIgniteQueueTimeoutMillis"; private IgniteConstants() { diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/cache/IgniteCacheEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/cache/IgniteCacheEndpoint.java index b3e7dc8..73d1940 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/cache/IgniteCacheEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/cache/IgniteCacheEndpoint.java @@ -26,6 +26,7 @@ import org.apache.camel.Consumer; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -36,11 +37,13 @@ import org.apache.ignite.cache.CachePeekMode; import org.apache.ignite.cache.query.ContinuousQuery; import org.apache.ignite.cache.query.Query; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_CACHE; + /** * Perform cache operations on an Ignite cache or consume changes from a continuous query. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-cache", title = "Ignite Cache", syntax = "ignite-cache:cacheName", - category = { Category.CACHE, Category.DATAGRID }) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_CACHE, title = "Ignite Cache", syntax = "ignite-cache:cacheName", + category = { Category.CACHE, Category.DATAGRID }, headersClass = IgniteConstants.class) public class IgniteCacheEndpoint extends AbstractIgniteEndpoint { @UriPath diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/compute/IgniteComputeEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/compute/IgniteComputeEndpoint.java index 552758b..3f9d0a1 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/compute/IgniteComputeEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/compute/IgniteComputeEndpoint.java @@ -24,6 +24,7 @@ import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; import org.apache.camel.component.ignite.ClusterGroupExpression; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -31,14 +32,16 @@ import org.apache.camel.spi.UriPath; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCompute; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_COMPUTE; + /** * Run <a href="https://apacheignite.readme.io/docs/compute-grid">compute operations</a> on an Ignite cluster. * * You can pass an IgniteCallable, an IgniteRunnable, an IgniteClosure, or collections of them, along with their * parameters if necessary. This endpoint only supports producers. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-compute", title = "Ignite Compute", syntax = "ignite-compute:endpointId", - category = { Category.COMPUTE }, producerOnly = true) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_COMPUTE, title = "Ignite Compute", syntax = "ignite-compute:endpointId", + category = { Category.COMPUTE }, producerOnly = true, headersClass = IgniteConstants.class) public class IgniteComputeEndpoint extends AbstractIgniteEndpoint { @UriPath diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/events/IgniteEventsEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/events/IgniteEventsEndpoint.java index 174405a..2272c14 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/events/IgniteEventsEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/events/IgniteEventsEndpoint.java @@ -40,6 +40,8 @@ import org.apache.ignite.events.EventType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_EVENTS; + /** * <a href="https://apacheignite.readme.io/docs/events">Receive events</a> from an Ignite cluster by creating a local * event listener. @@ -47,7 +49,7 @@ import org.slf4j.LoggerFactory; * This endpoint only supports consumers. The Exchanges created by this consumer put the received Event object into the * body of the IN message. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-events", title = "Ignite Events", syntax = "ignite-events:endpointId", +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_EVENTS, title = "Ignite Events", syntax = "ignite-events:endpointId", category = { Category.MESSAGING, Category.EVENTBUS }, consumerOnly = true) public class IgniteEventsEndpoint extends AbstractIgniteEndpoint { diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/idgen/IgniteIdGenEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/idgen/IgniteIdGenEndpoint.java index 174569e..f73e4b4 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/idgen/IgniteIdGenEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/idgen/IgniteIdGenEndpoint.java @@ -23,6 +23,7 @@ import org.apache.camel.Consumer; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -32,14 +33,16 @@ import org.apache.ignite.IgniteAtomicSequence; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_IDGEN; + /** * Interact with <a href="https://apacheignite.readme.io/docs/id-generator">Ignite Atomic Sequences and ID Generators * </a>. * * This endpoint only supports producers. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-idgen", title = "Ignite ID Generator", syntax = "ignite-idgen:name", - category = { Category.COMPUTE }, producerOnly = true) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_IDGEN, title = "Ignite ID Generator", syntax = "ignite-idgen:name", + category = { Category.COMPUTE }, producerOnly = true, headersClass = IgniteConstants.class) public class IgniteIdGenEndpoint extends AbstractIgniteEndpoint { private static final Logger LOG = LoggerFactory.getLogger(IgniteIdGenEndpoint.class); diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/messaging/IgniteMessagingEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/messaging/IgniteMessagingEndpoint.java index a4ca051..b89c226 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/messaging/IgniteMessagingEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/messaging/IgniteMessagingEndpoint.java @@ -24,6 +24,7 @@ import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; import org.apache.camel.component.ignite.ClusterGroupExpression; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -31,13 +32,15 @@ import org.apache.camel.spi.UriPath; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteMessaging; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_MESSAGING; + /** * Send and receive messages from an <a href="https://apacheignite.readme.io/docs/messaging">Ignite topic</a>. * * This endpoint supports producers (to send messages) and consumers (to receive messages). */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-messaging", title = "Ignite Messaging", - syntax = "ignite-messaging:topic", category = { Category.MESSAGING }) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_MESSAGING, title = "Ignite Messaging", + syntax = "ignite-messaging:topic", category = { Category.MESSAGING }, headersClass = IgniteConstants.class) public class IgniteMessagingEndpoint extends AbstractIgniteEndpoint { @UriPath diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/queue/IgniteQueueEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/queue/IgniteQueueEndpoint.java index 1b7e787..543d806 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/queue/IgniteQueueEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/queue/IgniteQueueEndpoint.java @@ -23,6 +23,7 @@ import org.apache.camel.Consumer; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -33,13 +34,15 @@ import org.apache.camel.util.PropertiesHelper; import org.apache.ignite.IgniteQueue; import org.apache.ignite.configuration.CollectionConfiguration; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_QUEUE; + /** * Interact with <a href="https://apacheignite.readme.io/docs/queue-and-set">Ignite Queue data structures</a>. * * This endpoint only supports producers. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-queue", title = "Ignite Queues", syntax = "ignite-queue:name", - category = { Category.MESSAGING, Category.QUEUE }, producerOnly = true) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_QUEUE, title = "Ignite Queues", syntax = "ignite-queue:name", + category = { Category.MESSAGING, Category.QUEUE }, producerOnly = true, headersClass = IgniteConstants.class) public class IgniteQueueEndpoint extends AbstractIgniteEndpoint { @UriPath diff --git a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/set/IgniteSetEndpoint.java b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/set/IgniteSetEndpoint.java index d2208fa..51c1636 100644 --- a/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/set/IgniteSetEndpoint.java +++ b/components/camel-ignite/src/main/java/org/apache/camel/component/ignite/set/IgniteSetEndpoint.java @@ -23,6 +23,7 @@ import org.apache.camel.Consumer; import org.apache.camel.Processor; import org.apache.camel.Producer; import org.apache.camel.component.ignite.AbstractIgniteEndpoint; +import org.apache.camel.component.ignite.IgniteConstants; import org.apache.camel.spi.Metadata; import org.apache.camel.spi.UriEndpoint; import org.apache.camel.spi.UriParam; @@ -31,13 +32,15 @@ import org.apache.camel.support.PropertyBindingSupport; import org.apache.camel.util.PropertiesHelper; import org.apache.ignite.configuration.CollectionConfiguration; +import static org.apache.camel.component.ignite.IgniteConstants.SCHEME_SET; + /** * Interact with <a href="https://apacheignite.readme.io/docs/queue-and-set">Ignite Set data structures</a>. * * This endpoint only supports producers. */ -@UriEndpoint(firstVersion = "2.17.0", scheme = "ignite-set", title = "Ignite Sets", syntax = "ignite-set:name", - category = { Category.CACHE, Category.COMPUTE }, producerOnly = true) +@UriEndpoint(firstVersion = "2.17.0", scheme = SCHEME_SET, title = "Ignite Sets", syntax = "ignite-set:name", + category = { Category.CACHE, Category.COMPUTE }, producerOnly = true, headersClass = IgniteConstants.class) public class IgniteSetEndpoint extends AbstractIgniteEndpoint { @UriPath
