This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 06908b5a4e0 CAMEL-21040: ensure more consistency in the document 
sections
06908b5a4e0 is described below

commit 06908b5a4e07f125a7f58401316581ab3785f1a6
Author: Otavio Rodolfo Piske <angusyo...@gmail.com>
AuthorDate: Fri Aug 9 13:31:24 2024 +0200

    CAMEL-21040: ensure more consistency in the document sections
    
    - Reorganized examples
---
 .../camel-stax/src/main/docs/stax-component.adoc   | 10 ++-
 .../src/main/docs/stitch-component.adoc            | 27 ++++----
 .../camel-stomp/src/main/docs/stomp-component.adoc | 14 ++--
 .../src/main/docs/stream-component.adoc            |  6 +-
 .../src/main/docs/string-template-component.adoc   | 16 ++---
 .../camel-stub/src/main/docs/stub-component.adoc   | 19 ++---
 .../src/main/docs/swiftMt-dataformat.adoc          |  6 +-
 .../src/main/docs/telegram-component.adoc          | 26 ++++---
 .../src/main/docs/test-junit5.adoc                 |  4 +-
 .../src/main/docs/test-main-junit5.adoc            |  2 +-
 .../src/main/docs/test-spring-junit5.adoc          | 22 +++---
 .../src/main/docs/threadpoolfactory-vertx.adoc     |  2 +-
 .../src/main/docs/thymeleaf-component.adoc         | 14 ++--
 .../camel-tika/src/main/docs/tika-component.adoc   |  5 +-
 .../camel-timer/src/main/docs/timer-component.adoc |  8 ++-
 .../camel-tracing/src/main/docs/tracing.adoc       |  2 +-
 .../src/main/docs/twilio-component.adoc            |  5 +-
 .../src/main/docs/undertow-spring-security.adoc    |  4 +-
 .../src/main/docs/undertow-component.adoc          | 81 +++++++++++-----------
 .../src/main/docs/univocityFixed-dataformat.adoc   |  2 +-
 .../src/main/docs/velocity-component.adoc          | 14 ++--
 .../src/main/docs/vertx-http-component.adoc        | 21 +++---
 .../src/main/docs/vertx-websocket-component.adoc   |  8 +--
 .../camel-wasm/src/main/docs/wasm-component.adoc   |  9 +--
 24 files changed, 170 insertions(+), 157 deletions(-)

diff --git a/components/camel-stax/src/main/docs/stax-component.adoc 
b/components/camel-stax/src/main/docs/stax-component.adoc
index 45b5137b9ec..29929b96d1c 100644
--- a/components/camel-stax/src/main/docs/stax-component.adoc
+++ b/components/camel-stax/src/main/docs/stax-component.adoc
@@ -66,9 +66,9 @@ include::partial$component-endpoint-options.adoc[]
 
 // endpoint options: END
 
+== Usage
 
-
-== Usage of a content handler as StAX parser
+=== Usage of a content handler as StAX parser
 
 The message body after the handling is the handler itself.
 
@@ -88,7 +88,7 @@ from("file:target/in")
   });
 
--------------------------------------------------------------------------------------------------------
 
-== Iterate over a collection using JAXB and StAX
+=== Iterate over a collection using JAXB and StAX
 
 First, we suppose you have JAXB objects.
 
@@ -192,9 +192,7 @@ from("file:target/in")
         .to("mock:records");
 -------------------------------------------------
 
-=== The previous example with XML DSL
-
-The example above could be implemented as follows in Spring XML
+Alternatively, the example above could be implemented as follows in Spring XML
 
 [source,xml]
 ----
diff --git a/components/camel-stitch/src/main/docs/stitch-component.adoc 
b/components/camel-stitch/src/main/docs/stitch-component.adoc
index b5dc738609d..c0ce9883e2e 100644
--- a/components/camel-stitch/src/main/docs/stitch-component.adoc
+++ b/components/camel-stitch/src/main/docs/stitch-component.adoc
@@ -19,12 +19,7 @@ applications and databases. It integrates various data 
sources into a central da
 for many enterprise software data sources, and can receive data via WebHooks 
and an API (Stitch Import API) which
 Camel Stitch Component uses to produce the data to Stitch ETL.
 
-For more info, feel free to visit their website: https://www.stitchdata.com/
-
-Prerequisites
-
-You must have a valid Stitch account, you will need to enable Stitch Import 
API and generate a token for the
-integration, for more info, please find more info 
https://www.stitchdata.com/docs/developers/import-api/guides/quick-start[here].
+For more info, feel free to visit their https://www.stitchdata.com/[website]
 
 Maven users will need to add the following dependency to their `pom.xml`
 for this component:
@@ -62,16 +57,21 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
-== Async Producer
+== Usage
+
+=== Prerequisites
+
+You must have a valid Stitch account, you will need to enable Stitch Import 
API and generate a token for the
+integration, for more info, please find more info 
https://www.stitchdata.com/docs/developers/import-api/guides/quick-start[here].
+
+=== Async Producer
 
 This component implements the async Consumer and producer.
 
 This allows camel route to consume and produce events asynchronously without 
blocking any threads.
 
-== Usage
-
-For example, to produce data to Stitch from a custom processor:
 
+.Example showing how to produce data to Stitch from a custom processor:
 [source,java]
 
--------------------------------------------------------------------------------
 from("direct:sendStitch")
@@ -93,6 +93,7 @@ from("direct:sendStitch")
 
--------------------------------------------------------------------------------
 
 === Message body type
+
 Currently, the component supports the following types for the body message on 
the producer side when producing a message to Stitch component:
 
 * `org.apache.camel.component.stitch.client.models.StitchRequestBody`: This 
represents this Stitch 
https://www.stitchdata.com/docs/developers/import-api/api#batch-data--arguments[JSON
 Message]. However,
@@ -110,7 +111,7 @@ can be type of `StitchMessage`, `StitchRequestBody` or 
`Map` but this Map here i
 
 === Examples
 
-Here is list of examples of data that can be proceeded to Stitch:
+Here is list of examples showing data that can be proceeded to Stitch:
 
 ==== Input body type 
`org.apache.camel.component.stitch.client.models.StitchRequestBody`:
 [source,java]
