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 23c8ac8323ee6e1699a5d4c9b3d15cfee0ffa13d Author: Nicolas Filotto <[email protected]> AuthorDate: Mon Mar 21 15:17:08 2022 +0100 CAMEL-17792: Add doc about the message headers of camel-freemarker --- .../org/apache/camel/component/freemarker/freemarker.json | 5 +++++ .../src/main/docs/freemarker-component.adoc | 14 +++----------- .../camel/component/freemarker/FreemarkerConstants.java | 9 +++++++-- .../camel/component/freemarker/FreemarkerEndpoint.java | 2 +- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/components/camel-freemarker/src/generated/resources/org/apache/camel/component/freemarker/freemarker.json b/components/camel-freemarker/src/generated/resources/org/apache/camel/component/freemarker/freemarker.json index 2999d12..5389cc5 100644 --- a/components/camel-freemarker/src/generated/resources/org/apache/camel/component/freemarker/freemarker.json +++ b/components/camel-freemarker/src/generated/resources/org/apache/camel/component/freemarker/freemarker.json @@ -29,6 +29,11 @@ "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 [...] "configuration": { "kind": "property", "displayName": "Configuration", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "freemarker.template.Configuration", "deprecated": false, "autowired": false, "secret": false, "description": "To use an existing freemarker.template.Configuration instance as the configuration." } }, + "headers": { + "CamelFreemarkerResourceUri": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "A URI for the template resource to use instead of the endpoint\nconfigured." }, + "CamelFreemarkerTemplate": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The template to use instead of the endpoint configured." }, + "CamelFreemarkerDataModel": { "kind": "header", "displayName": "", "group": "producer", "label": "", "required": false, "javaType": "Object", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The data model" } + }, "properties": { "resourceUri": { "kind": "path", "displayName": "Resource Uri", "group": "producer", "label": "", "required": true, "type": "string", "javaType": "java.lang.String", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "Path to the resource. You can prefix with: classpath, file, http, ref, or bean. classpath, file and http loads the resource using these protocols (classpath is default). ref will lookup the resource in the registry. bean will [...] "allowContextMapAll": { "kind": "parameter", "displayName": "Allow Context Map All", "group": "producer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether the context map should allow access to all details. By default only the message body and headers can be accessed. This option can be enabled for full access to the current Exchange and CamelContext. [...] diff --git a/components/camel-freemarker/src/main/docs/freemarker-component.adoc b/components/camel-freemarker/src/main/docs/freemarker-component.adoc index af6a036..7a063ee 100644 --- a/components/camel-freemarker/src/main/docs/freemarker-component.adoc +++ b/components/camel-freemarker/src/main/docs/freemarker-component.adoc @@ -119,17 +119,9 @@ location for a template or the template content itself. If any of these headers is set then Camel uses this over the endpoint configured resource. This allows you to provide a dynamic template at runtime. -[width="100%",cols="10%,10%,80%",options="header",] -|======================================================================= -|Header |Type |Description - -|FreemarkerConstants.FREEMARKER_RESOURCE |org.springframework.core.io.Resource |The template resource. - -|FreemarkerConstants.FREEMARKER_RESOURCE_URI |String |A URI for the template resource to use instead of the endpoint -configured. - -|FreemarkerConstants.FREEMARKER_TEMPLATE |String |The template to use instead of the endpoint configured. -|======================================================================= +// component headers: START +include::partial$component-endpoint-headers.adoc[] +// component headers: END == Samples diff --git a/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerConstants.java b/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerConstants.java index 96e7ca6..0f9ece2 100644 --- a/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerConstants.java +++ b/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerConstants.java @@ -16,15 +16,20 @@ */ package org.apache.camel.component.freemarker; +import org.apache.camel.spi.Metadata; + /** * Freemarker Constants */ public final class FreemarkerConstants { + @Metadata(description = "A URI for the template resource to use instead of the endpoint\n" + + "configured.", + javaType = "String") public static final String FREEMARKER_RESOURCE_URI = "CamelFreemarkerResourceUri"; - + @Metadata(description = "The template to use instead of the endpoint configured.", javaType = "String") public static final String FREEMARKER_TEMPLATE = "CamelFreemarkerTemplate"; - + @Metadata(description = "The data model", javaType = "Object") public static final String FREEMARKER_DATA_MODEL = "CamelFreemarkerDataModel"; private FreemarkerConstants() { diff --git a/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerEndpoint.java b/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerEndpoint.java index 4f96403..9ab930b 100644 --- a/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerEndpoint.java +++ b/components/camel-freemarker/src/main/java/org/apache/camel/component/freemarker/FreemarkerEndpoint.java @@ -37,7 +37,7 @@ import org.apache.camel.util.ObjectHelper; * Transform messages using FreeMarker templates. */ @UriEndpoint(firstVersion = "2.10.0", scheme = "freemarker", title = "Freemarker", syntax = "freemarker:resourceUri", - producerOnly = true, category = { Category.TRANSFORMATION }) + producerOnly = true, category = { Category.TRANSFORMATION }, headersClass = FreemarkerConstants.class) public class FreemarkerEndpoint extends ResourceEndpoint { @UriParam(defaultValue = "false")