@@ -230,9 +231,9 @@ from("direct:sendStitch")
 .to("stitch:table_1?token=RAW({{token}})");
 
--------------------------------------------------------------------------------
 
-=== Development Notes (Important)
+== Development Notes (Important)
 
-When developing on this component, you will need to obtain your Stitch token 
to run the integration tests.
+When developing on this component, you will need to obtain a Stitch token to 
run the integration tests.
 In addition to the mocked unit tests,
 you *will need to run the integration tests with every change you make*
 To run the integration tests, in this component directory, run the following 
maven command:
diff --git a/components/camel-stomp/src/main/docs/stomp-component.adoc 
b/components/camel-stomp/src/main/docs/stomp-component.adoc
index 7d6fca0b1f9..966eb37d998 100644
--- a/components/camel-stomp/src/main/docs/stomp-component.adoc
+++ b/components/camel-stomp/src/main/docs/stomp-component.adoc
@@ -17,7 +17,7 @@
 The Stomp component is used for communicating with
 http://stomp.github.io/[Stomp] compliant message brokers, like
 http://activemq.apache.org[Apache ActiveMQ] or
-http://activemq.apache.org/apollo/[ActiveMQ Apollo]
+https://activemq.apache.org/components/artemis/[ActiveMQ Artemis]
 
 NOTE: Since STOMP specification is not actively maintained,
 please note 
https://github.com/fusesource/stompjms/tree/master/stompjms-client[STOMP JMS 
client]
@@ -89,20 +89,20 @@ the DSL via their URIs.
 
 From an Endpoint you can use the following methods
 
-* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createProducer--[createProducer()]
+* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createProducer--[`createProducer()`]
 will create a
 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Producer.html[Producer]
 for sending message exchanges to the endpoint
-* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createConsumer-org.apache.camel.Processor-[createConsumer()]
+* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createConsumer-org.apache.camel.Processor-[`createConsumer()`]
 implements the Event Driven Consumer
 pattern for consuming message exchanges from the endpoint via a
-https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Processor.html[Processor]
+https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Processor.html[`Processor`]
 when creating a
-https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Consumer.html[Consumer]
-* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createPollingConsumer--[createPollingConsumer()]
+https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Consumer.html[`Consumer`]
+* 
https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/Endpoint.html#createPollingConsumer--[`createPollingConsumer()`]
 implements the Polling Consumer pattern for
 consuming message exchanges from the endpoint via a
-https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/PollingConsumer.html[PollingConsumer]
+https://www.javadoc.io/doc/org.apache.camel/camel-api/current/org/apache/camel/PollingConsumer.html[`PollingConsumer`]
 
 
 
diff --git a/components/camel-stream/src/main/docs/stream-component.adoc 
b/components/camel-stream/src/main/docs/stream-component.adoc
index 71134b67937..4dc27214b51 100644
--- a/components/camel-stream/src/main/docs/stream-component.adoc
+++ b/components/camel-stream/src/main/docs/stream-component.adoc
@@ -63,7 +63,9 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
-== Message content
+== Usage
+
+=== Message content
 
 The Stream component supports either `String` or `byte[]` for writing
 to streams. Just add either `String` or `byte[]` content to the
@@ -116,7 +118,7 @@ 
from("stream:file?fileName=/server/logs/server.log&scanStream=true&scanStreamDel
   .to("bean:logService?method=parseLogLine");
 ----
 
-== Reading HTTP server side streaming
+=== Reading HTTP server side streaming
 
 The camel-stream component has basic support for connecting to a remote HTTP 
server and read streaming data
 (chunk of data separated by new-line).
diff --git 
a/components/camel-stringtemplate/src/main/docs/string-template-component.adoc 
b/components/camel-stringtemplate/src/main/docs/string-template-component.adoc
index 2d5a1eba416..e405efdab49 100644
--- 
a/components/camel-stringtemplate/src/main/docs/string-template-component.adoc
+++ 
b/components/camel-stringtemplate/src/main/docs/string-template-component.adoc
@@ -59,13 +59,15 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
-== Headers
+== Usage
+
+=== Headers
 
 Camel will store a reference to the resource in the message header with
 key, `org.apache.camel.stringtemplate.resource`. The Resource is an
 `org.springframework.core.io.Resource` object.
 
-== String Template Context
+=== String Template Context
 
 Camel will provide exchange information in the String Template context (just a
 `Map`). The `Exchange` is transferred as:
@@ -91,21 +93,21 @@ Camel will provide exchange information in the String 
Template context (just a
 |`response` |The Out message (only for InOut message exchange pattern).
 |=======================================================================
 
-== Hot reloading
+=== Hot reloading
 
 The string template resource is by default hot-reloadable for both file
 and classpath resources (expanded jar). If you set `contentCache=true`,
 Camel loads the resource only once and hot-reloading is not possible.
 This scenario can be used in production when the resource never changes.
 
-== Dynamic templates
+=== Dynamic templates
 
 Camel provides two headers by which you can define a different resource
 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.
 
-== StringTemplate Attributes
+=== StringTemplate Attributes
 
 You can define the custom context map by setting the
 message header "*CamelStringTemplateVariableMap*" just like the below
@@ -133,7 +135,7 @@ from("activemq:My.Queue").
   to("string-template:com/acme/MyResponse.tm");
 -----------------------------------------------
 
-== The Email Example
+=== The Email Example
 
 In this sample, we want to use a string template to send an order
 confirmation email. The email template is laid out in `StringTemplate`
@@ -148,6 +150,4 @@ Regards Camel Riders Bookstore
 <body>
 --------------------------------------------
 
-And the java code is as follows:
-
 include::spring-boot:partial$starter.adoc[]
diff --git a/components/camel-stub/src/main/docs/stub-component.adoc 
b/components/camel-stub/src/main/docs/stub-component.adoc
index 08e1603f903..e472566d45e 100644
--- a/components/camel-stub/src/main/docs/stub-component.adoc
+++ b/components/camel-stub/src/main/docs/stub-component.adoc
@@ -22,15 +22,6 @@ xref:mail-component.adoc[SMTP] or 
xref:http-component.adoc[Http] endpoint.
 Add *stub:*
 in front of any endpoint URI to stub out the endpoint.
 
-Internally, the Stub component creates xref:seda-component.adoc[Seda] 
endpoints.
-The main difference between xref:stub-component.adoc[Stub] and 
xref:seda-component.adoc[Seda] is
-that xref:seda-component.adoc[Seda] will validate the URI and parameters you 
give it,
-so putting seda: in front of a typical URI with query arguments will
-usually fail.
-Stub won't, though, as it basically ignores all query
-parameters to let you quickly stub out one or more endpoints in your
-route temporarily.
-
 == URI format
 
 ----
@@ -54,6 +45,16 @@ include::partial$component-endpoint-options.adoc[]
 
 // endpoint options: END
 
+== Usage
+
+Internally, the Stub component creates xref:seda-component.adoc[Seda] 
endpoints.
+The main difference between xref:stub-component.adoc[Stub] and 
xref:seda-component.adoc[Seda] is
+that xref:seda-component.adoc[Seda] will validate the URI and parameters you 
give it,
+so putting seda: in front of a typical URI with query arguments will
+usually fail.
+Stub won't, though, as it basically ignores all query
+parameters to let you quickly stub out one or more endpoints in your
+route temporarily.
 
 == Examples
 
diff --git a/components/camel-swift/src/main/docs/swiftMt-dataformat.adoc 
b/components/camel-swift/src/main/docs/swiftMt-dataformat.adoc
index 71fa4d3d32f..57fdf0ad961 100644
--- a/components/camel-swift/src/main/docs/swiftMt-dataformat.adoc
+++ b/components/camel-swift/src/main/docs/swiftMt-dataformat.adoc
@@ -86,6 +86,7 @@ The unmarshaller converts the input data into the concrete 
class of type `com.pr
 In this example, we unmarshal the content of a file to get SWIFT MT
 objects before processing them with the `newOrder` processor.
 
+.SwiftMt example in Java
 [source,java]
 ----
 from("file://data.bin")
@@ -93,8 +94,7 @@ from("file://data.bin")
     .process("newOrder");
 ----
 
-In Spring DSL:
-
+.SwiftMt example in In Spring DSL
 [source,xml]
 ----
  <from uri="file://data.bin">
@@ -109,7 +109,7 @@ In Spring DSL:
 To use SWIFT MT in your Camel routes, you need to add a dependency on
 *camel-swift* which implements this data format.
 
-If you use Maven, you can add the following to your pom.xml:
+If you use Maven, you can add the following to your `pom.xml`:
 
 [source,xml]
 ----
diff --git a/components/camel-telegram/src/main/docs/telegram-component.adoc 
b/components/camel-telegram/src/main/docs/telegram-component.adoc
index 0e67f43b1cd..1190c208441 100644
--- a/components/camel-telegram/src/main/docs/telegram-component.adoc
+++ b/components/camel-telegram/src/main/docs/telegram-component.adoc
@@ -74,20 +74,18 @@ include::partial$component-endpoint-headers.adoc[]
 The Telegram component supports both consumer and producer endpoints.
 It can also be used in *reactive chatbot mode* (to consume, then produce 
messages).
 
-== Producer Example
+=== Producer
 
 The following is a basic example of how to send a message to a Telegram chat 
through the
 Telegram Bot API.
 
-in Java DSL
-
+.Telegram producer example in Java DSL
 [source,java]
 ---------------------------------------------------------
 
from("direct:start").to("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere");
 ---------------------------------------------------------
 
-or in Spring XML
-
+.Telegram producer example in Spring XML
 [source,xml]
 ---------------------------------------------
 <route>
@@ -127,19 +125,19 @@ The following message bodies are allowed for a producer 
endpoint (messages of ty
 |===================================================
 
 
-== Consumer Example
+=== Consumer
 
 The following is a basic example of how to receive all messages that telegram 
users are sending to the configured Bot.
 In Java DSL
 
+.Telegram consumer example in Java DSL
 [source,java]
 ---------------------------------------------------------
 
from("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere")
 .bean(ProcessorBean.class)
 ---------------------------------------------------------
 
-or in Spring XML
-
+.Telegram producer example in Spring XML
 [source,xml]
 ---------------------------------------------
 <route>
@@ -180,13 +178,14 @@ Supported types for incoming messages are
 
 
 
-== Reactive Chat-Bot Example
+=== Reactive Chat-Bot Example
 
 The reactive chatbot mode is a simple way of using the Camel component to 
build a simple
 chatbot that replies directly to chat messages received from the Telegram 
users.
 
 The following is a basic configuration of the chatbot in Java DSL
 
+.Telegram reactive example in Java
 [source,java]
 ---------------------------------------------------------
 
from("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere")
@@ -194,8 +193,7 @@ 
from("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHer
 
.to("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere");
 ---------------------------------------------------------
 
-or in Spring XML
-
+.Telegram reactive example in Spring XML
 [source,xml]
 ---------------------------------------------
 <route>
@@ -229,7 +227,7 @@ public class ChatBotLogic {
 Every non-null string returned by the `chatBotProcess` method is automatically 
routed to the
 chat that originated the request (as the `CamelTelegramChatId` header is used 
to route the message).
 
-== Getting the Chat ID
+=== Getting the Chat ID
 
 If you want to push messages to a specific Telegram chat when an event occurs, 
you need to
 retrieve the corresponding chat ID. The chat ID is not currently shown in the 
telegram client,
@@ -257,7 +255,7 @@ 
to("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHere&
 
 Note that the corresponding URI parameter is simply `chatId`.
 
-== Customizing keyboard
+=== Customizing keyboard
 
 You can customize the user keyboard instead of asking him to write an option.
 `OutgoingTextMessage` has the property `ReplyMarkup` which can be used for 
such a thing.
@@ -316,7 +314,7 @@ 
from("telegram:bots?authorizationToken=123456789:insertYourAuthorizationTokenHer
 ---------------------------------------------------------
 
 
-== Webhook Mode
+=== Webhook Mode
 
 The Telegram component supports usage in the *webhook mode* using the 
*camel-webhook* component.
 
diff --git 
a/components/camel-test/camel-test-junit5/src/main/docs/test-junit5.adoc 
b/components/camel-test/camel-test-junit5/src/main/docs/test-junit5.adoc
index e0477ec60e0..e0b8232501f 100644
--- a/components/camel-test/camel-test-junit5/src/main/docs/test-junit5.adoc
+++ b/components/camel-test/camel-test-junit5/src/main/docs/test-junit5.adoc
@@ -19,7 +19,7 @@ and implement your Camel unit test.
 As shown below is a basic junit test which uses `camel-test-junit5`. The 
`createRouteBuilder` method is used
 for build the routes to be tested. Then the methods with `@Test` annotations 
are JUnit test methods which
 will be executed. The base class `CamelTestSupport` has a number of helper 
methods to configure testing,
-see more at the javadoc of this class.
+see more at the Javadoc of this class.
 
 [source,java]
 ----
@@ -93,4 +93,4 @@ Once Camel related steps have been performed, there are still 
typical JUnit 5 mi
 * `org.junit.AfterClass` should be changed in favor of `import 
org.junit.jupiter.api.AfterAll`
 * Built-in `assertThat` from third-party assertion libraries should be used. 
For instance, use `org.hamcrest.MatcherAssert.assertThat` from `java-hamcrest`
 
-Depending on the context, more involved tips might be needed, please check the 
https://junit.org/junit5/docs/current/user-guide/[JUnit 5 User Guide].
+Please check the https://junit.org/junit5/docs/current/user-guide/[JUnit 5 
User Guide] for additional insights about writing tests using JUnit 5.
diff --git 
a/components/camel-test/camel-test-main-junit5/src/main/docs/test-main-junit5.adoc
 
b/components/camel-test/camel-test-main-junit5/src/main/docs/test-main-junit5.adoc
index fe164ba26c6..a7a2cfb00c8 100644
--- 
a/components/camel-test/camel-test-main-junit5/src/main/docs/test-main-junit5.adoc
+++ 
b/components/camel-test/camel-test-main-junit5/src/main/docs/test-main-junit5.adoc
@@ -95,7 +95,7 @@ Several methods in the test class and/or its parent classes 
can be annotated.
 
 === Examples ===
 
-In the next examples, the test class `SomeTest` adds a configuration class and 
specifies the xml routes to include.
+In the next examples, the test class `SomeTest` adds a configuration class and 
specifies the XML routes to include.
 
 [tabs]
 ====
diff --git 
a/components/camel-test/camel-test-spring-junit5/src/main/docs/test-spring-junit5.adoc
 
b/components/camel-test/camel-test-spring-junit5/src/main/docs/test-spring-junit5.adoc
index 918bfaac667..694d7b7a64a 100644
--- 
a/components/camel-test/camel-test-spring-junit5/src/main/docs/test-spring-junit5.adoc
+++ 
b/components/camel-test/camel-test-spring-junit5/src/main/docs/test-spring-junit5.adoc
@@ -200,17 +200,17 @@ The following annotations can be used with 
`camel-spring-junit5` unit testing.
 [width="100%",cols="1m,4",options="header",]
 |=======================================================================
 |Annotation |Description
-| @CamelSpringBootTest | Used for testing Camel with Spring Boot
-| @CamelSpringTest | Used for testing Camel with classic Spring XML (not 
Spring Boot)
-| @DisableJmx | Used for disabling JMX
-| @EnableRouteCoverage | Enables dumping route coverage statistics. The route 
coverage status is written as xml files in the `target/camel-route-coverage` 
directory after the test has finished. See more information at 
xref:manual::camel-report-maven-plugin.adoc[Camel Maven Report Plugin].
-| @ExcludeRoutes | Indicates if certain route builder classes should be 
excluded from package scan discovery
-| @MockEndpoints | Auto-mocking of endpoints whose URIs match the provided 
filter. For more information, see xref:manual::advice-with.adoc[Advice With].
-| @MockEndpointsAndSkip | Auto-mocking of endpoints whose URIs match the 
provided filter with the added provision that the endpoints are also skipped. 
For more information, see xref:manual::advice-with.adoc[Advice With].
-| @ProvidesBreakpoint | Indicates that the annotated method returns a 
`Breakpoint` for use in the test. Useful for intercepting traffic to all 
endpoints or simply for setting a break point in an IDE for debugging. The 
method must be `public static`, take no arguments, and return `Breakpoint`.
-| @ShutdownTimeout | Timeout to use for 
xref:manual::graceful-shutdown.adoc[shutdown]. The default is 10 seconds.
-| @UseAdviceWith | To enable testing with xref:manual::advice-with.adoc[Advice 
With].
-| @UseOverridePropertiesWithPropertiesComponent | To use custom `Properties` 
with the xref:ROOT:properties-component.adoc[Properties] component. The 
annotated method must be `public` and return `Properties`.
+| `@CamelSpringBootTest` | Used for testing Camel with Spring Boot
+| `@CamelSpringTest` | Used for testing Camel with classic Spring XML (not 
Spring Boot)
+| `@DisableJmx` | Used for disabling JMX
+| `@EnableRouteCoverage` | Enables dumping route coverage statistics. The 
route coverage status is written as xml files in the 
`target/camel-route-coverage` directory after the test has finished. See more 
information at xref:manual::camel-report-maven-plugin.adoc[Camel Maven Report 
Plugin].
+| `@ExcludeRoutes` | Indicates if certain route builder classes should be 
excluded from package scan discovery
+| `@MockEndpoints` | Auto-mocking of endpoints whose URIs match the provided 
filter. For more information, see xref:manual::advice-with.adoc[Advice With].
+| `@MockEndpointsAndSkip` | Auto-mocking of endpoints whose URIs match the 
provided filter with the added provision that the endpoints are also skipped. 
For more information, see xref:manual::advice-with.adoc[Advice With].
+| `@ProvidesBreakpoint` | Indicates that the annotated method returns a 
`Breakpoint` for use in the test. Useful for intercepting traffic to all 
endpoints or simply for setting a break point in an IDE for debugging. The 
method must be `public static`, take no arguments, and return `Breakpoint`.
+| `@ShutdownTimeout` | Timeout to use for 
xref:manual::graceful-shutdown.adoc[shutdown]. The default is 10 seconds.
+| `@UseAdviceWith` | To enable testing with 
xref:manual::advice-with.adoc[Advice With].
+| `@UseOverridePropertiesWithPropertiesComponent` | To use custom `Properties` 
with the xref:ROOT:properties-component.adoc[Properties] component. The 
annotated method must be `public` and return `Properties`.
 |=======================================================================
 
 
diff --git 
a/components/camel-threadpoolfactory-vertx/src/main/docs/threadpoolfactory-vertx.adoc
 
b/components/camel-threadpoolfactory-vertx/src/main/docs/threadpoolfactory-vertx.adoc
index 7db87421841..4c455dcc18e 100644
--- 
a/components/camel-threadpoolfactory-vertx/src/main/docs/threadpoolfactory-vertx.adoc
+++ 
b/components/camel-threadpoolfactory-vertx/src/main/docs/threadpoolfactory-vertx.adoc
@@ -9,7 +9,7 @@
 
 *Since Camel {since}*
 
-The camel-threadpoolfactory-vertx is a VertX based implementation of the 
`ThreadPoolFactory` SPI.
+The Camel ThreadPoolFactory Vert.x component is a VertX based implementation 
of the `ThreadPoolFactory` SPI.
 
 By default, Camel will use its own thread pool for EIPs that can use parallel 
processing (such as splitter, aggregator).
 You can plug in different engines via an SPI interface. This is a VertX based 
plugin that uses the VertX worker thread pool
diff --git a/components/camel-thymeleaf/src/main/docs/thymeleaf-component.adoc 
b/components/camel-thymeleaf/src/main/docs/thymeleaf-component.adoc
index 8971d388664..e63030033de 100644
--- a/components/camel-thymeleaf/src/main/docs/thymeleaf-component.adoc
+++ b/components/camel-thymeleaf/src/main/docs/thymeleaf-component.adoc
@@ -74,7 +74,9 @@ $in.setHeader("fruit", "Apple")
 
 The `fruit` header is now accessible from the `message.out.headers`.
 
-== Thymeleaf Context
+== Usage
+
+=== Thymeleaf Context
 
 Camel will provide exchange information in the Thymeleaf context (just a
 `Map`).
@@ -112,7 +114,7 @@ EngineContext engineContext = new 
EngineContext(variableMap);
 exchange.getIn().setHeader("CamelThymeleafContext", engineContext);
 -----------------------------------------------------------------------
 
-== Hot reloading
+=== Hot reloading
 
 The Thymeleaf template resource is, by default, hot reloadable for both
 file and classpath resources (expanded jar). If you set
@@ -120,7 +122,7 @@ file and classpath resources (expanded jar). If you set
 hot reloading is not possible. This scenario can be used in production
 when the resource never changes.
 
-== Dynamic templates
+=== Dynamic templates
 
 Camel provides two headers by which you can define a different resource
 location for a template or the template content itself. If any of these
@@ -131,10 +133,10 @@ resource. This allows you to provide a dynamic template 
at runtime.
 |=======================================================================
 |Header |Type |Description
 
-|CamelThymeleafResourceUri |String |A URI for the template resource to use 
instead of the
+|`CamelThymeleafResourceUri` |`String` |A URI for the template resource to use 
instead of the
 endpoint configured.
 
-|CamelThymeleafTemplate |String |The template to use instead of the endpoint 
configured.
+|`CamelThymeleafTemplate` |`String` |The template to use instead of the 
endpoint configured.
 |=======================================================================
 
 == Examples
@@ -199,7 +201,7 @@ from("direct:in")
   .to("thymeleaf:dummy?allowTemplateFromHeader=true"");
 
---------------------------------------------------------------------------------------------------------------
 
-== The Email Example
+=== The Email Example
 
 In this sample, we want to use Thymeleaf templating for an order
 confirmation email. The email template is laid out in Thymeleaf as:
diff --git a/components/camel-tika/src/main/docs/tika-component.adoc 
b/components/camel-tika/src/main/docs/tika-component.adoc
index 26f4256ef62..a46c4b39366 100644
--- a/components/camel-tika/src/main/docs/tika-component.adoc
+++ b/components/camel-tika/src/main/docs/tika-component.adoc
@@ -49,8 +49,9 @@ include::partial$component-endpoint-options.adoc[]
 
 // endpoint options: END
 
+== Usage
 
-== To Detect a file's MIME Type
+=== To Detect a file's MIME Type
 
 The file should be placed in the Body.
 
@@ -60,7 +61,7 @@ from("direct:start")
         .to("tika:detect");
 ----
 
-== To Parse a File
+=== To Parse a File
 
 The file should be placed in the Body.
 
diff --git a/components/camel-timer/src/main/docs/timer-component.adoc 
b/components/camel-timer/src/main/docs/timer-component.adoc
index c4ba453dc44..05c5aa541b9 100644
--- a/components/camel-timer/src/main/docs/timer-component.adoc
+++ b/components/camel-timer/src/main/docs/timer-component.adoc
@@ -55,7 +55,9 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
-== Exchange Properties
+== Usage
+
+=== Exchange Properties
 
 When the timer is fired, it adds the following information as properties
 to the `Exchange`:
@@ -98,7 +100,7 @@ And the route in Spring DSL:
 </route>
 -----
 
-== Firing as soon as possible
+=== Firing as soon as possible
 
 You may want to fire messages in a Camel route as soon as possible, you
 can use a negative delay:
@@ -120,7 +122,7 @@ reached.
 If you don't specify a `repeatCount` then the timer will continue firing
 messages until the route will be stopped. 
 
-== Firing only once
+=== Firing only once
 
 You may want to fire a message in a Camel route only once, such as when
 starting the route.
diff --git a/components/camel-tracing/src/main/docs/tracing.adoc 
b/components/camel-tracing/src/main/docs/tracing.adoc
index 2ce65ec572e..0e01a56fd98 100644
--- a/components/camel-tracing/src/main/docs/tracing.adoc
+++ b/components/camel-tracing/src/main/docs/tracing.adoc
@@ -11,7 +11,7 @@
 
 This module is a common interface and API for distributed tracing.
 
-This module is not intended to be used by end users. Instead, should use one 
of:
+This module is not intended to be used by end users. Instead, you should use 
one of:
 
 * xref:opentelemetry.adoc[`camel-opentelemetry`]
 * xref:observation.adoc[`camel-observation`]
diff --git a/components/camel-twilio/src/main/docs/twilio-component.adoc 
b/components/camel-twilio/src/main/docs/twilio-component.adoc
index d713f37e342..c5ab21a251f 100644
--- a/components/camel-twilio/src/main/docs/twilio-component.adoc
+++ b/components/camel-twilio/src/main/docs/twilio-component.adoc
@@ -17,7 +17,7 @@
 The Twilio component provides access to Version 2010-04-01 of Twilio REST APIs 
accessible
 using https://github.com/twilio/twilio-java[Twilio Java SDK].
 
-Maven users will need to add the following dependency to their pom.xml
+Maven users will need to add the following dependency to their `pom.xml`
 for this component:
 
 [source,xml]
@@ -43,8 +43,9 @@ include::partial$component-endpoint-options.adoc[]
 
 // endpoint options: END
 
+== Usage
 
-== Producer Endpoints:
+=== Producer Endpoints:
 
 Producer endpoints can use endpoint prefixes followed by endpoint names
 and associated options described next. A shorthand alias can be used for
diff --git 
a/components/camel-undertow-spring-security/src/main/docs/undertow-spring-security.adoc
 
b/components/camel-undertow-spring-security/src/main/docs/undertow-spring-security.adoc
index 4b084345e85..52f19987094 100644
--- 
a/components/camel-undertow-spring-security/src/main/docs/undertow-spring-security.adoc
+++ 
b/components/camel-undertow-spring-security/src/main/docs/undertow-spring-security.adoc
@@ -27,8 +27,8 @@ Configuration has to provide the following security attribute:
 [width="100%"]
 |===
 | Name | Description | Type
-| *securityFiler* | Provides security filter gained from configured spring 
security (5.x). Filter could be obtained,
-for example, from DelegatingFilterProxyRegistrationBean. | Filter
+| `securityFiler` | Provides security filter gained from configured spring 
security (5.x). Filter could be obtained,
+for example, from `DelegatingFilterProxyRegistrationBean`. | Filter
 |===
 
 Each exchange created by Undertow endpoint with spring security contains 
header 'SpringSecurityProvider_principal' (
diff --git a/components/camel-undertow/src/main/docs/undertow-component.adoc 
b/components/camel-undertow/src/main/docs/undertow-component.adoc
index 43d2361c118..e2de917c72c 100644
--- a/components/camel-undertow/src/main/docs/undertow-component.adoc
+++ b/components/camel-undertow/src/main/docs/undertow-component.adoc
@@ -18,7 +18,7 @@ The Undertow component provides HTTP and WebSocket based 
endpoints for consuming
 and producing HTTP/WebSocket requests.
 
 That is, the Undertow component behaves as a simple Web server.
-Undertow can also be used as a http client that means you can also use
+Undertow can also be used as an HTTP client that means you can also use
 it with Camel as a producer.
 
 Since the component also supports WebSocket
@@ -70,7 +70,9 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
-== Message Headers
+== Usage
+
+=== Message Headers
 
 Camel uses the same message headers as the xref:http-component.adoc[HTTP]
 component. It also uses `Exchange.HTTP_CHUNKED,CamelHttpChunked` header to 
turn on or turn off
@@ -81,7 +83,42 @@ For example, given a client request with the URL,
 `\http://myserver/myserver?orderid=123`, the exchange will contain a
 header named `orderid` with the value `123`.
 
-== HTTP Producer Example
+=== Using localhost as host
+
+When you specify `localhost` in a URL, Camel exposes the endpoint only
+on the local TCP/IP network interface, so it cannot be accessed from
+outside the machine it operates on.
+
+If you need to expose an Undertow endpoint on a specific network interface,
+the numerical IP address of this interface should be used as the host.
+If you need to expose an Undertow endpoint on all network interfaces, the
+`0.0.0.0` address should be used.
+
+To listen across an entire URI prefix, see
+xref:manual:faq:how-do-i-let-jetty-match-wildcards.adoc[How do I let Jetty 
match wildcards?].
+
+If you actually want to expose routes by HTTP and already have a
+Servlet, you should instead refer to the
+xref:servlet-component.adoc[Servlet Transport].
+
+=== Security provider
+
+To plug in a security provider for endpoint authentication, implement SPI 
interface
+`org.apache.camel.component.undertow.spi.UndertowSecurityProvider`.
+
+Undertow component locates all implementations of `UndertowSecurityProvider` 
using
+Java SPI (Service Provider Interfaces).
+If there is an object passed to the component as parameter 
`securityConfiguration` and provider accepts it.
+Provider will be used
+for authentication of all requests.
+
+Property `requireServletContext` of security providers forces the Undertow 
server to start
+with servlet context. There will be no servlet actually handled. This feature 
is meant only
+for use with servlet filters, which needs servlet context for their 
functionality.
+
+== Examples
+
+=== HTTP Producer Example
 
 The following is a basic example of how to send an HTTP request to an
 existing HTTP endpoint.
@@ -109,7 +146,7 @@ XML::
 
 ====
 
-== HTTP Consumer Example
+=== HTTP Consumer Example
 
 In this sample we define a route that exposes a HTTP service at
 `\http://localhost:8080/myapp/myservice`:
@@ -122,7 +159,7 @@ In this sample we define a route that exposes a HTTP 
service at
 </route>
 ----
 
-== WebSocket Example
+=== WebSocket Example
 
 In this sample we define a route that exposes a WebSocket service at
 `\http://localhost:8080/myapp/mysocket` and returns back a response to the 
same channel:
@@ -136,38 +173,4 @@ In this sample we define a route that exposes a WebSocket 
service at
 </route>
 ----
 
-== Using localhost as host
-
-When you specify `localhost` in a URL, Camel exposes the endpoint only
-on the local TCP/IP network interface, so it cannot be accessed from
-outside the machine it operates on.
-
-If you need to expose an Undertow endpoint on a specific network interface,
-the numerical IP address of this interface should be used as the host.
-If you need to expose an Undertow endpoint on all network interfaces, the
-`0.0.0.0` address should be used.
-
-To listen across an entire URI prefix, see
-xref:manual:faq:how-do-i-let-jetty-match-wildcards.adoc[How do I let Jetty 
match wildcards?].
-
-If you actually want to expose routes by HTTP and already have a
-Servlet, you should instead refer to the
-xref:servlet-component.adoc[Servlet Transport].
-
-== Security provider
-
-To plug in a security provider for endpoint authentication, implement SPI 
interface
-`org.apache.camel.component.undertow.spi.UndertowSecurityProvider`.
-
-Undertow component locates all implementations of `UndertowSecurityProvider` 
using
-Java SPI (Service Provider Interfaces).
-If there is an object passed to the component as parameter 
`securityConfiguration` and provider accepts it.
-Provider will be used
-for authentication of all requests.
-
-Property `requireServletContext` of security providers forces the Undertow 
server to start
-with servlet context. There will be no servlet actually handled. This feature 
is meant only
-for use with servlet filters, which needs servlet context for their 
functionality.
-
-
 include::spring-boot:partial$starter.adoc[]
diff --git 
a/components/camel-univocity-parsers/src/main/docs/univocityFixed-dataformat.adoc
 
b/components/camel-univocity-parsers/src/main/docs/univocityFixed-dataformat.adoc
index 074668243e8..6d1f68f6088 100644
--- 
a/components/camel-univocity-parsers/src/main/docs/univocityFixed-dataformat.adoc
+++ 
b/components/camel-univocity-parsers/src/main/docs/univocityFixed-dataformat.adoc
@@ -24,7 +24,7 @@ tabulation
 Thus, there are three data formats based on uniVocity-parsers.
 
 If you use Maven, you can add the following to your `pom.xml`,
-substituting the version number for the latest and greatest release.
+substituting the version number for the latest release.
 
 [source,xml]
 ----------------------------------------------------
diff --git a/components/camel-velocity/src/main/docs/velocity-component.adoc 
b/components/camel-velocity/src/main/docs/velocity-component.adoc
index 29ef11673fa..6aaf688148a 100644
--- a/components/camel-velocity/src/main/docs/velocity-component.adoc
+++ b/components/camel-velocity/src/main/docs/velocity-component.adoc
@@ -75,7 +75,9 @@ $in.setHeader("fruit", "Apple")
 
 The `fruit` header is now accessible from the `message.out.headers`.
 
-== Velocity Context
+== Usage
+
+=== Velocity Context
 
 Camel will provide exchange information in the Velocity context (just a
 `Map`).
@@ -115,7 +117,7 @@ VelocityContext velocityContext = new 
VelocityContext(variableMap);
 exchange.getIn().setHeader("CamelVelocityContext", velocityContext);
 -----------------------------------------------------------------------
 
-== Hot reloading
+=== Hot reloading
 
 The Velocity template resource is, by default, hot reloadable for both
 file and classpath resources (expanded jar). If you set
@@ -123,7 +125,7 @@ file and classpath resources (expanded jar). If you set
 hot reloading is not possible. This scenario can be used in production
 when the resource never changes.
 
-== Dynamic templates
+=== Dynamic templates
 
 Camel provides two headers by which you can define a different resource
 location for a template or the template content itself. If any of these
@@ -134,10 +136,10 @@ resource. This allows you to provide a dynamic template 
at runtime.
 |=======================================================================
 |Header |Type |Description
 
-|CamelVelocityResourceUri |String |A URI for the template resource to use 
instead of the
+|`CamelVelocityResourceUri` |String |A URI for the template resource to use 
instead of the
 endpoint configured.
 
-|CamelVelocityTemplate |String |The template to use instead of the endpoint 
configured.
+|`CamelVelocityTemplate` |String |The template to use instead of the endpoint 
configured.
 |=======================================================================
 
 == Examples
@@ -202,7 +204,7 @@ from("direct:in").
   to("velocity:dummy?allowTemplateFromHeader=true"");
 
---------------------------------------------------------------------------------------------------------------
 
-== The Email Example
+=== The Email Example
 
 In this sample, we want to use Velocity templating for an order
 confirmation email. The email template is laid out in Velocity as:
diff --git 
a/components/camel-vertx/camel-vertx-http/src/main/docs/vertx-http-component.adoc
 
b/components/camel-vertx/camel-vertx-http/src/main/docs/vertx-http-component.adoc
index 63e8c40fa9e..9f831760397 100644
--- 
a/components/camel-vertx/camel-vertx-http/src/main/docs/vertx-http-component.adoc
+++ 
b/components/camel-vertx/camel-vertx-http/src/main/docs/vertx-http-component.adoc
@@ -55,6 +55,7 @@ include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
 == Usage
+
 The following example shows how to send a request to an HTTP endpoint.
 
 You can override the URI configured on the `vertx-http` producer via headers 
`Exchange.HTTP_URI` and `Exchange.HTTP_PATH`.
@@ -65,13 +66,13 @@ from("direct:start")
     .to("vertx-http:https://camel.apache.org";);
 ----
 
-== URI Parameters
+=== URI Parameters
 
 The `vertx-http` producer supports URI parameters to be sent to the HTTP
 server. The URI parameters can either be set directly on the endpoint
 URI, or as a header with the key `Exchange.HTTP_QUERY` on the message.
 
-== Response code
+=== Response code
 
 Camel will handle, according to the HTTP response code:
 
@@ -83,13 +84,13 @@ with the information.
 * Response code is 400+, Camel regards it as an external server failure
 and will throw a `HttpOperationFailedException` with the information.
 
-== throwExceptionOnFailure
+=== throwExceptionOnFailure
 
 The option, `throwExceptionOnFailure`, can be set to `false` to prevent
 the `HttpOperationFailedException` from being thrown for failed response
 codes. This allows you to get any response from the remote server.
 
-== Exceptions
+=== Exceptions
 
 `HttpOperationFailedException` exception contains the following information:
 
@@ -99,7 +100,7 @@ codes. This allows you to get any response from the remote 
server.
 * Response body as a `java.lang.String`, if server provided a body as
 response
 
-== HTTP method
+=== HTTP method
 
 The following algorithm determines the HTTP method to be used: +
 1. Use method provided as endpoint configuration (`httpMethod`). +
@@ -109,7 +110,7 @@ The following algorithm determines the HTTP method to be 
used: +
 5. `POST` if there is data to send (body is not `null`). +
 6. `GET` otherwise.
 
-== HTTP form parameters
+=== HTTP form parameters
 
 You can send HTTP form parameters in one of two ways.
 
@@ -119,11 +120,11 @@ body is a `String` formatted as form variables. For 
example `param1=value1&param
 2. Set the message body as a 
https://vertx.io/docs/apidocs/io/vertx/core/MultiMap.html[MultiMap] which 
allows you to
 configure form parameter names and values.
 
-== Multipart form data
+=== Multipart form data
 
 You can upload text or binary files by setting the message body as a 
https://vertx.io/docs/apidocs/io/vertx/ext/web/multipart/MultipartForm.html[MultipartForm].
 
-== Customizing Vert.x Web Client options
+=== Customizing Vert.x Web Client options
 
 When finer control of the Vert.x Web Client configuration is required, you can 
bind a custom 
https://vertx.io/docs/apidocs/io/vertx/ext/web/client/WebClientOptions.html[WebClientOptions]
 instance to the registry.
@@ -145,13 +146,13 @@ from("direct:start")
     .to("vertx-http:http://localhost:8080?webClientOptions=#clientOptions";)
 ---------------------------
 
-== SSL
+=== SSL
 
 The Vert.x HTTP component supports SSL/TLS configuration through the 
xref:manual::camel-configuration-utilities.adoc[Camel JSSE Configuration 
Utility].
 
 It is also possible to configure SSL options by providing a custom 
`WebClientOptions`.
 
-== Session Management
+=== Session Management
 
 Session management can be enabled via the `sessionManagement` URI option. When 
enabled, an in-memory cookie store is used to track cookies.
 This can be overridden by providing a custom `CookieStore` via the 
`cookieStore` URI option.
diff --git 
a/components/camel-vertx/camel-vertx-websocket/src/main/docs/vertx-websocket-component.adoc
 
b/components/camel-vertx/camel-vertx-websocket/src/main/docs/vertx-websocket-component.adoc
index 9c6f98c0a8d..56ef2227769 100644
--- 
a/components/camel-vertx/camel-vertx-websocket/src/main/docs/vertx-websocket-component.adoc
+++ 
b/components/camel-vertx/camel-vertx-websocket/src/main/docs/vertx-websocket-component.adoc
@@ -55,7 +55,7 @@ include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
 == Usage
-The following example shows how to expose a WebSocket on 
http://localhost:8080/echo and returns an 'echo' response back to the same 
channel:
+The following example shows how to expose a WebSocket on 
http://localhost:8080/echo and returns an '_echo_' response back to the same 
channel:
 
 [source,java]
 ----
@@ -72,7 +72,7 @@ 
from("vertx-websocket:my.websocket.com:8080/chat?consumeAsClient=true")
     .log("Got WebSocket message ${body}");
 ----
 
-== Path & query parameters
+=== Path & query parameters
 
 The WebSocket server consumer supports the configuration of parameterized 
paths. The path parameter value will be set
 as a Camel exchange header:
@@ -94,7 +94,7 @@ from("vertx-websocket:localhost:8080/chat/{user}")
     .log("New message from ${header.user} (${header.role}) >>> ${body}")
 ----
 
-== Sending messages to peers connected to the vertx-websocket server consumer
+=== Sending messages to peers connected to the vertx-websocket server consumer
 
 NOTE: This section only applies when producing messages to a WebSocket hosted 
by the camel-vertx-websocket consumer.
 It is not relevant when producing messages to an externally hosted WebSocket.
@@ -129,7 +129,7 @@ from("direct:broadcastMessage")
     .to("vertx-websocket:localhost:8080/chat");
 ----
 
-== SSL
+=== SSL
 
 By default, the `ws://` protocol is used, but secure connections with `wss://` 
are supported by configuring the consumer or producer
 via the `sslContextParameters` URI parameter and the 
xref:manual::camel-configuration-utilities.adoc[Camel JSSE Configuration 
Utility]
diff --git a/components/camel-wasm/src/main/docs/wasm-component.adoc 
b/components/camel-wasm/src/main/docs/wasm-component.adoc
index 2061a66254c..9d165f48f40 100644
--- a/components/camel-wasm/src/main/docs/wasm-component.adoc
+++ b/components/camel-wasm/src/main/docs/wasm-component.adoc
@@ -54,8 +54,9 @@ include::partial$component-endpoint-options.adoc[]
 include::partial$component-endpoint-headers.adoc[]
 // component headers: END
 
+== Usage
 
-== Writing A Wasm processor
+=== Writing A Wasm processor
 
 In _Wasm_, sharing objects between the host, in this case the _JVM_, and the 
_Wasm_ module is deliberately restricted and as of today, it requires a number 
of steps:
 
@@ -65,7 +66,7 @@ In _Wasm_, sharing objects between the host, in this case the 
_JVM_, and the _Wa
 4. From the _Wasm_ module, read the data and process it
 5. From the _host_, release the memory when done
 
-=== Providing functions for memory management
+==== Providing functions for memory management
 
 The module hosting the function *must* provide the functions to 
allocate/deallocate memory that *must* be named `alloc` and `dealloc` 
respectively.
 
@@ -89,7 +90,7 @@ pub unsafe extern "C" fn dealloc(ptr: &mut u8, len: i32) {
 }
 ---------------------------------------
 
-=== Data shapes
+==== Data shapes
 
 It is not possible to share a Java object with the Wasm module directly, and 
as mentioned before,
 data exchange leverages Wasm's memory that can be accessed by both the host 
and the guest runtimes.
@@ -107,7 +108,7 @@ public static class Wrapper {
 }
 -------------------------------------------------
 
-=== Data processing
+==== Data processing
 
 The component expects the processing function to have the following signature:
 

Reply via email to