You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by zr...@apache.org on 2019/09/04 21:02:07 UTC

[camel] 13/16: CAMEL-13932: Heading cleanup

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

zregvart pushed a commit to branch camel-2.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit ceb920e1878d647cb74e86f6a98c62f7ea154c82
Author: Zoran Regvart <zr...@apache.org>
AuthorDate: Tue Sep 3 15:52:19 2019 +0200

    CAMEL-13932: Heading cleanup
---
 .../src/main/docs/ahc-ws-component.adoc            | 12 ++--
 .../camel-apns/src/main/docs/apns-component.adoc   | 20 +++----
 .../camel-asn1/src/main/docs/asn1-dataformat.adoc  |  6 +-
 .../src/main/docs/asterisk-component.adoc          |  6 +-
 .../camel-atmos/src/main/docs/atmos-component.adoc |  8 +--
 .../main/docs/atmosphere-websocket-component.adoc  |  8 +--
 .../camel-atom/src/main/docs/atom-component.adoc   | 10 ++--
 .../src/main/docs/atomix-map-component.adoc        | 10 ++--
 .../src/main/docs/atomix-messaging-component.adoc  |  2 +-
 .../src/main/docs/atomix-multimap-component.adoc   |  2 +-
 .../src/main/docs/atomix-queue-component.adoc      |  2 +-
 .../src/main/docs/atomix-set-component.adoc        |  2 +-
 .../src/main/docs/atomix-value-component.adoc      |  2 +-
 .../camel-avro/src/main/docs/avro-component.adoc   | 12 ++--
 .../camel-avro/src/main/docs/avro-dataformat.adoc  |  6 +-
 .../camel-aws-xray/src/main/docs/aws-xray.adoc     | 12 ++--
 .../camel-aws/src/main/docs/aws-cw-component.adoc  | 12 ++--
 .../camel-aws/src/main/docs/aws-ddb-component.adoc | 30 +++++-----
 .../src/main/docs/aws-ddbstream-component.adoc     | 22 ++++----
 .../camel-aws/src/main/docs/aws-ec2-component.adoc |  8 +--
 .../camel-aws/src/main/docs/aws-iam-component.adoc | 10 ++--
 .../src/main/docs/aws-kinesis-component.adoc       | 20 +++----
 .../main/docs/aws-kinesis-firehose-component.adoc  | 14 ++---
 .../camel-aws/src/main/docs/aws-kms-component.adoc | 10 ++--
 .../src/main/docs/aws-lambda-component.adoc        | 14 ++---
 .../camel-aws/src/main/docs/aws-mq-component.adoc  |  8 +--
 .../camel-aws/src/main/docs/aws-s3-component.adoc  | 24 ++++----
 .../camel-aws/src/main/docs/aws-sdb-component.adoc | 20 +++----
 .../camel-aws/src/main/docs/aws-ses-component.adoc | 14 ++---
 .../camel-aws/src/main/docs/aws-sns-component.adoc | 14 ++---
 .../camel-aws/src/main/docs/aws-sqs-component.adoc | 24 ++++----
 .../camel-aws/src/main/docs/aws-swf-component.adoc | 20 +++----
 .../src/main/docs/azure-blob-component.adoc        | 18 +++---
 .../src/main/docs/azure-queue-component.adoc       | 18 +++---
 .../camel-bam/src/main/docs/bam-example.adoc       |  8 +--
 .../src/main/docs/barcode-dataformat.adoc          | 10 ++--
 .../src/main/docs/bean-validator-component.adoc    |  8 +--
 .../src/main/docs/beanio-dataformat.adoc           | 10 ++--
 .../camel-blueprint/src/main/docs/blueprint.adoc   |  6 +-
 .../src/main/docs/bonita-component.adoc            | 10 ++--
 .../camel-boon/src/main/docs/boon-dataformat.adoc  |  8 +--
 .../src/main/docs/braintree-component.adoc         | 50 ++++++++---------
 .../camel-cache/src/main/docs/cache-component.adoc | 42 +++++++-------
 .../src/main/docs/caffeine-cache-component.adoc    |  8 +--
 .../main/docs/caffeine-loadcache-component.adoc    |  4 +-
 .../src/main/docs/castor-dataformat.adoc           |  8 +--
 .../src/main/docs/chronicle-engine-component.adoc  |  4 +-
 .../camel-chunk/src/main/docs/chunk-component.adoc | 12 ++--
 .../camel-cmis/src/main/docs/cmis-component.adoc   | 12 ++--
 .../camel-coap/src/main/docs/coap-component.adoc   |  6 +-
 .../src/main/docs/consul-component.adoc            |  6 +-
 .../src/main/docs/context-component.adoc           | 10 ++--
 .../camel-corda/src/main/docs/corda-component.adoc |  4 +-
 .../src/main/docs/couchbase-component.adoc         |  4 +-
 .../src/main/docs/couchdb-component.adoc           | 10 ++--
 .../src/main/docs/crypto-cms-component.adoc        |  6 +-
 .../src/main/docs/crypto-dataformat.adoc           | 14 ++---
 .../camel-crypto/src/main/docs/pgp-dataformat.adoc | 22 ++++----
 .../camel-csv/src/main/docs/csv-dataformat.adoc    | 20 +++----
 .../camel-cxf/src/main/docs/cxf-component.adoc     | 40 +++++++-------
 .../camel-cxf/src/main/docs/cxfrs-component.adoc   | 20 +++----
 .../src/main/docs/digitalocean-component.adoc      | 32 +++++------
 .../src/main/docs/docker-component.adoc            | 10 ++--
 .../camel-dozer/src/main/docs/dozer-component.adoc | 16 +++---
 .../camel-drill/src/main/docs/drill-component.adoc |  6 +-
 .../camel-eclipse/src/main/docs/eclipse.adoc       |  8 +--
 .../src/main/docs/ehcache-component.adoc           | 10 ++--
 .../camel-ejb/src/main/docs/ejb-component.adoc     | 12 ++--
 .../src/main/docs/elasticsearch-component.adoc     | 12 ++--
 .../src/main/docs/elasticsearch5-component.adoc    | 10 ++--
 .../camel-etcd/src/main/docs/etcd-component.adoc   |  4 +-
 .../src/main/docs/eventadmin-component.adoc        | 12 ++--
 .../camel-exec/src/main/docs/exec-component.adoc   | 20 +++----
 .../src/main/docs/json-fastjson-dataformat.adoc    |  4 +-
 .../src/main/docs/flatpack-component.adoc          | 22 ++++----
 .../src/main/docs/flatpack-dataformat.adoc         |  6 +-
 .../camel-flink/src/main/docs/flink-component.adoc | 10 ++--
 .../camel-fop/src/main/docs/fop-component.adoc     | 10 ++--
 .../src/main/docs/freemarker-component.adoc        | 16 +++---
 .../camel-ftp/src/main/docs/ftps-component.adoc    |  2 +-
 .../camel-ftp/src/main/docs/sftp-component.adoc    |  2 +-
 .../src/main/docs/geocoder-component.adoc          | 10 ++--
 .../camel-git/src/main/docs/git-component.adoc     |  8 +--
 .../src/main/docs/github-component.adoc            |  8 +--
 .../src/main/docs/google-calendar-component.adoc   | 12 ++--
 .../docs/google-calendar-stream-component.adoc     |  6 +-
 .../src/main/docs/google-drive-component.adoc      | 12 ++--
 .../src/main/docs/google-mail-component.adoc       | 12 ++--
 .../main/docs/google-mail-stream-component.adoc    |  6 +-
 .../src/main/docs/google-sheets-component.adoc     | 12 ++--
 .../main/docs/google-sheets-stream-component.adoc  |  6 +-
 .../camel-gora/src/main/docs/gora-component.adoc   | 16 +++---
 .../camel-grpc/src/main/docs/grpc-component.adoc   | 16 +++---
 .../src/main/docs/json-gson-dataformat.adoc        |  4 +-
 .../src/main/docs/guava-eventbus-component.adoc    | 10 ++--
 .../main/docs/hazelcast-atomicvalue-component.adoc | 14 ++---
 .../main/docs/hazelcast-instance-component.adoc    |  4 +-
 .../src/main/docs/hazelcast-list-component.adoc    | 14 ++---
 .../src/main/docs/hazelcast-map-component.adoc     | 16 +++---
 .../main/docs/hazelcast-multimap-component.adoc    | 14 ++---
 .../src/main/docs/hazelcast-queue-component.adoc   | 30 +++++-----
 .../docs/hazelcast-replicatedmap-component.adoc    | 12 ++--
 .../main/docs/hazelcast-ringbuffer-component.adoc  |  8 +--
 .../src/main/docs/hazelcast-seda-component.adoc    |  6 +-
 .../src/main/docs/hazelcast-set-component.adoc     |  2 +-
 .../src/main/docs/hazelcast-topic-component.adoc   |  8 +--
 .../camel-hazelcast/src/main/docs/hazelcast.adoc   | 16 +++---
 .../camel-hbase/src/main/docs/hbase-component.adoc | 30 +++++-----
 .../camel-hdfs/src/main/docs/hdfs-component.adoc   | 16 +++---
 .../camel-hdfs2/src/main/docs/hdfs2-component.adoc | 20 +++----
 .../camel-headersmap/src/main/docs/headersmap.adoc |  6 +-
 .../src/main/docs/hessian-dataformat.adoc          |  6 +-
 .../src/main/docs/hipchat-component.adoc           | 18 +++---
 .../camel-hl7/src/main/docs/terser-language.adoc   |  4 +-
 .../camel-http4/src/main/docs/http4-component.adoc | 46 ++++++++--------
 .../src/main/docs/ibatis-component.adoc            | 16 +++---
 .../camel-ical/src/main/docs/ical-dataformat.adoc  |  4 +-
 .../src/main/docs/ignite-cache-component.adoc      |  4 +-
 .../src/main/docs/ignite-compute-component.adoc    |  6 +-
 .../src/main/docs/ignite-events-component.adoc     |  2 +-
 .../src/main/docs/ignite-idgen-component.adoc      |  2 +-
 .../src/main/docs/ignite-messaging-component.adoc  |  4 +-
 .../src/main/docs/ignite-queue-component.adoc      |  4 +-
 .../src/main/docs/ignite-set-component.adoc        |  4 +-
 .../src/main/docs/infinispan-component.adoc        | 12 ++--
 .../src/main/docs/influxdb-component.adoc          |  8 +--
 .../camel-ipfs/src/main/docs/ipfs-component.adoc   | 10 ++--
 .../src/main/docs/ironmq-component.adoc            | 16 +++---
 .../src/main/docs/jacksonxml-dataformat.adoc       | 24 ++++----
 .../src/main/docs/javaspace-component.adoc         | 12 ++--
 .../camel-jaxb/src/main/docs/jaxb-dataformat.adoc  | 26 ++++-----
 .../camel-jbpm/src/main/docs/jbpm-component.adoc   | 20 +++----
 .../src/main/docs/jcache-component.adoc            |  4 +-
 .../src/main/docs/jclouds-component.adoc           | 26 ++++-----
 .../camel-jcr/src/main/docs/jcr-component.adoc     |  8 +--
 .../src/main/docs/jgroups-raft-component.adoc      | 14 ++---
 .../camel-jibx/src/main/docs/jibx-dataformat.adoc  |  6 +-
 .../camel-jing/src/main/docs/jing-component.adoc   |  6 +-
 .../camel-jira/src/main/docs/jira-component.adoc   |  6 +-
 .../src/main/docs/json-johnzon-dataformat.adoc     |  4 +-
 .../camel-jolt/src/main/docs/jolt-component.adoc   |  6 +-
 .../camel-josql/src/main/docs/sql-language.adoc    |  4 +-
 .../camel-jpa/src/main/docs/jpa-component.adoc     | 30 +++++-----
 .../camel-jsch/src/main/docs/scp-component.adoc    |  6 +-
 .../camel-jt400/src/main/docs/jt400-component.adoc | 18 +++---
 .../camel-juel/src/main/docs/el-language.adoc      |  8 +--
 .../src/main/docs/jxpath-language.adoc             | 16 +++---
 .../src/main/docs/kestrel-component.adoc           | 18 +++---
 .../camel-krati/src/main/docs/krati-component.adoc | 18 +++---
 .../docs/kubernetes-config-maps-component.adoc     |  4 +-
 .../docs/kubernetes-deployments-component.adoc     |  4 +-
 .../src/main/docs/kubernetes-hpa-component.adoc    |  4 +-
 .../src/main/docs/kubernetes-job-component.adoc    |  4 +-
 .../main/docs/kubernetes-namespaces-component.adoc |  4 +-
 .../src/main/docs/kubernetes-nodes-component.adoc  |  4 +-
 ...rnetes-persistent-volumes-claims-component.adoc |  4 +-
 .../kubernetes-persistent-volumes-component.adoc   |  4 +-
 .../src/main/docs/kubernetes-pods-component.adoc   |  4 +-
 ...bernetes-replication-controllers-component.adoc |  4 +-
 .../docs/kubernetes-resources-quota-component.adoc |  4 +-
 .../main/docs/kubernetes-secrets-component.adoc    |  4 +-
 .../kubernetes-service-accounts-component.adoc     |  4 +-
 .../main/docs/kubernetes-services-component.adoc   |  4 +-
 .../camel-kubernetes/src/main/docs/kubernetes.adoc | 12 ++--
 .../docs/openshift-build-configs-component.adoc    |  4 +-
 .../src/main/docs/openshift-builds-component.adoc  |  4 +-
 .../camel-ldap/src/main/docs/ldap-component.adoc   | 14 ++---
 .../src/main/docs/linkedin-component.adoc          | 28 +++++-----
 .../src/main/docs/lucene-component.adoc            | 22 ++++----
 .../src/main/docs/lumberjack-component.adoc        | 10 ++--
 .../src/main/docs/mime-multipart-dataformat.adoc   | 10 ++--
 .../src/main/docs/master-component.adoc            | 10 ++--
 .../src/main/docs/metrics-component.adoc           | 48 ++++++++--------
 .../src/main/docs/micrometer-component.adoc        | 42 +++++++-------
 .../camel-mina/src/main/docs/mina-component.adoc   | 20 +++----
 .../camel-mina2/src/main/docs/mina2-component.adoc | 18 +++---
 .../src/main/docs/mongodb-gridfs-component.adoc    | 22 ++++----
 .../camel-mqtt/src/main/docs/mqtt-component.adoc   |  8 +--
 .../camel-msv/src/main/docs/msv-component.adoc     |  6 +-
 .../src/main/docs/mustache-component.adoc          | 12 ++--
 .../camel-mvel/src/main/docs/mvel-component.adoc   | 14 ++---
 .../camel-nats/src/main/docs/nats-component.adoc   |  6 +-
 .../src/main/docs/netty-http-component.adoc        | 22 ++++----
 .../src/main/docs/netty4-http-component.adoc       | 22 ++++----
 .../camel-nsq/src/main/docs/nsq-component.adoc     |  4 +-
 .../src/main/docs/olingo2-component.adoc           | 20 +++----
 .../src/main/docs/olingo4-component.adoc           | 18 +++---
 .../src/main/docs/openshift-component.adoc         | 10 ++--
 .../src/main/docs/openstack-cinder-component.adoc  | 20 +++----
 .../src/main/docs/openstack-glance-component.adoc  | 10 ++--
 .../main/docs/openstack-keystone-component.adoc    | 38 ++++++-------
 .../src/main/docs/openstack-neutron-component.adoc | 32 +++++------
 .../src/main/docs/openstack-nova-component.adoc    | 26 ++++-----
 .../src/main/docs/openstack-swift-component.adoc   | 20 +++----
 .../src/main/docs/opentracing.adoc                 | 12 ++--
 .../src/main/docs/optaplanner-component.adoc       | 12 ++--
 .../src/main/docs/paxlogging-component.adoc        | 10 ++--
 .../camel-pdf/src/main/docs/pdf-component.adoc     |  6 +-
 .../src/main/docs/pgevent-component.adoc           |  2 +-
 .../camel-printer/src/main/docs/lpr-component.adoc | 16 +++---
 .../src/main/docs/protobuf-dataformat.adoc         | 16 +++---
 .../src/main/docs/pubnub-component.adoc            | 18 +++---
 .../src/main/docs/pulsar-component.adoc            |  4 +-
 .../src/main/docs/quickfix-component.adoc          | 50 ++++++++---------
 .../src/main/docs/reactive-streams-component.adoc  | 28 +++++-----
 .../src/main/docs/reactor-component.adoc           |  2 +-
 .../src/main/docs/rest-swagger-component.adoc      |  6 +-
 components/camel-ribbon/src/main/docs/ribbon.adoc  |  4 +-
 .../camel-rmi/src/main/docs/rmi-component.adoc     |  6 +-
 .../src/main/docs/routebox-component.adoc          | 16 +++---
 .../camel-rss/src/main/docs/rss-component.adoc     | 12 ++--
 .../camel-rss/src/main/docs/rss-dataformat.adoc    |  2 +-
 .../src/main/docs/sap-netweaver-component.adoc     | 10 ++--
 .../src/main/docs/schematron-component.adoc        | 10 ++--
 components/camel-scr/src/main/docs/scr.adoc        | 18 +++---
 .../src/main/docs/javaScript-language.adoc         | 16 +++---
 .../camel-script/src/main/docs/php-language.adoc   | 14 ++---
 .../src/main/docs/python-language.adoc             | 16 +++---
 .../camel-script/src/main/docs/ruby-language.adoc  | 16 +++---
 .../src/main/docs/service-component.adoc           |  8 +--
 .../src/main/docs/servicenow-component.adoc        |  8 +--
 .../camel-sip/src/main/docs/sip-component.adoc     | 10 ++--
 .../src/main/docs/sjms-batch-component.adoc        |  4 +-
 .../camel-sjms/src/main/docs/sjms-component.adoc   | 38 ++++++-------
 .../camel-sjms2/src/main/docs/sjms2-component.adoc | 42 +++++++-------
 .../camel-slack/src/main/docs/slack-component.adoc | 10 ++--
 .../camel-smpp/src/main/docs/smpp-component.adoc   | 20 +++----
 .../src/main/docs/yaml-snakeyaml-dataformat.adoc   |  8 +--
 .../camel-snmp/src/main/docs/snmp-component.adoc   | 10 ++--
 .../src/main/docs/soapjaxb-dataformat.adoc         | 24 ++++----
 .../camel-solr/src/main/docs/solr-component.adoc   | 10 ++--
 .../camel-spark/src/main/docs/spark-component.adoc | 20 +++----
 .../src/main/docs/splunk-component.adoc            | 14 ++---
 .../src/main/docs/spring-batch-component.adoc      | 18 +++---
 .../main/docs/spring-integration-component.adoc    | 12 ++--
 .../src/main/docs/spring-ldap-component.adoc       | 18 +++---
 .../src/main/docs/spring-redis-component.adoc      | 10 ++--
 .../src/main/docs/spring-ws-component.adoc         | 30 +++++-----
 .../camel-ssh/src/main/docs/ssh-component.adoc     | 10 ++--
 .../camel-stax/src/main/docs/stax-component.adoc   | 10 ++--
 .../camel-stomp/src/main/docs/stomp-component.adoc |  8 +--
 .../src/main/docs/string-template-component.adoc   | 14 ++---
 .../src/main/docs/syslog-dataformat.adoc           | 10 ++--
 .../src/main/docs/tidyMarkup-dataformat.adoc       |  8 +--
 .../src/main/docs/tarfile-dataformat.adoc          | 10 ++--
 .../camel-test-karaf/src/main/docs/test-karaf.adoc |  2 +-
 .../src/main/docs/testcontainers.adoc              |  2 +-
 components/camel-testng/src/main/docs/testng.adoc  |  2 +-
 .../src/main/docs/thrift-component.adoc            | 12 ++--
 .../src/main/docs/thrift-dataformat.adoc           | 16 +++---
 .../camel-tika/src/main/docs/tika-component.adoc   |  6 +-
 .../src/main/docs/twilio-component.adoc            | 12 ++--
 .../src/main/docs/twitter-component.adoc           | 28 +++++-----
 .../main/docs/twitter-directmessage-component.adoc |  4 +-
 .../src/main/docs/twitter-search-component.adoc    |  4 +-
 .../src/main/docs/twitter-streaming-component.adoc |  4 +-
 .../src/main/docs/twitter-timeline-component.adoc  |  4 +-
 .../camel-twitter/src/main/docs/twitter.adoc       | 24 ++++----
 .../src/main/docs/velocity-component.adoc          | 16 +++---
 .../camel-vertx/src/main/docs/vertx-component.adoc |  6 +-
 .../src/main/docs/weather-component.adoc           | 14 ++---
 .../camel-web3j/src/main/docs/web3j-component.adoc |  4 +-
 .../src/main/docs/websocket-jsr356-component.adoc  |  4 +-
 .../src/main/docs/xchange-component.adoc           | 10 ++--
 .../src/main/docs/xmlBeans-dataformat.adoc         |  4 +-
 .../src/main/docs/xmlrpc-component.adoc            | 14 ++---
 .../src/main/docs/xmlrpc-dataformat.adoc           |  2 +-
 .../src/main/docs/secureXML-dataformat.adoc        | 26 ++++-----
 .../camel-xmpp/src/main/docs/xmpp-component.adoc   |  8 +--
 .../src/main/docs/json-xstream-dataformat.adoc     | 10 ++--
 .../src/main/docs/xstream-dataformat.adoc          | 10 ++--
 .../src/main/docs/zendesk-component.adoc           | 12 ++--
 .../src/main/docs/zookeeper-master-component.adoc  | 10 ++--
 .../src/main/docs/zookeeper-component.adoc         | 14 ++---
 .../modules/ROOT/pages/ahc-ws-component.adoc       | 24 ++------
 .../modules/ROOT/pages/apns-component.adoc         | 27 ++++-----
 .../modules/ROOT/pages/asn1-dataformat.adoc        |  6 +-
 .../modules/ROOT/pages/asterisk-component.adoc     |  6 +-
 .../modules/ROOT/pages/atmos-component.adoc        | 14 ++---
 .../ROOT/pages/atmosphere-websocket-component.adoc | 19 ++-----
 .../modules/ROOT/pages/atom-component.adoc         | 18 ++----
 .../modules/ROOT/pages/atomix-map-component.adoc   | 10 ++--
 .../ROOT/pages/atomix-messaging-component.adoc     |  2 +-
 .../ROOT/pages/atomix-multimap-component.adoc      |  2 +-
 .../modules/ROOT/pages/atomix-queue-component.adoc |  2 +-
 .../modules/ROOT/pages/atomix-set-component.adoc   |  2 +-
 .../modules/ROOT/pages/atomix-value-component.adoc |  2 +-
 .../modules/ROOT/pages/avro-component.adoc         | 12 ++--
 .../modules/ROOT/pages/avro-dataformat.adoc        |  6 +-
 .../modules/ROOT/pages/aws-cw-component.adoc       | 20 ++-----
 .../modules/ROOT/pages/aws-ddb-component.adoc      | 38 +++++--------
 .../ROOT/pages/aws-ddbstream-component.adoc        | 31 ++++-------
 .../modules/ROOT/pages/aws-ec2-component.adoc      | 16 ++----
 .../modules/ROOT/pages/aws-iam-component.adoc      | 18 ++----
 .../modules/ROOT/pages/aws-kinesis-component.adoc  | 28 ++++------
 .../ROOT/pages/aws-kinesis-firehose-component.adoc | 22 +++-----
 .../modules/ROOT/pages/aws-kms-component.adoc      | 18 ++----
 .../modules/ROOT/pages/aws-lambda-component.adoc   | 22 +++-----
 .../modules/ROOT/pages/aws-mq-component.adoc       | 16 ++----
 .../modules/ROOT/pages/aws-s3-component.adoc       | 32 ++++-------
 .../modules/ROOT/pages/aws-sdb-component.adoc      | 28 ++++------
 .../modules/ROOT/pages/aws-ses-component.adoc      | 22 +++-----
 .../modules/ROOT/pages/aws-sns-component.adoc      | 22 +++-----
 .../modules/ROOT/pages/aws-sqs-component.adoc      | 32 ++++-------
 .../modules/ROOT/pages/aws-swf-component.adoc      | 28 ++++------
 docs/components/modules/ROOT/pages/aws-xray.adoc   | 12 ++--
 .../modules/ROOT/pages/azure-blob-component.adoc   | 26 +++------
 .../modules/ROOT/pages/azure-queue-component.adoc  | 26 +++------
 .../components/modules/ROOT/pages/bam-example.adoc |  8 +--
 .../modules/ROOT/pages/barcode-dataformat.adoc     | 10 ++--
 .../ROOT/pages/bean-validator-component.adoc       | 14 ++---
 .../modules/ROOT/pages/beanio-dataformat.adoc      | 10 ++--
 docs/components/modules/ROOT/pages/blueprint.adoc  |  6 +-
 .../modules/ROOT/pages/bonita-component.adoc       | 10 ++--
 .../modules/ROOT/pages/boon-dataformat.adoc        |  8 +--
 .../modules/ROOT/pages/braintree-component.adoc    | 64 +++++++++-------------
 .../modules/ROOT/pages/cache-component.adoc        | 42 +++++++-------
 .../ROOT/pages/caffeine-cache-component.adoc       |  8 +--
 .../ROOT/pages/caffeine-loadcache-component.adoc   |  4 +-
 .../modules/ROOT/pages/castor-dataformat.adoc      |  8 +--
 .../ROOT/pages/chronicle-engine-component.adoc     |  4 +-
 .../modules/ROOT/pages/chunk-component.adoc        | 18 ++----
 .../modules/ROOT/pages/cmis-component.adoc         | 18 ++----
 .../modules/ROOT/pages/coap-component.adoc         |  6 +-
 .../modules/ROOT/pages/consul-component.adoc       |  6 +-
 .../modules/ROOT/pages/context-component.adoc      | 10 ++--
 .../modules/ROOT/pages/corda-component.adoc        |  4 +-
 .../modules/ROOT/pages/couchbase-component.adoc    |  4 +-
 .../modules/ROOT/pages/couchdb-component.adoc      | 10 ++--
 .../modules/ROOT/pages/crypto-cms-component.adoc   |  6 +-
 .../modules/ROOT/pages/crypto-dataformat.adoc      | 19 +++----
 .../modules/ROOT/pages/csv-dataformat.adoc         | 20 +++----
 .../modules/ROOT/pages/cxf-component.adoc          | 46 +++++++---------
 .../modules/ROOT/pages/cxfrs-component.adoc        | 20 +++----
 .../modules/ROOT/pages/digitalocean-component.adoc | 32 +++++------
 .../modules/ROOT/pages/docker-component.adoc       | 10 ++--
 .../modules/ROOT/pages/dozer-component.adoc        | 16 +++---
 .../modules/ROOT/pages/drill-component.adoc        | 12 +---
 docs/components/modules/ROOT/pages/eclipse.adoc    |  8 +--
 .../modules/ROOT/pages/ehcache-component.adoc      | 10 ++--
 .../modules/ROOT/pages/ejb-component.adoc          | 21 ++-----
 .../components/modules/ROOT/pages/el-language.adoc |  8 +--
 .../ROOT/pages/elasticsearch-component.adoc        | 18 ++----
 .../ROOT/pages/elasticsearch5-component.adoc       | 16 ++----
 .../modules/ROOT/pages/etcd-component.adoc         |  4 +-
 .../modules/ROOT/pages/eventadmin-component.adoc   | 12 ++--
 .../modules/ROOT/pages/exec-component.adoc         | 26 ++++-----
 .../modules/ROOT/pages/flatpack-component.adoc     | 28 ++++------
 .../modules/ROOT/pages/flatpack-dataformat.adoc    |  6 +-
 .../modules/ROOT/pages/flink-component.adoc        | 16 ++----
 .../modules/ROOT/pages/fop-component.adoc          | 16 ++----
 .../modules/ROOT/pages/freemarker-component.adoc   | 22 +++-----
 .../modules/ROOT/pages/ftp-component.adoc          |  8 ---
 .../modules/ROOT/pages/ftps-component.adoc         |  2 +-
 .../modules/ROOT/pages/geocoder-component.adoc     | 10 ++--
 .../modules/ROOT/pages/git-component.adoc          |  8 +--
 .../modules/ROOT/pages/github-component.adoc       |  8 +--
 .../ROOT/pages/google-calendar-component.adoc      | 12 ++--
 .../pages/google-calendar-stream-component.adoc    |  6 +-
 .../modules/ROOT/pages/google-drive-component.adoc | 12 ++--
 .../modules/ROOT/pages/google-mail-component.adoc  | 12 ++--
 .../ROOT/pages/google-mail-stream-component.adoc   |  6 +-
 .../ROOT/pages/google-sheets-component.adoc        | 12 ++--
 .../ROOT/pages/google-sheets-stream-component.adoc |  6 +-
 .../modules/ROOT/pages/gora-component.adoc         | 16 +++---
 .../modules/ROOT/pages/grpc-component.adoc         | 23 +++-----
 .../ROOT/pages/guava-eventbus-component.adoc       | 10 ++--
 .../pages/hazelcast-atomicvalue-component.adoc     | 14 ++---
 .../ROOT/pages/hazelcast-instance-component.adoc   |  4 +-
 .../ROOT/pages/hazelcast-list-component.adoc       | 14 ++---
 .../ROOT/pages/hazelcast-map-component.adoc        | 16 +++---
 .../ROOT/pages/hazelcast-multimap-component.adoc   | 14 ++---
 .../ROOT/pages/hazelcast-queue-component.adoc      | 30 +++++-----
 .../pages/hazelcast-replicatedmap-component.adoc   | 12 ++--
 .../ROOT/pages/hazelcast-ringbuffer-component.adoc |  8 +--
 .../ROOT/pages/hazelcast-seda-component.adoc       |  6 +-
 .../ROOT/pages/hazelcast-set-component.adoc        |  2 +-
 .../ROOT/pages/hazelcast-topic-component.adoc      |  8 +--
 docs/components/modules/ROOT/pages/hazelcast.adoc  | 16 +++---
 .../modules/ROOT/pages/hbase-component.adoc        | 30 +++++-----
 .../modules/ROOT/pages/hdfs-component.adoc         | 16 +++---
 .../modules/ROOT/pages/hdfs2-component.adoc        | 20 +++----
 docs/components/modules/ROOT/pages/headersmap.adoc |  6 +-
 .../modules/ROOT/pages/hessian-dataformat.adoc     |  6 +-
 .../modules/ROOT/pages/hipchat-component.adoc      | 18 +++---
 .../modules/ROOT/pages/http4-component.adoc        | 46 ++++++++--------
 .../modules/ROOT/pages/ibatis-component.adoc       | 24 +++-----
 .../modules/ROOT/pages/ical-dataformat.adoc        | 10 +---
 .../modules/ROOT/pages/ignite-cache-component.adoc |  4 +-
 .../ROOT/pages/ignite-compute-component.adoc       |  6 +-
 .../ROOT/pages/ignite-events-component.adoc        |  2 +-
 .../modules/ROOT/pages/ignite-idgen-component.adoc |  2 +-
 .../ROOT/pages/ignite-messaging-component.adoc     |  4 +-
 .../modules/ROOT/pages/ignite-queue-component.adoc |  4 +-
 .../modules/ROOT/pages/ignite-set-component.adoc   |  4 +-
 docs/components/modules/ROOT/pages/ignite.adoc     |  6 --
 .../modules/ROOT/pages/infinispan-component.adoc   | 18 ++----
 .../modules/ROOT/pages/influxdb-component.adoc     | 14 ++---
 .../modules/ROOT/pages/ipfs-component.adoc         | 10 ++--
 .../modules/ROOT/pages/ironmq-component.adoc       | 16 +++---
 .../modules/ROOT/pages/jacksonxml-dataformat.adoc  | 24 ++++----
 .../modules/ROOT/pages/javaScript-language.adoc    | 16 +++---
 .../modules/ROOT/pages/javaspace-component.adoc    | 18 ++----
 .../modules/ROOT/pages/jaxb-dataformat.adoc        | 26 ++++-----
 .../modules/ROOT/pages/jbpm-component.adoc         | 28 ++++------
 .../modules/ROOT/pages/jcache-component.adoc       |  4 +-
 .../modules/ROOT/pages/jclouds-component.adoc      | 26 ++++-----
 .../modules/ROOT/pages/jcr-component.adoc          | 14 ++---
 .../modules/ROOT/pages/jgroups-raft-component.adoc | 14 ++---
 .../modules/ROOT/pages/jibx-dataformat.adoc        |  6 +-
 .../modules/ROOT/pages/jing-component.adoc         | 12 +---
 .../modules/ROOT/pages/jira-component.adoc         |  6 +-
 .../modules/ROOT/pages/jmx-component.adoc          |  5 --
 .../modules/ROOT/pages/jolt-component.adoc         | 12 +---
 .../modules/ROOT/pages/jpa-component.adoc          | 38 +++++--------
 .../ROOT/pages/json-fastjson-dataformat.adoc       |  4 +-
 .../modules/ROOT/pages/json-gson-dataformat.adoc   |  4 +-
 .../ROOT/pages/json-johnzon-dataformat.adoc        |  4 +-
 .../ROOT/pages/json-xstream-dataformat.adoc        | 10 ++--
 .../modules/ROOT/pages/jt400-component.adoc        | 24 +++-----
 .../modules/ROOT/pages/jxpath-language.adoc        | 16 +++---
 .../modules/ROOT/pages/kestrel-component.adoc      | 24 +++-----
 .../modules/ROOT/pages/krati-component.adoc        | 18 +++---
 .../pages/kubernetes-config-maps-component.adoc    |  4 +-
 .../pages/kubernetes-deployments-component.adoc    |  4 +-
 .../ROOT/pages/kubernetes-hpa-component.adoc       |  4 +-
 .../ROOT/pages/kubernetes-job-component.adoc       |  4 +-
 .../pages/kubernetes-namespaces-component.adoc     |  4 +-
 .../ROOT/pages/kubernetes-nodes-component.adoc     |  4 +-
 ...rnetes-persistent-volumes-claims-component.adoc |  4 +-
 .../kubernetes-persistent-volumes-component.adoc   |  4 +-
 .../ROOT/pages/kubernetes-pods-component.adoc      |  4 +-
 ...bernetes-replication-controllers-component.adoc |  4 +-
 .../kubernetes-resources-quota-component.adoc      |  4 +-
 .../ROOT/pages/kubernetes-secrets-component.adoc   |  4 +-
 .../kubernetes-service-accounts-component.adoc     |  4 +-
 .../ROOT/pages/kubernetes-services-component.adoc  |  4 +-
 docs/components/modules/ROOT/pages/kubernetes.adoc | 12 ++--
 .../modules/ROOT/pages/ldap-component.adoc         | 20 +++----
 .../modules/ROOT/pages/linkedin-component.adoc     | 28 +++++-----
 .../modules/ROOT/pages/lpr-component.adoc          | 16 +++---
 .../modules/ROOT/pages/lucene-component.adoc       | 22 ++++----
 .../modules/ROOT/pages/lumberjack-component.adoc   | 10 ++--
 .../modules/ROOT/pages/master-component.adoc       | 16 ++----
 .../modules/ROOT/pages/metrics-component.adoc      | 52 ++++++++----------
 .../modules/ROOT/pages/micrometer-component.adoc   | 42 +++++++-------
 .../modules/ROOT/pages/milo-client-component.adoc  |  6 --
 .../modules/ROOT/pages/milo-server-component.adoc  |  6 --
 .../ROOT/pages/mime-multipart-dataformat.adoc      | 10 ++--
 .../modules/ROOT/pages/mina-component.adoc         | 29 ++++------
 .../modules/ROOT/pages/mina2-component.adoc        | 25 +++------
 .../ROOT/pages/mongodb-gridfs-component.adoc       | 22 ++++----
 .../modules/ROOT/pages/mqtt-component.adoc         | 14 ++---
 .../modules/ROOT/pages/msv-component.adoc          | 12 +---
 .../modules/ROOT/pages/mustache-component.adoc     | 18 ++----
 .../modules/ROOT/pages/mvel-component.adoc         | 20 +++----
 .../modules/ROOT/pages/nats-component.adoc         |  6 +-
 .../modules/ROOT/pages/netty-http-component.adoc   | 32 ++++-------
 .../modules/ROOT/pages/netty4-component.adoc       |  4 --
 .../modules/ROOT/pages/netty4-http-component.adoc  | 32 ++++-------
 .../modules/ROOT/pages/nsq-component.adoc          |  4 +-
 .../modules/ROOT/pages/olingo2-component.adoc      | 20 +++----
 .../modules/ROOT/pages/olingo4-component.adoc      | 18 +++---
 .../pages/openshift-build-configs-component.adoc   |  4 +-
 .../ROOT/pages/openshift-builds-component.adoc     |  4 +-
 .../modules/ROOT/pages/openshift-component.adoc    | 16 ++----
 .../ROOT/pages/openstack-cinder-component.adoc     | 28 ++++------
 .../ROOT/pages/openstack-glance-component.adoc     | 18 ++----
 .../ROOT/pages/openstack-keystone-component.adoc   | 46 +++++++---------
 .../ROOT/pages/openstack-neutron-component.adoc    | 40 ++++++--------
 .../ROOT/pages/openstack-nova-component.adoc       | 34 +++++-------
 .../ROOT/pages/openstack-swift-component.adoc      | 28 ++++------
 .../components/modules/ROOT/pages/opentracing.adoc | 12 ++--
 .../modules/ROOT/pages/optaplanner-component.adoc  | 18 ++----
 .../modules/ROOT/pages/paxlogging-component.adoc   | 10 ++--
 .../modules/ROOT/pages/pdf-component.adoc          | 16 +-----
 .../modules/ROOT/pages/pgevent-component.adoc      |  8 +--
 .../modules/ROOT/pages/pgp-dataformat.adoc         | 27 ++++-----
 .../modules/ROOT/pages/php-language.adoc           | 14 ++---
 .../modules/ROOT/pages/protobuf-dataformat.adoc    | 18 +++---
 .../modules/ROOT/pages/pubnub-component.adoc       | 26 +++------
 .../modules/ROOT/pages/pulsar-component.adoc       |  4 +-
 .../modules/ROOT/pages/python-language.adoc        | 16 +++---
 .../modules/ROOT/pages/quickfix-component.adoc     | 56 +++++++++----------
 .../ROOT/pages/reactive-streams-component.adoc     | 34 +++++-------
 .../modules/ROOT/pages/reactor-component.adoc      |  2 +-
 .../modules/ROOT/pages/rest-swagger-component.adoc |  6 +-
 docs/components/modules/ROOT/pages/ribbon.adoc     |  7 +--
 .../modules/ROOT/pages/rmi-component.adoc          | 12 +---
 .../modules/ROOT/pages/routebox-component.adoc     | 16 +++---
 .../modules/ROOT/pages/rss-component.adoc          | 20 ++-----
 .../modules/ROOT/pages/rss-dataformat.adoc         |  2 +-
 .../modules/ROOT/pages/ruby-language.adoc          | 16 +++---
 .../ROOT/pages/sap-netweaver-component.adoc        | 18 ++----
 .../modules/ROOT/pages/schematron-component.adoc   | 10 ++--
 .../modules/ROOT/pages/scp-component.adoc          | 12 +---
 docs/components/modules/ROOT/pages/scr.adoc        | 18 +++---
 .../modules/ROOT/pages/secureXML-dataformat.adoc   | 26 ++++-----
 .../modules/ROOT/pages/service-component.adoc      | 14 ++---
 .../modules/ROOT/pages/servicenow-component.adoc   |  8 +--
 .../modules/ROOT/pages/servlet-component.adoc      | 12 ----
 .../modules/ROOT/pages/sftp-component.adoc         |  2 +-
 .../modules/ROOT/pages/sip-component.adoc          | 10 ++--
 .../modules/ROOT/pages/sjms-batch-component.adoc   |  4 +-
 .../modules/ROOT/pages/sjms-component.adoc         | 38 ++++++-------
 .../modules/ROOT/pages/sjms2-component.adoc        | 42 +++++++-------
 .../modules/ROOT/pages/slack-component.adoc        | 16 ++----
 .../modules/ROOT/pages/smpp-component.adoc         | 26 ++++-----
 .../modules/ROOT/pages/snmp-component.adoc         | 16 ++----
 .../modules/ROOT/pages/soapjaxb-dataformat.adoc    | 24 ++++----
 .../modules/ROOT/pages/solr-component.adoc         | 16 ++----
 .../modules/ROOT/pages/spark-component.adoc        | 26 ++++-----
 .../modules/ROOT/pages/splunk-component.adoc       | 20 +++----
 .../modules/ROOT/pages/spring-batch-component.adoc | 18 +++---
 .../ROOT/pages/spring-integration-component.adoc   | 18 ++----
 .../modules/ROOT/pages/spring-ldap-component.adoc  | 18 +++---
 .../modules/ROOT/pages/spring-redis-component.adoc | 16 ++----
 .../modules/ROOT/pages/spring-security.adoc        |  9 ---
 .../modules/ROOT/pages/spring-ws-component.adoc    | 36 +++++-------
 .../modules/ROOT/pages/sql-language.adoc           |  4 +-
 .../modules/ROOT/pages/sql-stored-component.adoc   |  3 -
 .../modules/ROOT/pages/ssh-component.adoc          | 16 ++----
 .../modules/ROOT/pages/stax-component.adoc         | 16 ++----
 .../modules/ROOT/pages/stomp-component.adoc        | 14 ++---
 .../ROOT/pages/string-template-component.adoc      | 20 +++----
 .../modules/ROOT/pages/syslog-dataformat.adoc      | 16 ++----
 .../modules/ROOT/pages/tarfile-dataformat.adoc     | 10 ++--
 .../modules/ROOT/pages/terser-language.adoc        |  4 +-
 docs/components/modules/ROOT/pages/test-karaf.adoc |  2 +-
 .../modules/ROOT/pages/testcontainers.adoc         |  2 +-
 docs/components/modules/ROOT/pages/testng.adoc     |  2 +-
 .../modules/ROOT/pages/thrift-component.adoc       | 18 ++----
 .../modules/ROOT/pages/thrift-dataformat.adoc      | 16 +++---
 .../modules/ROOT/pages/tidyMarkup-dataformat.adoc  |  8 +--
 .../modules/ROOT/pages/tika-component.adoc         |  6 +-
 .../modules/ROOT/pages/twilio-component.adoc       | 12 ++--
 .../modules/ROOT/pages/twitter-component.adoc      | 36 +++++-------
 .../pages/twitter-directmessage-component.adoc     |  4 +-
 .../ROOT/pages/twitter-search-component.adoc       |  4 +-
 .../ROOT/pages/twitter-streaming-component.adoc    |  4 +-
 .../ROOT/pages/twitter-timeline-component.adoc     |  4 +-
 docs/components/modules/ROOT/pages/twitter.adoc    | 32 ++++-------
 .../modules/ROOT/pages/velocity-component.adoc     | 22 +++-----
 .../modules/ROOT/pages/vertx-component.adoc        | 12 +---
 .../modules/ROOT/pages/weather-component.adoc      | 14 ++---
 .../modules/ROOT/pages/web3j-component.adoc        |  4 +-
 .../ROOT/pages/websocket-jsr356-component.adoc     |  4 +-
 .../modules/ROOT/pages/xchange-component.adoc      | 10 ++--
 .../modules/ROOT/pages/xmlBeans-dataformat.adoc    |  4 +-
 .../modules/ROOT/pages/xmlrpc-component.adoc       | 14 ++---
 .../modules/ROOT/pages/xmlrpc-dataformat.adoc      |  2 +-
 .../modules/ROOT/pages/xmpp-component.adoc         | 14 ++---
 .../modules/ROOT/pages/xstream-dataformat.adoc     | 10 ++--
 .../ROOT/pages/yaml-snakeyaml-dataformat.adoc      |  8 +--
 .../modules/ROOT/pages/zendesk-component.adoc      | 12 ++--
 .../modules/ROOT/pages/zookeeper-component.adoc    | 20 +++----
 .../ROOT/pages/zookeeper-master-component.adoc     | 16 ++----
 557 files changed, 3404 insertions(+), 4189 deletions(-)

diff --git a/components/camel-ahc-ws/src/main/docs/ahc-ws-component.adoc b/components/camel-ahc-ws/src/main/docs/ahc-ws-component.adoc
index 2406402..948565b 100644
--- a/components/camel-ahc-ws/src/main/docs/ahc-ws-component.adoc
+++ b/components/camel-ahc-ws/src/main/docs/ahc-ws-component.adoc
@@ -25,7 +25,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------------------------------
@@ -35,7 +35,7 @@ ahc-wss://hostname[:port][/resourceUri][?options]
 
 Will by default use port 80 for ahc-ws and 443 for ahc-wss.
 
-### AHC-WS Options
+== AHC-WS Options
 
 As the AHC-WS component is based on the AHC component, you can use the
 various configuration options of the AHC component.
@@ -73,7 +73,7 @@ ahc-ws:httpUri
 
 with the following path and query parameters:
 
-=== Path Parameters (1 parameters):
+== Path Parameters (1 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -83,7 +83,7 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (18 parameters):
+== Query Parameters (18 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -146,13 +146,13 @@ The component supports 9 options, which are listed below.
 
 
 
-### Writing and Reading Data over Websocket
+== Writing and Reading Data over Websocket
 
 An ahc-ws endpoint can either write data to the socket or read from the
 socket, depending on whether the endpoint is configured as the producer
 or the consumer, respectively.
 
-### Configuring URI to Write or Read Data
+== Configuring URI to Write or Read Data
 
 In the route below, Camel will write to the specified websocket
 connection.
diff --git a/components/camel-apns/src/main/docs/apns-component.adoc b/components/camel-apns/src/main/docs/apns-component.adoc
index 4fc2380..243e313 100644
--- a/components/camel-apns/src/main/docs/apns-component.adoc
+++ b/components/camel-apns/src/main/docs/apns-component.adoc
@@ -32,7 +32,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 To send notifications:
 
@@ -48,7 +48,7 @@ To consume feedback:
 apns:consumer[?options]
 -----------------------
 
-### Options
+== Options
 
 
 
@@ -149,7 +149,7 @@ The component supports 3 options, which are listed below.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-#### Component
+=== Component
 
 The `ApnsComponent` must be configured with a
 `com.notnoop.apns.ApnsService`. The service can be created and
@@ -159,20 +159,20 @@ further below for an example. And as well in the
 https://github.com/apache/camel/tree/master/components/camel-apns[test
 source code].
 
-##### SSL Setting
+==== SSL Setting
 In order to use secure connection, an instance of `org.apache.camel.util.jsse.SSLContextParameters`
  should be injected to `org.apache.camel.component.apns.factory.ApnsServiceFactory` which is
  used to configure the component. See the test resources for an example.
  https://github.com/apache/camel/blob/master/components/camel-apns/src/test/resources/org/apache/camel/component/apns/spring/SpringApnsConsumerTest-context.xml[ssl example]
 
-### Exchange data format
+== Exchange data format
 
 When Camel will fetch feedback data corresponding to inactive devices,
 it will retrieve a List of InactiveDevice objects. Each InactiveDevice
 object of the retrieved list will be setted as the In body, and then
 processed by the consumer endpoint.
 
-### Message Headers
+== Message Headers
 
 Camel Apns uses these headers.
 
@@ -187,7 +187,7 @@ onwards APNS_NOTIFICATION is used for sending message body as
 com.notnoop.apns.ApnsNotification types.
 |=======================================================================
 
-### ApnsServiceFactory builder callback
+== ApnsServiceFactory builder callback
 
 `ApnsServiceFactory` comes with the empty callback method that could be
 used to configure (or even replace) the default `ApnsServiceBuilder`
@@ -212,9 +212,9 @@ ApnsServiceFactory proxiedApnsServiceFactory = new ApnsServiceFactory(){
 };
 -------------------------------------------------------------------------------------------
 
-### Samples
+== Samples
 
-#### Camel Xml route
+=== Camel Xml route
 
 [source,xml]
 --------------------------------------------------------------------------------------------------------------------------------------------------------------------
@@ -270,7 +270,7 @@ ApnsServiceFactory proxiedApnsServiceFactory = new ApnsServiceFactory(){
 </beans>
 --------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
-#### Camel Java route
+=== Camel Java route
 
 [[APNS-Createcamelcontextanddeclareapnscomponentprogrammatically]]
 Create camel context and declare apns component programmatically
diff --git a/components/camel-asn1/src/main/docs/asn1-dataformat.adoc b/components/camel-asn1/src/main/docs/asn1-dataformat.adoc
index 0e5f1bc..7d8f675 100644
--- a/components/camel-asn1/src/main/docs/asn1-dataformat.adoc
+++ b/components/camel-asn1/src/main/docs/asn1-dataformat.adoc
@@ -6,7 +6,7 @@
 
 The ASN.1 Data Format Data Format [Intoduction to ASN.1](https://www.itu.int/en/ITU-T/asn1/Pages/introduction.aspx) is a Camel Frameworks's data format implementation based on Bouncy Castle's bcprov-jdk15on library and jASN.1's java compiler for the formal notation used for describing data transmitted by telecommunications protocols, regardless of language implementation and physical representation of these data, whatever the application, whether complex or very simple. Messages can be u [...]
 
-### ASN.1 Data Format Options
+== ASN.1 Data Format Options
 
 // dataformat options: START
 The ASN.1 File dataformat supports 3 options, which are listed below.
@@ -52,7 +52,7 @@ The component supports 4 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Unmarshal
+== Unmarshal
 
 There are 3 different ways to unmarshal ASN.1 structured messages. (Usually binary files)
 
@@ -86,7 +86,7 @@ from("direct:unmarshaldsl")
 .to("mock:unmarshaldsl");
 -----------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 To use ASN.1 data format in your camel routes you need to add a dependency on
 *camel-asn1* which implements this data format.
diff --git a/components/camel-asterisk/src/main/docs/asterisk-component.adoc b/components/camel-asterisk/src/main/docs/asterisk-component.adoc
index 99c1e92..a6c82f2 100644
--- a/components/camel-asterisk/src/main/docs/asterisk-component.adoc
+++ b/components/camel-asterisk/src/main/docs/asterisk-component.adoc
@@ -21,14 +21,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------------------------------------------------------------------------------------
 asterisk:name[?options]
 -------------------------------------------------------------------------------------------------------------------------
 
-### Options
+== Options
 
 // component options: START
 The Asterisk component has no options.
@@ -98,7 +98,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Action
+== Action
 Supported actions are:
 
 * QUEUE_STATUS, Queue Status
diff --git a/components/camel-atmos/src/main/docs/atmos-component.adoc b/components/camel-atmos/src/main/docs/atmos-component.adoc
index 8d83a51..0b74584 100644
--- a/components/camel-atmos/src/main/docs/atmos-component.adoc
+++ b/components/camel-atmos/src/main/docs/atmos-component.adoc
@@ -13,7 +13,7 @@ https://github.com/emcvipr/dataservices-sdk-java[Atmos Client].
 from("atmos:foo/get?remotePath=/path").to("mock:test");
 -------------------------------
 
-### Options
+== Options
 
 
 // component options: START
@@ -108,7 +108,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### Dependencies
+== Dependencies
 
 To use Atmos in your camel routes you need to add the dependency
 on *camel-atmos* which implements this data format.
@@ -129,7 +129,7 @@ the download page for the latest versions).
 
 [[Atmos-Integrations]]
 
-### Integrations
+== Integrations
 
 When you look at atmos integrations, there is one type of consumer, 
 GetConsumer, which is a type of ScheduledPollConsumer. 
@@ -143,7 +143,7 @@ Whereas there are 4 types of producers which are
 * `Move`
 * `Put`
 
-### Examples
+== Examples
 
 These example are taken from tests:
 
diff --git a/components/camel-atmosphere-websocket/src/main/docs/atmosphere-websocket-component.adoc b/components/camel-atmosphere-websocket/src/main/docs/atmosphere-websocket-component.adoc
index 027b809..e8eb325 100644
--- a/components/camel-atmosphere-websocket/src/main/docs/atmosphere-websocket-component.adoc
+++ b/components/camel-atmosphere-websocket/src/main/docs/atmosphere-websocket-component.adoc
@@ -31,7 +31,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Atmosphere-Websocket Options
+== Atmosphere-Websocket Options
 
 
 
@@ -161,20 +161,20 @@ The component supports 10 options, which are listed below.
 
 
 
-### URI Format
+== URI Format
 
 [source,java]
 -----------------------------------------------
 atmosphere-websocket:///relative path[?options]
 -----------------------------------------------
 
-### Reading and Writing Data over Websocket
+== Reading and Writing Data over Websocket
 
 An atmopshere-websocket endpoint can either write data to the socket or
 read from the socket, depending on whether the endpoint is configured as
 the producer or the consumer, respectively.
 
-### Configuring URI to Read or Write Data
+== Configuring URI to Read or Write Data
 
 In the route below, Camel will read from the specified websocket
 connection.
diff --git a/components/camel-atom/src/main/docs/atom-component.adoc b/components/camel-atom/src/main/docs/atom-component.adoc
index c439c6a..add1ded 100644
--- a/components/camel-atom/src/main/docs/atom-component.adoc
+++ b/components/camel-atom/src/main/docs/atom-component.adoc
@@ -23,7 +23,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------
@@ -32,7 +32,7 @@ atom://atomUri[?options]
 
 Where *atomUri* is the URI to the Atom feed to poll.
 
-### Options
+== Options
 
 
 // component options: START
@@ -128,7 +128,7 @@ The component supports 2 options, which are listed below.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Exchange data format
+== Exchange data format
 
 Camel will set the In body on the returned `Exchange` with the entries.
 Depending on the `splitEntries` flag Camel will either return one
@@ -147,7 +147,7 @@ Depending on the `splitEntries` flag Camel will either return one
 Camel can set the `Feed` object on the In header (see `feedHeader`
 option to disable this):
 
-### Message Headers
+== Message Headers
 
 Camel atom uses these headers.
 
@@ -158,7 +158,7 @@ Camel atom uses these headers.
 header.
 |=======================================================================
 
-### Samples
+== Samples
 
 In this sample we poll James Strachan's blog.
 
diff --git a/components/camel-atomix/src/main/docs/atomix-map-component.adoc b/components/camel-atomix/src/main/docs/atomix-map-component.adoc
index e444129..36298e0 100644
--- a/components/camel-atomix/src/main/docs/atomix-map-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-map-component.adoc
@@ -17,14 +17,14 @@ Maven users will need to add the following dependency to their pom.xml for this
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
     atomix-map:mapName
 ----
 
-### Options
+== Options
 
 // component options: START
 The Atomix Map component supports 5 options, which are listed below.
@@ -123,7 +123,7 @@ The component supports 9 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Headers
+== Headers
 
 [width="100%",cols="10%,10%,20%a,60%",options="header",]
 |===
@@ -178,7 +178,7 @@ The component supports 9 options, which are listed below.
 
 |===
 
-### Configuring the component to connect to an Atomix cluster
+== Configuring the component to connect to an Atomix cluster
 
 The nodes of the Atomix cluster you want to join can be se at Endpoint or component level (recommended), below some examples:
 
@@ -212,7 +212,7 @@ The nodes of the Atomix cluster you want to join can be se at Endpoint or compon
 </beans>
 ----
 
-### Usage examples:
+== Usage examples:
 
 * *PUT an element with TTL of 1 second:*
 +
diff --git a/components/camel-atomix/src/main/docs/atomix-messaging-component.adoc b/components/camel-atomix/src/main/docs/atomix-messaging-component.adoc
index 2e3f1be..072de61 100644
--- a/components/camel-atomix/src/main/docs/atomix-messaging-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-messaging-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
diff --git a/components/camel-atomix/src/main/docs/atomix-multimap-component.adoc b/components/camel-atomix/src/main/docs/atomix-multimap-component.adoc
index 6170582..d058e1e 100644
--- a/components/camel-atomix/src/main/docs/atomix-multimap-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-multimap-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
diff --git a/components/camel-atomix/src/main/docs/atomix-queue-component.adoc b/components/camel-atomix/src/main/docs/atomix-queue-component.adoc
index 3c89c5a..56cda04 100644
--- a/components/camel-atomix/src/main/docs/atomix-queue-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-queue-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
diff --git a/components/camel-atomix/src/main/docs/atomix-set-component.adoc b/components/camel-atomix/src/main/docs/atomix-set-component.adoc
index ac3fb2b..db63d9d 100644
--- a/components/camel-atomix/src/main/docs/atomix-set-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-set-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
diff --git a/components/camel-atomix/src/main/docs/atomix-value-component.adoc b/components/camel-atomix/src/main/docs/atomix-value-component.adoc
index fcdb023..95fc702 100644
--- a/components/camel-atomix/src/main/docs/atomix-value-component.adoc
+++ b/components/camel-atomix/src/main/docs/atomix-value-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 ----
 
-### URI format
+== URI format
 
 [source,java]
 ----
diff --git a/components/camel-avro/src/main/docs/avro-component.adoc b/components/camel-avro/src/main/docs/avro-component.adoc
index 2f5b2a6..bd311af 100644
--- a/components/camel-avro/src/main/docs/avro-component.adoc
+++ b/components/camel-avro/src/main/docs/avro-component.adoc
@@ -23,7 +23,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Apache Avro Overview
+== Apache Avro Overview
 
 Avro allows you to define message types and a protocol using a json like
 format and then generate java code for the specified types and messages.
@@ -90,7 +90,7 @@ class Value {
 _Note: Existing classes can be used only for RPC (see below), not in
 data format._
 
-### Using the Avro data format
+== Using the Avro data format
 
 Using the avro data format is as easy as specifying that the class that
 you want to marshal or unmarshal in your route.
@@ -127,7 +127,7 @@ reference it from your route.
 
 In the same manner you can umarshal using the avro data format.
 
-### Using Avro RPC in Camel
+== Using Avro RPC in Camel
 
 As mentioned above Avro also provides RPC support over multiple
 transports such as http and netty. Camel provides consumers and
@@ -166,7 +166,7 @@ got only one parameter, *since 2.12* you can use `singleParameter` URI
 option to receive it direcly in the "in" message body without array
 wrapping.
 
-### Avro RPC URI Options
+== Avro RPC URI Options
 
 
 
@@ -273,7 +273,7 @@ The component supports 15 options, which are listed below.
 
 
 
-### Avro RPC Headers
+== Avro RPC Headers
 
 [width="100%",cols="20%,80%",options="header",]
 |=======================================================================
@@ -283,7 +283,7 @@ The component supports 15 options, which are listed below.
 URI (if any)
 |=======================================================================
 
-### Examples
+== Examples
 
 An example of using camel avro producers via http:
 
diff --git a/components/camel-avro/src/main/docs/avro-dataformat.adoc b/components/camel-avro/src/main/docs/avro-dataformat.adoc
index 30f39a0..6c2e0b0 100644
--- a/components/camel-avro/src/main/docs/avro-dataformat.adoc
+++ b/components/camel-avro/src/main/docs/avro-dataformat.adoc
@@ -23,7 +23,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Apache Avro Overview
+== Apache Avro Overview
 
 Avro allows you to define message types and a protocol using a json like
 format and then generate java code for the specified types and messages.
@@ -90,7 +90,7 @@ class Value {
 _Note: Existing classes can be used only for RPC (see below), not in
 data format._
 
-### Using the Avro data format
+== Using the Avro data format
 
 Using the avro data format is as easy as specifying that the class that
 you want to marshal or unmarshal in your route.
@@ -128,7 +128,7 @@ reference it from your route.
 In the same manner you can umarshal using the avro data format.
 
 
-### Avro Dataformat Options
+== Avro Dataformat Options
 
 // dataformat options: START
 The Avro dataformat supports 2 options, which are listed below.
diff --git a/components/camel-aws-xray/src/main/docs/aws-xray.adoc b/components/camel-aws-xray/src/main/docs/aws-xray.adoc
index e980c3b..8d7763a 100644
--- a/components/camel-aws-xray/src/main/docs/aws-xray.adoc
+++ b/components/camel-aws-xray/src/main/docs/aws-xray.adoc
@@ -1,5 +1,5 @@
 [[AWSXRay-AWSXRayComponent]]
-## AWS XRay Component
+= AWS XRay Component
 
 *Available as of Camel 2.21*
 
@@ -7,7 +7,7 @@ The camel-aws-xray component is used for tracing and timing incoming and outgoin
 
 Events (subsegments) are captured for incoming and outgoing messages being sent to/from Camel.
 
-### Dependency
+== Dependency
 
 In order to include AWS XRay support into Camel, the archive containing the Camel related AWS XRay related classes need to be added to the project. In addition to that, AWS XRay libraries also need to be available.
 
@@ -44,7 +44,7 @@ To include both, AWS XRay and Camel, dependencies use the following Maven import
   <dependencies>
 ---------------------------------------------------------------------------------------------------------
 
-### Configuration
+== Configuration
 
 The configuration properties for the AWS XRay tracer are:
 
@@ -61,7 +61,7 @@ uses the rules from Intercept.
 
 There is currently only one way an AWS XRay tracer can be configured to provide distributed tracing for a Camel application:
 
-#### Explicit
+=== Explicit
 
 Include the `camel-aws-xray` component in your POM, along with any specific dependencies associated with the AWS XRay Tracer.
 
@@ -91,7 +91,7 @@ AWS XRay tracer bean. Camel will automatically discover and use it.
 
 In case of the default `NoopTracingStrategy` only the creation and deletion of exchanges is tracked but not the invocation of certain beans or EIP patterns.
 
-#### Tracking of comprehensive route execution
+=== Tracking of comprehensive route execution
 
 In order to track the execution of an exchange among multiple routes, on exchange creation a unique trace ID is generated and stored in the headers if no corresponding value was yet available. This trace ID is copied over to new exchanges in order to keep a consistent view of the processed exchange.
 
@@ -110,6 +110,6 @@ The component will use the following constants found in the headers of the excha
 
 Note that the AWS XRay `Entity` (i.e., `Segment` and `Subsegment`) are not serializable and therefore should not get passed to other JVM processes.
 
-### Example
+== Example
 
 You can find an example demonstrating the way to configure AWS XRay tracing within the tests accompanying this project.
\ No newline at end of file
diff --git a/components/camel-aws/src/main/docs/aws-cw-component.adoc b/components/camel-aws/src/main/docs/aws-cw-component.adoc
index aed5e9a..422ade8 100644
--- a/components/camel-aws/src/main/docs/aws-cw-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-cw-component.adoc
@@ -15,7 +15,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon CloudWatch. More information are available at
 http://aws.amazon.com/cloudwatch/[Amazon CloudWatch].
 
-### URI Format
+== URI Format
 
 [source,java]
 ----------------------------
@@ -26,7 +26,7 @@ The metrics will be created if they don't already exists. +
  You can append query options to the URI in the following format,
 `?options=value&option2=value&...`
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -137,9 +137,9 @@ You have to provide the amazonCwClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/cloudwatch/[Amazon's CloudWatch].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the CW producer
+=== Message headers evaluated by the CW producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -162,7 +162,7 @@ the http://aws.amazon.com/cloudwatch/[Amazon's CloudWatch].
 |`CamelAwsCwMetricDimensions` |`Map<String, String>` |*Camel 2.12:* A map of dimension names and dimension values.
 |=======================================================================
 
-#### Advanced AmazonCloudWatch configuration
+=== Advanced AmazonCloudWatch configuration
 
 If you need more control over the `AmazonCloudWatch` instance
 configuration you can create your own instance and refer to it from the
@@ -191,7 +191,7 @@ AmazonCloudWatch client = new AmazonCloudWatchClient(awsCredentials, clientConfi
 registry.bind("client", client);
 ------------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-ddb-component.adoc b/components/camel-aws/src/main/docs/aws-ddb-component.adoc
index 220cd92..d77b095 100644
--- a/components/camel-aws/src/main/docs/aws-ddb-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-ddb-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon DynamoDB. More information are available at
 http://aws.amazon.com/dynamodb[Amazon DynamoDB].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -23,7 +23,7 @@ aws-ddb://domainName[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -138,9 +138,9 @@ You have to provide the amazonDDBClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/dynamodb[Amazon's DynamoDB].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the DDB producer
+=== Message headers evaluated by the DDB producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -195,7 +195,7 @@ the query.*From Camel 2.16.0 this header doesn't exist anymore.*
 |`CamelAwsDdbUpdateValues` |`Map<String, AttributeValueUpdate>` |Map of attribute name to the new value and action for the update.
 |=======================================================================
 
-#### Message headers set during BatchGetItems operation
+=== Message headers set during BatchGetItems operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -207,7 +207,7 @@ the query.*From Camel 2.16.0 this header doesn't exist anymore.*
 processed with the current response.
 |=======================================================================
 
-#### Message headers set during DeleteItem operation
+=== Message headers set during DeleteItem operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -216,7 +216,7 @@ processed with the current response.
 |`CamelAwsDdbAttributes` |`Map<String, AttributeValue>` |The list of attributes returned by the operation.
 |=======================================================================
 
-#### Message headers set during DeleteTable operation
+=== Message headers set during DeleteTable operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -240,7 +240,7 @@ processed with the current response.
 |`CamelAwsDdbTableStatus` |`String` |The status of the table: CREATING, UPDATING, DELETING, ACTIVE
 |=======================================================================
 
-#### Message headers set during DescribeTable operation
+=== Message headers set during DescribeTable operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -267,7 +267,7 @@ not KeySchema*
 |`CamelAwsDdbWriteCapacity` |`Long` |WriteCapacityUnits property of this table.
 |=======================================================================
 
-#### Message headers set during GetItem operation
+=== Message headers set during GetItem operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -277,7 +277,7 @@ not KeySchema*
 
 |=======================================================================
 
-#### Message headers set during PutItem operation
+=== Message headers set during PutItem operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -287,7 +287,7 @@ not KeySchema*
 
 |=======================================================================
 
-#### Message headers set during Query operation
+=== Message headers set during Query operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -304,7 +304,7 @@ consumed during the operation.
 |`CamelAwsDdbCount` |`Integer` |Number of items in the response.
 |=======================================================================
 
-#### Message headers set during Scan operation
+=== Message headers set during Scan operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -323,7 +323,7 @@ consumed during the operation.
 |`CamelAwsDdbScannedCount` |`Integer` |Number of items in the complete scan before any filters are applied.
 |=======================================================================
 
-#### Message headers set during UpdateItem operation
+=== Message headers set during UpdateItem operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -333,7 +333,7 @@ consumed during the operation.
 
 |=======================================================================
 
-#### Advanced AmazonDynamoDB configuration
+=== Advanced AmazonDynamoDB configuration
 
 If you need more control over the `AmazonDynamoDB` instance
 configuration you can create your own instance and refer to it from the
@@ -362,7 +362,7 @@ AmazonDynamoDB client = new AmazonDynamoDBClient(awsCredentials, clientConfigura
 registry.bind("client", client);
 --------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-ddbstream-component.adoc b/components/camel-aws/src/main/docs/aws-ddbstream-component.adoc
index 996b31c..425c47f 100644
--- a/components/camel-aws/src/main/docs/aws-ddbstream-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-ddbstream-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon DynamoDB Streams. More information are available
 at http://aws.amazon.com/dynamodb/[AWS DynamoDB]
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------------
@@ -24,7 +24,7 @@ The stream needs to be created prior to it being used. +
  You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -155,7 +155,7 @@ You have to provide the amazonDynamoDbStreamsClient in the
 Registry with proxies and relevant credentials
 configured.
 
-### Sequence Numbers
+== Sequence Numbers
 
 You can provide a literal string as the sequence number or provide a
 bean in the registry. An example of using the bean would be to save your
@@ -165,7 +165,7 @@ It is an error to provide a sequence number that is greater than the
 largest sequence number in the describe-streams result, as this will
 lead to the AWS call returning an HTTP 400.
 
-### Batch Consumer
+== Batch Consumer
 
 This component implements the Batch Consumer.
 
@@ -173,9 +173,9 @@ This allows you for instance to know how many messages exists in this
 batch and for instance let the Aggregator
 aggregate this number of messages.
 
-### Usage
+== Usage
 
-#### AmazonDynamoDBStreamsClient configuration
+=== AmazonDynamoDBStreamsClient configuration
 
 You will need to create an instance of AmazonDynamoDBStreamsClient and
 bind it to the registry
@@ -193,7 +193,7 @@ region.createClient(AmazonDynamoDBStreamsClient.class, null, clientConfiguration
 registry.bind("kinesisClient", client);
 --------------------------------------------------------------------------------------------------------------------
 
-#### Providing AWS Credentials
+=== Providing AWS Credentials
 
 It is recommended that the credentials are obtained by using the
 http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/DefaultAWSCredentialsProviderChain.html[DefaultAWSCredentialsProviderChain]
@@ -202,9 +202,9 @@ however, a
 different http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentialsProvider.html[AWSCredentialsProvider]
 can be specified when calling createClient(...).
 
-### Coping with Downtime
+== Coping with Downtime
 
-#### AWS DynamoDB Streams outage of less than 24 hours
+=== AWS DynamoDB Streams outage of less than 24 hours
 
 The consumer will resume from the last seen sequence number (as
 implemented
@@ -212,12 +212,12 @@ for https://issues.apache.org/jira/browse/CAMEL-9515[CAMEL-9515]), so
 you should receive a flood of events in quick succession, as long as the
 outage did not also include DynamoDB itself.
 
-#### AWS DynamoDB Streams outage of more than 24 hours
+=== AWS DynamoDB Streams outage of more than 24 hours
 
 Given that AWS only retain 24 hours worth of changes, you will have
 missed change events no matter what mitigations are in place.
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-ec2-component.adoc b/components/camel-aws/src/main/docs/aws-ec2-component.adoc
index 248066b..6097524 100644
--- a/components/camel-aws/src/main/docs/aws-ec2-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-ec2-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon EC2. More information are available at
 https://aws.amazon.com/it/ec2/[Amazon EC2].
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------
@@ -23,7 +23,7 @@ aws-ec2://label[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -127,9 +127,9 @@ You have to provide the amazonEc2Client in the
 Registry or your accessKey and secretKey to access
 the https://aws.amazon.com/it/ec2/[Amazon EC2] service.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the EC2 producer
+=== Message headers evaluated by the EC2 producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
diff --git a/components/camel-aws/src/main/docs/aws-iam-component.adoc b/components/camel-aws/src/main/docs/aws-iam-component.adoc
index 1500930..4fbcee0 100644
--- a/components/camel-aws/src/main/docs/aws-iam-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-iam-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon IAM. More information are available at
 https://aws.amazon.com/it/iam/[Amazon IAM].
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------
@@ -23,7 +23,7 @@ aws-kms://label[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -127,9 +127,9 @@ You have to provide the amazonKmsClient in the
 Registry or your accessKey and secretKey to access
 the https://aws.amazon.com/it/iam/[Amazon IAM] service.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the IAM producer
+=== Message headers evaluated by the IAM producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -144,7 +144,7 @@ the https://aws.amazon.com/it/iam/[Amazon IAM] service.
 |`CamelAwsIAMAccessKeyStatus` |`String` |The Status of the AccessKey you want to set, possible value are active and inactive
 |=======================================================================
 
-#### IAM Producer operations
+=== IAM Producer operations
 
 Camel-AWS IAM component provides the following operation on the producer side:
 
diff --git a/components/camel-aws/src/main/docs/aws-kinesis-component.adoc b/components/camel-aws/src/main/docs/aws-kinesis-component.adoc
index cfa2675..efc0659 100644
--- a/components/camel-aws/src/main/docs/aws-kinesis-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-kinesis-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon Kinesis. More information are available
 at http://aws.amazon.com/kinesis/[AWS Kinesis]
 
-### URI Format
+== URI Format
 
 [source,java]
 -----------------------------------
@@ -24,7 +24,7 @@ The stream needs to be created prior to it being used. +
  You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -161,7 +161,7 @@ You have to provide the amazonKinesisClient in the
 Registry with proxies and relevant credentials
 configured.
 
-### Batch Consumer
+== Batch Consumer
 
 This component implements the Batch Consumer.
 
@@ -169,9 +169,9 @@ This allows you for instance to know how many messages exists in this
 batch and for instance let the Aggregator
 aggregate this number of messages.
 
-### Usage
+== Usage
 
-#### Message headers set by the Kinesis consumer
+=== Message headers set by the Kinesis consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -185,7 +185,7 @@ size is not defined by the API. If it is to be used as a numerical type then use
 |`CamelAwsKinesisPartitionKey` |`String` |Identifies which shard in the stream the data record is assigned to.
 |=======================================================================
 
-#### AmazonKinesis configuration
+=== AmazonKinesis configuration
 
 You will need to create an instance of AmazonKinesisClient and
 bind it to the registry
@@ -211,7 +211,7 @@ from("aws-kinesis://mykinesisstream?amazonKinesisClient=#kinesisClient")
   .to("log:out?showAll=true");
 --------------------------------------------------------------------------------------------------------------------
 
-#### Providing AWS Credentials
+=== Providing AWS Credentials
 
 It is recommended that the credentials are obtained by using the
 http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/DefaultAWSCredentialsProviderChain.html[DefaultAWSCredentialsProviderChain]
@@ -220,7 +220,7 @@ however, a
 different http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentialsProvider.html[AWSCredentialsProvider]
 can be specified when calling createClient(...).
 
-#### Message headers used by the Kinesis producer to write to Kinesis.  The producer expects that the message body is a `byte[]`.
+=== Message headers used by the Kinesis producer to write to Kinesis.  The producer expects that the message body is a `byte[]`.
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -232,7 +232,7 @@ can be specified when calling createClient(...).
 
 |=======================================================================
 
-#### Message headers set by the Kinesis producer on successful storage of a Record
+=== Message headers set by the Kinesis producer on successful storage of a Record
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -246,7 +246,7 @@ http://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html#API_Pu
 
 |=======================================================================
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-kinesis-firehose-component.adoc b/components/camel-aws/src/main/docs/aws-kinesis-firehose-component.adoc
index 6a2a32d..f7ce451 100644
--- a/components/camel-aws/src/main/docs/aws-kinesis-firehose-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-kinesis-firehose-component.adoc
@@ -12,7 +12,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon Kinesis Firehose. More information are available
 at https://aws.amazon.com/kinesis/firehose/[AWS Kinesis Firehose]
 
-### URI Format
+== URI Format
 
 [source,java]
 -----------------------------------
@@ -23,7 +23,7 @@ The stream needs to be created prior to it being used. +
  You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -133,9 +133,9 @@ Registry with proxies and relevant credentials
 configured.
 
 
-### Usage
+== Usage
 
-#### Amazon Kinesis Firehose configuration
+=== Amazon Kinesis Firehose configuration
 
 You will need to create an instance of AmazonKinesisClient and
 bind it to the registry
@@ -161,7 +161,7 @@ from("aws-kinesis-firehose://mykinesisdeliverystream?amazonKinesisFirehoseClient
   .to("log:out?showAll=true");
 --------------------------------------------------------------------------------------------------------------------
 
-#### Providing AWS Credentials
+=== Providing AWS Credentials
 
 It is recommended that the credentials are obtained by using the
 http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/DefaultAWSCredentialsProviderChain.html[DefaultAWSCredentialsProviderChain]
@@ -170,7 +170,7 @@ however, a
 different http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentialsProvider.html[AWSCredentialsProvider]
 can be specified when calling createClient(...).
 
-#### Message headers set by the Kinesis producer on successful storage of a Record
+=== Message headers set by the Kinesis producer on successful storage of a Record
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -182,7 +182,7 @@ http://docs.aws.amazon.com/firehose/latest/APIReference/API_PutRecord.html#API_P
 
 |=======================================================================
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-kms-component.adoc b/components/camel-aws/src/main/docs/aws-kms-component.adoc
index 8f4a908..4b6d16b 100644
--- a/components/camel-aws/src/main/docs/aws-kms-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-kms-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon KMS. More information are available at
 https://aws.amazon.com/it/mq/[Amazon KMS].
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------
@@ -23,7 +23,7 @@ aws-kms://label[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -127,9 +127,9 @@ You have to provide the amazonKmsClient in the
 Registry or your accessKey and secretKey to access
 the https://aws.amazon.com/it/kms/[Amazon KMS] service.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the MQ producer
+=== Message headers evaluated by the MQ producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -144,7 +144,7 @@ the https://aws.amazon.com/it/kms/[Amazon KMS] service.
 |`CamelAwsKMSKeyId` |`String` |The key Id 
 |=======================================================================
 
-#### KMS Producer operations
+=== KMS Producer operations
 
 Camel-AWS KMS component provides the following operation on the producer side:
 
diff --git a/components/camel-aws/src/main/docs/aws-lambda-component.adoc b/components/camel-aws/src/main/docs/aws-lambda-component.adoc
index c40b859..1f5730e 100644
--- a/components/camel-aws/src/main/docs/aws-lambda-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-lambda-component.adoc
@@ -19,7 +19,7 @@ When creating a Lambda function, you need to specify a IAM role which has at lea
 
 Lambda is regional service. Unlike S3 bucket, Lambda function created in a given region is not available on other regions.
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------
@@ -29,7 +29,7 @@ aws-lambda://functionName[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -134,9 +134,9 @@ You have to provide the awsLambdaClient in the
 Registry or your accessKey and secretKey to access
 the https://aws.amazon.com/lambda/[Amazon Lambda] service.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the Lambda producer
+=== Message headers evaluated by the Lambda producer
 
 [width="100%",cols="5%,5%,10%,75%,5%",options="header",]
 |=======================================================================
@@ -195,7 +195,7 @@ The default is 3 seconds.|No
 
 |=======================================================================
 
-### List of Avalaible Operations
+== List of Avalaible Operations
 
 - listFunctions
 - getFunction,
@@ -207,12 +207,12 @@ The default is 3 seconds.|No
 - deleteEventSourceMapping
 - listEventSourceMapping
 
-### Example
+== Example
 
 To have a full understanding of how the component works, you may have a look at this https://github.com/apache/camel/blob/master/components/camel-aws/src/test/java/org/apache/camel/component/aws/lambda/integration/LambdaComponentIntegrationTest.java[integration test]
 
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-mq-component.adoc b/components/camel-aws/src/main/docs/aws-mq-component.adoc
index 17910b8..8698b34 100644
--- a/components/camel-aws/src/main/docs/aws-mq-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-mq-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon MQ. More information are available at
 https://aws.amazon.com/it/mq/[Amazon MQ].
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------
@@ -23,7 +23,7 @@ aws-mq://label[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -127,9 +127,9 @@ You have to provide the amazonEc2Client in the
 Registry or your accessKey and secretKey to access
 the https://aws.amazon.com/it/ec2/[Amazon EC2] service.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the MQ producer
+=== Message headers evaluated by the MQ producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
diff --git a/components/camel-aws/src/main/docs/aws-s3-component.adoc b/components/camel-aws/src/main/docs/aws-s3-component.adoc
index b2a651a..9b22943 100644
--- a/components/camel-aws/src/main/docs/aws-s3-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-s3-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon S3. More information are available at
 http://aws.amazon.com/s3[Amazon S3].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -33,7 +33,7 @@ from("aws-s3:helloBucket?accessKey=yourAccessKey&secretKey=yourSecretKey&prefix=
 --------------------------------------------------------------------------------
 
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -214,7 +214,7 @@ You have to provide the amazonS3Client in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/s3[Amazon's S3].
 
-### Batch Consumer
+== Batch Consumer
 
 This component implements the Batch Consumer.
 
@@ -222,9 +222,9 @@ This allows you for instance to know how many messages exists in this
 batch and for instance let the Aggregator
 aggregate this number of messages.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the S3 producer
+=== Message headers evaluated by the S3 producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -271,7 +271,7 @@ the object using AWS-managed keys. For example use AES256.
 |`CamelAwsS3VersionId` |`String` |The version Id of the object to be stored or returned from the current operation
 |=======================================================================
 
-#### Message headers set by the S3 producer
+=== Message headers set by the S3 producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -284,7 +284,7 @@ the object using AWS-managed keys. For example use AES256.
 
 |=======================================================================
 
-#### Message headers set by the S3 consumer
+=== Message headers set by the S3 consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -333,7 +333,7 @@ specify caching behavior along the HTTP request/reply chain.
 object using AWS-managed keys.
 |=======================================================================
 
-#### S3 Producer operations
+=== S3 Producer operations
 
 Camel-AWS s3 component provides the following operation on the producer side:
 
@@ -344,7 +344,7 @@ Camel-AWS s3 component provides the following operation on the producer side:
 - downloadLink
 - listObjects
 
-#### Advanced AmazonS3 configuration
+=== Advanced AmazonS3 configuration
 
 If your Camel Application is running behind a firewall or if you need to
 have more control over the `AmazonS3` instance configuration, you can
@@ -371,7 +371,7 @@ from("aws-s3://MyBucket?amazonS3Client=#client&delay=5000&maxMessagesPerPoll=5")
 .to("mock:result");
 --------------------------------------------------------------------------------
 
-#### Use KMS with the S3 component
+=== Use KMS with the S3 component
 
 To use AWS KMS to encrypt/decrypt data by using AWS infrastructure you can use the options introduced in 2.21.x like in the following example
 
@@ -384,7 +384,7 @@ from("file:tmp/test?fileName=test.txt")
 
 In this way you'll ask to S3, to use the KMS key 3f0637ad-296a-3dfe-a796-e60654fb128c, to encrypt the file test.txt. When you'll ask to download this file, the decryption will be done directly before the download.
 
-#### Use "useIAMCredentials" with the s3 component
+=== Use "useIAMCredentials" with the s3 component
 
 To use AWS IAM credentials, you must first verify that the EC2 in which you are launching the Camel application on has an IAM role associated with it containing the appropriate policies attached to run effectively.
 Keep in mind that this feature should only be set to "true" on remote instances. To clarify even further, you must still use static credentials locally since IAM is an AWS specific component,
@@ -394,7 +394,7 @@ when the system environment variable called "isRemote" is set to true (there are
 using IAM credentials on AWS environments takes away the need to refresh on remote environments and adds a major security boost (IAM credentials are refreshed automatically every 6 hours and update when their
 policies are updated). This is the AWS recommended way to manage credentials and therefore should be used as often as possible.
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-sdb-component.adoc b/components/camel-aws/src/main/docs/aws-sdb-component.adoc
index 1078ade..1b8aa22 100644
--- a/components/camel-aws/src/main/docs/aws-sdb-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-sdb-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon SDB. More information are available at
 http://aws.amazon.com/sdb[Amazon SDB].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -23,7 +23,7 @@ aws-sdb://domainName[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -107,9 +107,9 @@ You have to provide the amazonSDBClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/sdb[Amazon's SDB].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the SDB producer
+=== Message headers evaluated by the SDB producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -145,7 +145,7 @@ to 100.
 specified attributes will be updated/deleted or not.
 |=======================================================================
 
-#### Message headers set during DomainMetadata operation
+=== Message headers set during DomainMetadata operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -166,7 +166,7 @@ specified attributes will be updated/deleted or not.
 |`CamelAwsSdbItemNameSize` |`Long` |The total size of all item names in the domain, in bytes.
 |=======================================================================
 
-#### Message headers set during GetAttributes operation
+=== Message headers set during GetAttributes operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -175,7 +175,7 @@ specified attributes will be updated/deleted or not.
 |`CamelAwsSdbAttributes` |`List<Attribute>` |The list of attributes returned by the operation.
 |=======================================================================
 
-#### Message headers set during ListDomains operation
+=== Message headers set during ListDomains operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -187,7 +187,7 @@ specified attributes will be updated/deleted or not.
 specified MaxNumberOfDomains still available.
 |=======================================================================
 
-#### Message headers set during Select operation
+=== Message headers set during Select operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -200,7 +200,7 @@ matched, the response size exceeded 1 megabyte, or the execution time
 exceeded 5 seconds.
 |=======================================================================
 
-#### Advanced AmazonSimpleDB configuration
+=== Advanced AmazonSimpleDB configuration
 
 If you need more control over the `AmazonSimpleDB` instance
 configuration you can create your own instance and refer to it from the
@@ -229,7 +229,7 @@ AmazonSimpleDB client = new AmazonSimpleDBClient(awsCredentials, clientConfigura
 registry.bind("client", client);
 --------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-ses-component.adoc b/components/camel-aws/src/main/docs/aws-ses-component.adoc
index 391b37d..32af14f 100644
--- a/components/camel-aws/src/main/docs/aws-ses-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-ses-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon SES. More information are available at
 http://aws.amazon.com/ses[Amazon SES].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------
@@ -23,7 +23,7 @@ aws-ses://from[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -134,9 +134,9 @@ You have to provide the amazonSESClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/ses[Amazon's SES].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the SES producer
+=== Message headers evaluated by the SES producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -155,7 +155,7 @@ the http://aws.amazon.com/ses[Amazon's SES].
 |`CamelAwsSesHtmlEmail` |`Boolean` |*Since Camel 2.12.3* The flag to show if email content is HTML.
 |=======================================================================
 
-#### Message headers set by the SES producer
+=== Message headers set by the SES producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -164,7 +164,7 @@ the http://aws.amazon.com/ses[Amazon's SES].
 |`CamelAwsSesMessageId` |`String` |The Amazon SES message ID.
 |=======================================================================
 
-#### Advanced AmazonSimpleEmailService configuration
+=== Advanced AmazonSimpleEmailService configuration
 
 If you need more control over the `AmazonSimpleEmailService` instance
 configuration you can create your own instance and refer to it from the
@@ -192,7 +192,7 @@ AmazonSimpleEmailService client = new AmazonSimpleEmailServiceClient(awsCredenti
 registry.bind("client", client);
 ----------------------------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-sns-component.adoc b/components/camel-aws/src/main/docs/aws-sns-component.adoc
index 90a3515..dd01a2c 100644
--- a/components/camel-aws/src/main/docs/aws-sns-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-sns-component.adoc
@@ -15,7 +15,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon SNS. More information are available at
 http://aws.amazon.com/sns[Amazon SNS].
 
-### URI Format
+== URI Format
 
 [source,java]
 -----------------------------
@@ -26,7 +26,7 @@ The topic will be created if they don't already exists. +
  You can append query options to the URI in the following format,
 `?options=value&option2=value&...`
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -139,9 +139,9 @@ You have to provide the amazonSNSClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/sns[Amazon's SNS].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the SNS producer
+=== Message headers evaluated by the SNS producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -151,7 +151,7 @@ the http://aws.amazon.com/sns[Amazon's SNS].
 `SnsConfiguration` is used.
 |=======================================================================
 
-#### Message headers set by the SNS producer
+=== Message headers set by the SNS producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -160,7 +160,7 @@ the http://aws.amazon.com/sns[Amazon's SNS].
 |`CamelAwsSnsMessageId` |`String` |The Amazon SNS message ID.
 |=======================================================================
 
-#### Advanced AmazonSNS configuration
+=== Advanced AmazonSNS configuration
 
 If you need more control over the `AmazonSNS` instance configuration you
 can create your own instance and refer to it from the URI:
@@ -187,7 +187,7 @@ AmazonSNS client = new AmazonSNSClient(awsCredentials, clientConfiguration);
 registry.bind("client", client);
 --------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-aws/src/main/docs/aws-sqs-component.adoc b/components/camel-aws/src/main/docs/aws-sqs-component.adoc
index 5e24892..dfbb2e0 100644
--- a/components/camel-aws/src/main/docs/aws-sqs-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-sqs-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon SQS. More information are available at
 http://aws.amazon.com/sqs[Amazon SQS].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -24,7 +24,7 @@ The queue will be created if they don't already exists. +
  You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -201,7 +201,7 @@ You have to provide the amazonSQSClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/sqs[Amazon's SQS].
 
-### Batch Consumer
+== Batch Consumer
 
 This component implements the Batch Consumer.
 
@@ -209,9 +209,9 @@ This allows you for instance to know how many messages exists in this
 batch and for instance let the Aggregator
 aggregate this number of messages.
 
-### Usage
+== Usage
 
-#### Message headers set by the SQS producer
+=== Message headers set by the SQS producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -225,7 +225,7 @@ aggregate this number of messages.
 see by others.
 |=======================================================================
 
-#### Message headers set by the SQS consumer
+=== Message headers set by the SQS consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -240,7 +240,7 @@ see by others.
 |`CamelAwsSqsMessageAttributes` |`Map<String, String>` |The Amazon SQS message attributes.
 |=======================================================================
 
-#### Advanced AmazonSQS configuration
+=== Advanced AmazonSQS configuration
 
 If your Camel Application is running behind a firewall or if you need to
 have more control over the AmazonSQS instance configuration, you can
@@ -267,7 +267,7 @@ from("aws-sqs://MyQueue?amazonSQSClient=#client&delay=5000&maxMessagesPerPoll=5"
 .to("mock:result");
 ---------------------------------------------------------------------------------
 
-#### Creating or updating an SQS Queue
+=== Creating or updating an SQS Queue
 
 In the SQS Component, when an endpoint is started, a check is executed to obtain information 
 about the existence of the queue or not. You're able to customize the creation through the QueueAttributeName 
@@ -282,7 +282,7 @@ from("aws-sqs://MyQueue?amazonSQSClient=#client&delay=5000&maxMessagesPerPoll=5"
 In this example if the MyQueue queue is not already created on AWS, it will be created with default parameters from the 
 SQS configuration. If it's already up on AWS, the SQS configuration options will be used to override the existent AWS configuration.
 
-#### DelayQueue VS Delay for Single message
+=== DelayQueue VS Delay for Single message
 
 From 2.23.0 the component has a new option: delayQueue. When the option is set to true, the SQS Queue will be a DelayQueue with the 
 DelaySeconds option as delay. For more information about DelayQueue you can read the https://docs.aws.amazon.com/en_us/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-delay-queues.html[AWS SQS documentation].
@@ -294,12 +294,12 @@ One important information to take into account is the following:
 as stated in the official documentation. If you want to specify a delay on single messages, you can ignore the delayQueue option, while you can set this option 
 to true, if you need to add a fixed delay to all messages enqueued.
 
-#### Server Side Encryption
+=== Server Side Encryption
 
 From 2.24.0 we introduce the Server Side Encryption attributes for a queue. The related option are serverSideEncryptionEnabled, keyMasterKeyId and kmsDataKeyReusePeriod.
 The SSE is disabled by default. You need to explicitly set the option to true and set the related parameters as queue attributes.
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
@@ -317,7 +317,7 @@ Maven users will need to add the following dependency to their pom.xml.
 where `${camel-version`} must be replaced by the actual version of Camel
 (2.6 or higher).
 
-### JMS-style Selectors
+== JMS-style Selectors
 
 SQS does not allow selectors, but you can effectively achieve this by
 using the Camel Filter EIP and setting an
diff --git a/components/camel-aws/src/main/docs/aws-swf-component.adoc b/components/camel-aws/src/main/docs/aws-swf-component.adoc
index ee2df71..911a91e 100644
--- a/components/camel-aws/src/main/docs/aws-swf-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-swf-component.adoc
@@ -13,7 +13,7 @@ You must have a valid Amazon Web Services developer account, and be
 signed up to use Amazon Simple Workflow. More information are available
 at http://aws.amazon.com/swf/[Amazon Simple Workflow].
 
-### URI Format
+== URI Format
 
 [source,java]
 ---------------------------------------
@@ -23,7 +23,7 @@ aws-swf://<workflow|activity>[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -169,9 +169,9 @@ You have to provide the amazonSWClient in the
 Registry or your accessKey and secretKey to access
 the http://aws.amazon.com/swf[Amazon's Simple Workflow Service].
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the SWF Workflow Producer
+=== Message headers evaluated by the SWF Workflow Producer
 
 A workflow producer allows interacting with a workflow. It can start a
 new workflow execution, query its state, send signals to a running
@@ -201,7 +201,7 @@ workflow, or terminate and cancel it.
 |`CamelSWFChildPolicy` |`String` |The policy to use on child workflows when terminating a workflow.
 |=======================================================================
 
-#### Message headers set by the SWF Workflow Producer
+=== Message headers set by the SWF Workflow Producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -212,7 +212,7 @@ workflow, or terminate and cancel it.
 |`CamelAwsDdbKeyCamelSWFRunId` |`String` |The worfklow run ID used or generated.
 |=======================================================================
 
-#### Message headers set by the SWF Workflow Consumer
+=== Message headers set by the SWF Workflow Consumer
 
 A workflow consumer represents the workflow logic. When it is started,
 it will start polling workflow decision tasks and process them. In
@@ -234,7 +234,7 @@ CamelSWFSignalReceivedAction or CamelSWFGetStateAction.
 |`CamelSWFWorkflowStartTime` |`long` |The time of the start event for this decision task.
 |=======================================================================
 
-#### Message headers set by the SWF Activity Producer
+=== Message headers set by the SWF Activity Producer
 
 An activity producer allows scheduling activity tasks. An activity
 producer can be used only from a thread started by a workflow consumer
@@ -249,7 +249,7 @@ ie, it can process synchronous exchanges started by a workflow consumer.
 |`CamelSWFVersion` |`String` |The activity version to schedule.
 |=======================================================================
 
-#### Message headers set by the SWF Activity Consumer
+=== Message headers set by the SWF Activity Consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -259,7 +259,7 @@ ie, it can process synchronous exchanges started by a workflow consumer.
 completed tasks.
 |=======================================================================
 
-#### Advanced amazonSWClient configuration
+=== Advanced amazonSWClient configuration
 
 If you need more control over the AmazonSimpleWorkflowClient instance
 configuration you can create your own instance and refer to it from the
@@ -282,7 +282,7 @@ AmazonSimpleWorkflowClient client = new AmazonSimpleWorkflowClient(awsCredential
 registry.bind("client", client);
 --------------------------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-azure/src/main/docs/azure-blob-component.adoc b/components/camel-azure/src/main/docs/azure-blob-component.adoc
index df70645..279ded5 100644
--- a/components/camel-azure/src/main/docs/azure-blob-component.adoc
+++ b/components/camel-azure/src/main/docs/azure-blob-component.adoc
@@ -12,7 +12,7 @@ Prerequisites
 You must have a valid Windows Azure Storage account. More information is available at
 https://docs.microsoft.com/azure/[Azure Documentation Portal].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -32,7 +32,7 @@ from("azure-blob:/camelazure/container1/blockBlob").
 to("file://blobdirectory");
 --------------------------------------------------------------------------------
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -130,9 +130,9 @@ Required Azure Storage Blob Service component options
 
 You have to provide the containerOrBlob name and the credentials if the private blob needs to be accessed.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the Azure Storage Blob Service producer
+=== Message headers evaluated by the Azure Storage Blob Service producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -140,7 +140,7 @@ You have to provide the containerOrBlob name and the credentials if the private
 | | |
 |=======================================================================
 
-#### Message headers set by the Azure Storage Blob Service producer
+=== Message headers set by the Azure Storage Blob Service producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -148,7 +148,7 @@ You have to provide the containerOrBlob name and the credentials if the private
 |`CamelFileName` |`String` |The file name for the downloaded blob content.
 |=======================================================================
 
-#### Message headers set by the Azure Storage Blob Service producer consumer
+=== Message headers set by the Azure Storage Blob Service producer consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -159,7 +159,7 @@ You have to provide the containerOrBlob name and the credentials if the private
 |=======================================================================
 
 
-#### Azure Blob Service operations
+=== Azure Blob Service operations
 
 *Operations common to all block types*
 
@@ -215,7 +215,7 @@ You have to provide the containerOrBlob name and the credentials if the private
 
 
 
-#### Azure Blob Client configuration
+=== Azure Blob Client configuration
 
 If your Camel Application is running behind a firewall or if you need to
 have more control over the Azure Blob Client configuration, you can
@@ -238,7 +238,7 @@ from("azure-blob:/camelazure/container1/blockBlob?azureBlobClient=#client")
 .to("mock:result");
 --------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-azure/src/main/docs/azure-queue-component.adoc b/components/camel-azure/src/main/docs/azure-queue-component.adoc
index a6e3691..b0b87a7 100644
--- a/components/camel-azure/src/main/docs/azure-queue-component.adoc
+++ b/components/camel-azure/src/main/docs/azure-queue-component.adoc
@@ -12,7 +12,7 @@ Prerequisites
 You must have a valid Microsoft Azure account. More information is available at
 https://azure.microsoft.com/en-us/free/[Azure Portal].
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -32,7 +32,7 @@ from("azure-queue:/camelazure/messageQueue").
 to("file://queuedirectory");
 --------------------------------------------------------------------------------
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -121,9 +121,9 @@ Required Azure Storage Queue Service component options
 
 You have to provide the containerAndQueue URI  and the credentials.
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the Azure Storage Queue Service producer
+=== Message headers evaluated by the Azure Storage Queue Service producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -131,7 +131,7 @@ You have to provide the containerAndQueue URI  and the credentials.
 | | |
 |=======================================================================
 
-#### Message headers set by the Azure Storage Queue Service producer
+=== Message headers set by the Azure Storage Queue Service producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -139,7 +139,7 @@ You have to provide the containerAndQueue URI  and the credentials.
 | | |
 |=======================================================================
 
-#### Message headers set by the Azure Storage Queue Service producer consumer
+=== Message headers set by the Azure Storage Queue Service producer consumer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -149,7 +149,7 @@ You have to provide the containerAndQueue URI  and the credentials.
 
 
 
-#### Azure Queue Service operations
+=== Azure Queue Service operations
 
 [width="100%",cols="20%,80%",options="header",]
 |===
@@ -168,7 +168,7 @@ You have to provide the containerAndQueue URI  and the credentials.
 
 
 
-#### Azure Queue Client configuration
+=== Azure Queue Client configuration
 
 If your Camel Application is running behind a firewall or if you need to
 have more control over the Azure Queue Client configuration, you can
@@ -191,7 +191,7 @@ from("azure-queue:/camelazure/messageQueue?azureQueueClient=#client")
 .to("mock:result");
 --------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-bam/src/main/docs/bam-example.adoc b/components/camel-bam/src/main/docs/bam-example.adoc
index 240c7dc..638b785 100644
--- a/components/camel-bam/src/main/docs/bam-example.adoc
+++ b/components/camel-bam/src/main/docs/bam-example.adoc
@@ -1,4 +1,4 @@
-## Business Activity Monitor (BAM) Example
+= Business Activity Monitor (BAM) Example
 
 The BAM (Business Activity Monitor) example shows how to
 monitor your transaction flows using Camel.
@@ -15,7 +15,7 @@ amount of time (2 seconds in this example). If an invoice is not
 generated within the allowed amount of time and error is generated and
 sent to an Endpoint.
 
-### Overview
+== Overview
 
 This example lives in the _examples/camel-example-bam_ directory. It
 will poll the following directories
@@ -39,7 +39,7 @@ http://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-bam/src/main/
 which defines the JPA `EntityManagerFactory` and tells Camel to look in
 the *org.apache.camel.example.bam* package to find its routes.
 
-### Using BAM
+== Using BAM
 
 So lets start with the activities definition in
 http://svn.apache.org/repos/asf/camel/trunk/examples/camel-example-bam/src/main/java/org/apache/camel/example/bam/MyActivities.java[MyActivities]
@@ -65,7 +65,7 @@ Components such as ActiveMQ,
 <<jms-component,JMS>>, <<jms-component,IRC>>, <<jms-component,Mail>>,
 <<xmpp-component,XMPP>> etc.
 
-### Running the example
+== Running the example
 
 To run the example we use the link:camel-maven-plugin.html[Camel Maven
 Plugin]. For example from the source or binary distribution the
diff --git a/components/camel-barcode/src/main/docs/barcode-dataformat.adoc b/components/camel-barcode/src/main/docs/barcode-dataformat.adoc
index 12854f2..2e939ef 100644
--- a/components/camel-barcode/src/main/docs/barcode-dataformat.adoc
+++ b/components/camel-barcode/src/main/docs/barcode-dataformat.adoc
@@ -10,7 +10,7 @@ component is to create a barcode image from a String (marshal) and a
 String from a barcode image (unmarshal). You're free to use all features
 that zxing offers.
 
-### Dependencies
+== Dependencies
 
 To use the barcode data format in your camel routes you need to add the
 a dependency on *camel-barcode* which implements this data format.
@@ -28,7 +28,7 @@ the download page for the latest versions).
 </dependency>
 ----------------------------------------
 
-### Barcode Options
+== Barcode Options
 
 // dataformat options: START
 The Barcode dataformat supports 5 options, which are listed below.
@@ -78,7 +78,7 @@ The component supports 6 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Using the Java DSL
+== Using the Java DSL
 
 First you have to initialize the barcode data fomat class. You can use
 the default constructor, or one of parameterized (see JavaDoc). The
@@ -114,7 +114,7 @@ code.addToHintMap(DecodeHintType.TRY_HARDER, Boolean.true);
 
 For possible hints, please consult the xzing documentation.
 
-#### Marshalling
+=== Marshalling
 
 [source,java]
 ----------------------------
@@ -134,7 +134,7 @@ You should find inside the 'barcode_out' folder this image:
 
 image:qr-code.png[image]
 
-#### Unmarshalling
+=== Unmarshalling
 
 The unmarshaller is generic. For unmarshalling you can use any
 BarcodeDataFormat instance. If you've two instances, one for
diff --git a/components/camel-bean-validator/src/main/docs/bean-validator-component.adoc b/components/camel-bean-validator/src/main/docs/bean-validator-component.adoc
index d6ca806..f4d228a 100644
--- a/components/camel-bean-validator/src/main/docs/bean-validator-component.adoc
+++ b/components/camel-bean-validator/src/main/docs/bean-validator-component.adoc
@@ -24,7 +24,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------
@@ -42,7 +42,7 @@ Where *label* is an arbitrary text value describing the endpoint. +
  You can append query options to the URI in the following format,
 ?option=value&option=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -114,7 +114,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### OSGi deployment
+== OSGi deployment
 
 To use Hibernate Validator in the OSGi environment use dedicated
 `ValidationProviderResolver` implementation, just as
@@ -139,7 +139,7 @@ If no custom `ValidationProviderResolver` is defined and the validator
 component has been deployed into the OSGi environment,
 the `HibernateValidationProviderResolver` will be automatically used.
 
-### Example
+== Example
 
 Assumed we have a java bean with the following annotations
 
diff --git a/components/camel-beanio/src/main/docs/beanio-dataformat.adoc b/components/camel-beanio/src/main/docs/beanio-dataformat.adoc
index 6b3672d..05d284b 100644
--- a/components/camel-beanio/src/main/docs/beanio-dataformat.adoc
+++ b/components/camel-beanio/src/main/docs/beanio-dataformat.adoc
@@ -13,7 +13,7 @@ http://beanio.org/2.0/docs/reference/index.html#TheMappingFile[mappings
 XML] file where you define the mapping from the flat format to Objects
 (POJOs). This mapping file is mandatory to use.
 
-### Options
+== Options
 
 // dataformat options: START
 The BeanIO dataformat supports 9 options, which are listed below.
@@ -71,13 +71,13 @@ The component supports 10 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Usage
+== Usage
 
 An example of a
 https://svn.apache.org/repos/asf/camel/trunk/components/camel-beanio/src/test/resources/org/apache/camel/dataformat/beanio/mappings.xml[mapping
 file is here].
 
-#### Using Java DSL
+=== Using Java DSL
 
 To use the `BeanIODataFormat` you need to configure the data format with
 the mapping file, as well the name of the stream. +
@@ -94,13 +94,13 @@ List<Employee> into a stream of CSV data.
 
 The CSV data could for example be as below:
 
-#### Using XML DSL
+=== Using XML DSL
 
 To use the BeanIO data format in XML, you need to configure it using the
 <beanio> XML tag as shown below. The routes is similar to the example
 above.
 
-### Dependencies
+== Dependencies
 
 To use BeanIO in your Camel routes you need to add a dependency on
 *camel-beanio* which implements this data format.
diff --git a/components/camel-blueprint/src/main/docs/blueprint.adoc b/components/camel-blueprint/src/main/docs/blueprint.adoc
index e372c74..dc091e3 100644
--- a/components/camel-blueprint/src/main/docs/blueprint.adoc
+++ b/components/camel-blueprint/src/main/docs/blueprint.adoc
@@ -1,10 +1,10 @@
-## Using OSGi blueprint with Camel
+= Using OSGi blueprint with Camel
 
 A custom XML namespace for Blueprint has been created to let you leverage the nice XML dialect.
 Given Blueprint custom namespaces are not standardized yet, this namespace can only be used on the Apache Aries Blueprint
 implementation, which is the one used by Apache Karaf.
 
-### Overview
+== Overview
 
 The XML schema is mostly the same as the one for Spring, so all the xml snippets throughout the documentation
 referring to Spring XML also apply to Blueprint routes.
@@ -37,7 +37,7 @@ However, using blueprint when you deploy your applications in an OSGi enviroment
 - you can use Blueprint property placeholders
 
 
-### Using camel-blueprint
+== Using camel-blueprint
 
 To leverage camel-blueprint in OSGi, you only need the Aries Blueprint bundle and the camel-blueprint bundle,
 in addition to camel-core and its dependencies.
diff --git a/components/camel-bonita/src/main/docs/bonita-component.adoc b/components/camel-bonita/src/main/docs/bonita-component.adoc
index 68c4247..63b961a 100644
--- a/components/camel-bonita/src/main/docs/bonita-component.adoc
+++ b/components/camel-bonita/src/main/docs/bonita-component.adoc
@@ -6,7 +6,7 @@
 
 Used for communicating with a remote Bonita BPM process engine.
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------
@@ -15,7 +15,7 @@ bonita://[operation]?[options]
 
 Where *operation* is the specific action to perform on Bonita.
 
-### General Options
+== General Options
 
 // component options: START
 The Bonita component has no options.
@@ -87,12 +87,12 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Body content
+== Body content
 
 For the startCase operation, the input variables are retrieved from the body message. This one has to contains a Map<String,Serializable>.
 
 
-### Examples
+== Examples
 
 The following example start a new case in Bonita:
 
@@ -101,7 +101,7 @@ The following example start a new case in Bonita:
 from("direct:start").to("bonita:startCase?hostname=localhost&amp;port=8080&amp;processName=TestProcess&amp;username=install&amp;password=install")
 ----------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 To use Bonita in your Camel routes you need to add a dependency on
 *camel-bonita*, which implements the component.
diff --git a/components/camel-boon/src/main/docs/boon-dataformat.adoc b/components/camel-boon/src/main/docs/boon-dataformat.adoc
index 3693cca..3109c7f 100644
--- a/components/camel-boon/src/main/docs/boon-dataformat.adoc
+++ b/components/camel-boon/src/main/docs/boon-dataformat.adoc
@@ -12,7 +12,7 @@ simple
 and https://github.com/RichardHightower/json-parsers-benchmark[fast
 parser] than other common parsers currently used.
 
-### Options
+== Options
 
 
 
@@ -65,7 +65,7 @@ ND
 
 
 
-### Using the Java DSL
+== Using the Java DSL
 
 [source,java]
 ------------------------------------------------------------------------
@@ -76,7 +76,7 @@ from("activemq:My.Queue")
   .to("mqseries:Another.Queue");
 ------------------------------------------------------------------------
 
-### Using Blueprint XML
+== Using Blueprint XML
 
 [source,java]
 ---------------------------------------------------------------------------------
@@ -93,7 +93,7 @@ from("activemq:My.Queue")
 </camelContext>
 ---------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 [source,java]
 -------------------------------------
diff --git a/components/camel-braintree/src/main/docs/braintree-component.adoc b/components/camel-braintree/src/main/docs/braintree-component.adoc
index 89523c9..2ce3d48 100644
--- a/components/camel-braintree/src/main/docs/braintree-component.adoc
+++ b/components/camel-braintree/src/main/docs/braintree-component.adoc
@@ -31,7 +31,7 @@ for this component:
 
  
 
-### Braintree Options
+== Braintree Options
 
 
 
@@ -137,7 +137,7 @@ The component supports 14 options, which are listed below.
 
 
 
-### URI format
+== URI format
 
  
 
@@ -170,7 +170,7 @@ Endpoint prefix can be one of:
 
  
 
-### BraintreeComponent
+== BraintreeComponent
 
 The Braintree Component can be configured with the options below. These
 options can be provided using the component's bean
@@ -198,7 +198,7 @@ of the environment, merchantId, publicKey and privateKey options.
 
 All the options above are provided by Braintree Payments
 
-### 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
@@ -222,7 +222,7 @@ at https://developers.braintreepayments.com/reference/overview[https://develope
 
  
 
-#### Endpoint prefix _addOn_
+=== Endpoint prefix _addOn_
 
 The following endpoints can be invoked with the prefix *addOn* as
 follows:
@@ -240,7 +240,7 @@ braintree://addOn/endpoint
 |all |  |  |List<com.braintreegateway.Addon>
 |====================================================
 
-#### Endpoint prefix _address_
+=== Endpoint prefix _address_
 
 The following endpoints can be invoked with the prefix *address* as
 follows:
@@ -278,7 +278,7 @@ URI Options for _address_
 |id |String
 |============================================
 
-#### Endpoint prefix _clientToken_
+=== Endpoint prefix _clientToken_
 
 The following endpoints can be invoked with the prefix *clientToken* as
 follows:
@@ -305,7 +305,7 @@ URI Options for _clientToken_
 |request |com.braintreegateway.ClientTokenrequest
 |================================================
 
-#### Endpoint prefix _creditCardVerification_
+=== Endpoint prefix _creditCardVerification_
 
 The following endpoints can be invoked with the
 prefix *creditCardverification* as follows:
@@ -336,7 +336,7 @@ URI Options for _creditCardVerification_
 |query |com.braintreegateway.CreditCardVerificationSearchRequest
 |===============================================================
 
-#### Endpoint prefix _customer_
+=== Endpoint prefix _customer_
 
 The following endpoints can be invoked with the prefix *customer* as
 follows:
@@ -379,7 +379,7 @@ URI Options for _customer_
 |query |com.braintreegateway.CustomerSearchRequest
 |=================================================
 
-#### Endpoint prefix _discount_
+=== Endpoint prefix _discount_
 
 The following endpoints can be invoked with the prefix *discount* as
 follows:
@@ -401,7 +401,7 @@ braintree://discount/endpoint
 
  +
 
-#### Endpoint prefix _dispute_
+=== Endpoint prefix _dispute_
 
 The following endpoints can be invoked with the prefix *dispute* as
 follows:
@@ -458,7 +458,7 @@ URI Options for _dispute_
 |==========================================================
 
 
-#### Endpoint prefix _documentUpload_
+=== Endpoint prefix _documentUpload_
 
 The following endpoints can be invoked with the prefix *documentUpload* as
 follows:
@@ -485,7 +485,7 @@ URI Options for _documentUpload_
 |==========================================================
 
 
-#### Endpoint prefix _merchantAccount_
+=== Endpoint prefix _merchantAccount_
 
 The following endpoints can be invoked with the
 prefix *merchantAccount* as follows:
@@ -523,7 +523,7 @@ URI Options for _merchantAccount_
 |currencyRequest |com.braintreegateway.MerchantAccountCreateForCurrencyRequest
 |====================================================
 
-#### Endpoint prefix _paymentMethod_
+=== Endpoint prefix _paymentMethod_
 
 The following endpoints can be invoked with the
 prefix *paymentMethod* as follows:
@@ -561,7 +561,7 @@ URI Options for _paymentMethod_
 |deleteRequest |com.braintreegateway.PaymentMethodDeleteRequest
 |==================================================
 
-#### Endpoint prefix _paymentMethodNonce_
+=== Endpoint prefix _paymentMethodNonce_
 
 The following endpoints can be invoked with the
 prefix *paymentMethodNonce* as follows:
@@ -592,7 +592,7 @@ URI Options for _paymentMethodNonce_
 |paymentMethodNonce |String
 |==========================
 
-#### Endpoint prefix _plan_
+=== Endpoint prefix _plan_
 
 The following endpoints can be invoked with the prefix *plan* as
 follows:
@@ -611,7 +611,7 @@ braintree://plan/endpoint
 |====================================================
 
 
-#### Endpoint prefix _report_
+=== Endpoint prefix _report_
 
 The following endpoints can be invoked with the prefix *report* as
 follows:
@@ -637,7 +637,7 @@ URI Options for _report_
 |==============================================================
 
 
-#### Endpoint prefix _settlementBatchSummary_
+=== Endpoint prefix _settlementBatchSummary_
 
 The following endpoints can be invoked with the
 prefix *settlementBatchSummary* as follows:
@@ -666,7 +666,7 @@ URI Options for _settlementBatchSummary_
 |groupByCustomField |String
 |==========================
 
-#### Endpoint prefix _subscription_
+=== Endpoint prefix _subscription_
 
 The following endpoints can be invoked with the prefix *subscription* as
 follows:
@@ -718,7 +718,7 @@ URI Options for _subscription_
 
  
 
-#### Endpoint prefix _transaction_
+=== Endpoint prefix _transaction_
 
 The following endpoints can be invoked with the prefix *transaction* as
 follows:
@@ -783,7 +783,7 @@ URI Options for _transaction_
 |query |com.braintreegateway.TransactionSearchRequest
 |==========================================================
 
-#### Endpoint prefix _webhookNotification_
+=== Endpoint prefix _webhookNotification_
 
 The following endpoints can be invoked with the
 prefix *webhookNotification* as follows:
@@ -815,7 +815,7 @@ URI Options for _webhookNotification_
 
  
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can
@@ -827,12 +827,12 @@ be executed once for each exchange. To change this behavior use the
 property *consumer.splitResults=true* to return a single exchange for
 the entire list or array. 
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a *CamelBraintree.* prefix.
 
-### Message body
+== Message body
 
 All result message bodies utilize objects provided by the Braintree Java
 SDK. Producer endpoints can specify the option name for incoming message
@@ -842,7 +842,7 @@ body in the *inBody* endpoint parameter.
 
  
 
-### Examples
+== Examples
 
 *Blueprint*
 
diff --git a/components/camel-cache/src/main/docs/cache-component.adoc b/components/camel-cache/src/main/docs/cache-component.adoc
index 711937d..91c9e12 100644
--- a/components/camel-cache/src/main/docs/cache-component.adoc
+++ b/components/camel-cache/src/main/docs/cache-component.adoc
@@ -29,7 +29,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------
@@ -39,7 +39,7 @@ cache://cacheName[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=#beanRef&...`
 
-### Options
+== Options
 
 
 
@@ -156,9 +156,9 @@ The component supports 17 options, which are listed below.
 
 
 
-### Sending/Receiving Messages to/from the cache
+== Sending/Receiving Messages to/from the cache
 
-#### Message Headers up to Camel 2.7
+=== Message Headers up to Camel 2.7
 
 [width="100%",cols="20%,80%",options="header",]
 |=======================================================================
@@ -177,7 +177,7 @@ The component supports 17 options, which are listed below.
 |`CACHE_KEY` |The cache key used to store the Message in the cache. The cache key is
 optional if the CACHE_OPERATION is DELETEALL
 |=======================================================================
-#### Message Headers Camel 2.8+
+=== Message Headers Camel 2.8+
 
 Header changes in Camel 2.8
 
@@ -220,7 +220,7 @@ headers:
 |`CamelCacheEternal` |`Boolean` |*Camel 2.11:* Whether the content is eternal.
 |=======================================================================
 
-#### Cache Producer
+=== Cache Producer
 
 Sending data to the cache involves the ability to direct payloads in
 exchanges to be stored in a pre-existing or created-on-demand cache. The
@@ -230,7 +230,7 @@ mechanics of doing this involve
 * ensuring that the Message Exchange Body contains the message directed
 to the cache
 
-#### Cache Consumer
+=== Cache Consumer
 
 Receiving data from the cache involves the ability of the CacheConsumer
 to listen on a pre-existing or created-on-demand Cache using an event
@@ -244,7 +244,7 @@ Body containing the just added/updated payload is placed and sent.
 * in case of a CamelCacheDeleteAll operation, the Message Exchange
 Header CamelCacheKey and the Message Exchange Body are not populated.
 
-#### Cache Processors
+=== Cache Processors
 
 There are a set of nice processors with the ability to perform cache
 lookups and selectively replace payload content at the
@@ -253,9 +253,9 @@ lookups and selectively replace payload content at the
 * token
 * xpath level
 
-### Cache Usage Samples
+== Cache Usage Samples
 
-#### Example 1: Configuring the cache
+=== Example 1: Configuring the cache
 
 [source,java]
 -------------------------------------------------
@@ -271,7 +271,7 @@ from("cache://MyApplicationCache" +
           "&diskExpiryThreadIntervalSeconds=300")
 -------------------------------------------------
 
-#### Example 2: Adding keys to the cache
+=== Example 2: Adding keys to the cache
 
 [source,java]
 ---------------------------------------------------------------------------------------------
@@ -285,7 +285,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 ---------------------------------------------------------------------------------------------
 
-#### Example 2: Updating existing keys in a cache
+=== Example 2: Updating existing keys in a cache
 
 [source,java]
 ------------------------------------------------------------------------------------------------
@@ -299,7 +299,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 ------------------------------------------------------------------------------------------------
 
-#### Example 3: Deleting existing keys in a cache
+=== Example 3: Deleting existing keys in a cache
 
 [source,java]
 --------------------------------------------------------------------------------------
@@ -313,7 +313,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 --------------------------------------------------------------------------------------
 
-#### Example 4: Deleting all existing keys in a cache
+=== Example 4: Deleting all existing keys in a cache
 
 [source,java]
 -----------------------------------------------------------------------------------------
@@ -326,7 +326,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 -----------------------------------------------------------------------------------------
 
-#### Example 5: Notifying any changes registering in a Cache to Processors and other Producers
+=== Example 5: Notifying any changes registering in a Cache to Processors and other Producers
 
 [source,java]
 --------------------------------------------------------------------------------------------------
@@ -346,7 +346,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 --------------------------------------------------------------------------------------------------
 
-#### Example 6: Using Processors to selectively replace payload with cache values
+=== Example 6: Using Processors to selectively replace payload with cache values
 
 [source,java]
 ---------------------------------------------------------------------------------------
@@ -376,7 +376,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 ---------------------------------------------------------------------------------------
 
-#### Example 7: Getting an entry from the Cache
+=== Example 7: Getting an entry from the Cache
 
 [source,java]
 ------------------------------------------------------------------------------------------------
@@ -396,7 +396,7 @@ from("direct:start")
     .to("direct:nextPhase");
 ------------------------------------------------------------------------------------------------
 
-#### Example 8: Checking for an entry in the Cache
+=== Example 8: Checking for an entry in the Cache
 
 Note: The CHECK command tests existence of an entry in the cache but
 doesn't place a message in the body.
@@ -418,7 +418,7 @@ from("direct:start")
     .end();
 ------------------------------------------------------------------------------------------------
 
-### Management of EHCache
+== Management of EHCache
 
 http://ehcache.org/[EHCache] has its own statistics and management from
 JMX.
@@ -452,7 +452,7 @@ ManagementService.registerMBeans(CacheManager.getInstance(), mbeanServer, true,
 You can get cache hits, misses, in-memory hits, disk hits, size stats
 this way. You can also change CacheConfiguration parameters on the fly.
 
-### Cache replication Camel 2.8
+== Cache replication Camel 2.8
 
 The Camel Cache component is able to distribute a cache across server
 nodes using several different replication mechanisms including: RMI,
@@ -485,7 +485,7 @@ phase.
 manual] to get a better understanding of the Camel Cache replication
 mechanism.
 
-#### Example: JMS cache replication
+=== Example: JMS cache replication
 
 JMS replication is the most powerful and secured replication method.
 Used together with Camel Cache replication makes it also rather
diff --git a/components/camel-caffeine/src/main/docs/caffeine-cache-component.adoc b/components/camel-caffeine/src/main/docs/caffeine-cache-component.adoc
index a84bc10..31f7c7a 100644
--- a/components/camel-caffeine/src/main/docs/caffeine-cache-component.adoc
+++ b/components/camel-caffeine/src/main/docs/caffeine-cache-component.adoc
@@ -20,7 +20,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -30,7 +30,7 @@ caffeine-cache://cacheName[?options]
 You can append query options to the URI in the following
 format, `?option=value&option=#beanRef&...`
 
-### Options
+== Options
 
 
 // component options: START
@@ -138,7 +138,7 @@ The component supports 17 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Examples
+== Examples
 
 You can use your cache with the following code:
 
@@ -160,7 +160,7 @@ You can use your cache with the following code:
 
 In this way you'll work always on the same cache in the registry.
 
-### Check operation result
+== Check operation result
 
 Each time you'll use an operation on the cache you'll have two different headers to check for status:
 
diff --git a/components/camel-caffeine/src/main/docs/caffeine-loadcache-component.adoc b/components/camel-caffeine/src/main/docs/caffeine-loadcache-component.adoc
index 1ca473b..2ea19cd 100644
--- a/components/camel-caffeine/src/main/docs/caffeine-loadcache-component.adoc
+++ b/components/camel-caffeine/src/main/docs/caffeine-loadcache-component.adoc
@@ -20,7 +20,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -30,7 +30,7 @@ caffeine-loadcache://cacheName[?options]
 You can append query options to the URI in the following
 format, `?option=value&option=#beanRef&...`
 
-### Options
+== Options
 
 
 // component options: START
diff --git a/components/camel-castor/src/main/docs/castor-dataformat.adoc b/components/camel-castor/src/main/docs/castor-dataformat.adoc
index 65b87b6..a1a4076 100644
--- a/components/camel-castor/src/main/docs/castor-dataformat.adoc
+++ b/components/camel-castor/src/main/docs/castor-dataformat.adoc
@@ -11,7 +11,7 @@ into Java objects or to marshal Java objects into an XML payload.
 As usually you can use either Java DSL or Spring XML to work with Castor
 Data Format.
 
-### Using the Java DSL
+== Using the Java DSL
 
 [source,java]
 -----------------------------
@@ -60,7 +60,7 @@ castor.getMarshaller();
 castor.getUnmarshaller();
 -------------------------
 
-### Using Spring XML
+== Using Spring XML
 
 The following example shows how to use Castor to unmarshal using Spring
 configuring the castor data type
@@ -104,7 +104,7 @@ on multiple routes. You have to set the <castor> element directly in
 </camelContext>
 -----------------------------------------------------------------------
 
-### Options
+== Options
 
 // dataformat options: START
 The Castor dataformat supports 9 options, which are listed below.
@@ -162,7 +162,7 @@ The component supports 10 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Dependencies
+== Dependencies
 
 To use Castor in your camel routes you need to add the a dependency on
 *camel-castor* which implements this data format.
diff --git a/components/camel-chronicle/src/main/docs/chronicle-engine-component.adoc b/components/camel-chronicle/src/main/docs/chronicle-engine-component.adoc
index 1ffeb7e..1155057 100644
--- a/components/camel-chronicle/src/main/docs/chronicle-engine-component.adoc
+++ b/components/camel-chronicle/src/main/docs/chronicle-engine-component.adoc
@@ -9,7 +9,7 @@
 
 The camel chronicle-engine component let you leverage the power of OpenHFT's Chronicle-Engine
 
-### URI Format
+== URI Format
 
 [source,java]
 ----------------------------
@@ -17,7 +17,7 @@ chronicle-engine:addresses/path[?options]
 ----------------------------
 
 
-### URI Options
+== URI Options
 
 
 // component options: START
diff --git a/components/camel-chunk/src/main/docs/chunk-component.adoc b/components/camel-chunk/src/main/docs/chunk-component.adoc
index e8bcc27..e8ca840 100644
--- a/components/camel-chunk/src/main/docs/chunk-component.adoc
+++ b/components/camel-chunk/src/main/docs/chunk-component.adoc
@@ -21,7 +21,7 @@ their `pom.xml` for this component:
 </dependency>
 ---------------------------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ----------------------------
@@ -34,7 +34,7 @@ invoke.
 You can append query options to the URI in the following
 format, `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 // component options: START
@@ -112,7 +112,7 @@ with extensions _.chtml_ or _.cxml. _If you need to specify a different
 folder or extensions, you will need to use the specific options listed
 above.
 
-### Chunk Context
+== Chunk Context
 
 Camel will provide exchange information in the Chunk context (just
 a `Map`). The `Exchange` is transferred as:
@@ -137,7 +137,7 @@ a `Map`). The `Exchange` is transferred as:
 |`response` |The Out message (only for InOut message exchange pattern).
 |=======================================================================
 
-### 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
@@ -154,7 +154,7 @@ configured. |
 |ChunkConstants.CHUNK_TEMPLATE |String |The template to use instead of the endpoint configured. |
 |=======================================================================
 
-### Samples
+== Samples
 
 For example you could use something like:
 
@@ -198,7 +198,7 @@ to("chunk:file_example?themeFolder=template&themeSubfolder=subfolder&extension=c
 In this example Chunk component will look for the file
 _file_example.chunk_ in the folder _template/subfolder._
 
-### The Email Sample
+== The Email Sample
 
 In this sample we want to use Chunk templating for an order confirmation
 email. The email template is laid out in Chunk as:
diff --git a/components/camel-cmis/src/main/docs/cmis-component.adoc b/components/camel-cmis/src/main/docs/cmis-component.adoc
index e330718..fd29c97 100644
--- a/components/camel-cmis/src/main/docs/cmis-component.adoc
+++ b/components/camel-cmis/src/main/docs/cmis-component.adoc
@@ -9,7 +9,7 @@ http://chemistry.apache.org/java/opencmis.html[Apache Chemistry] client
 API and allows you to add/read nodes to/from a CMIS compliant content
 repositories.
 
-### URI Format
+== URI Format
 
 [source,java]
 ------------------------------
@@ -19,7 +19,7 @@ cmis://cmisServerUrl[?options]
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### CMIS Options
+== CMIS Options
 
 
 // component options: START
@@ -108,9 +108,9 @@ The component supports 3 options, which are listed below.
 
 
 
-### Usage
+== Usage
 
-#### Message headers evaluated by the producer
+=== Message headers evaluated by the producer
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -135,7 +135,7 @@ the node from this cmis property and it is path
 |`cmis:contentStreamMimeType` |`null` |The mimetype to set for a document
 |=======================================================================
 
-#### Message headers set during querying Producer operation
+=== Message headers set during querying Producer operation
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -149,7 +149,7 @@ map is cmis property and its value. If `CamelCMISRetrieveContent` header is set
 entry in the map with key `CamelCMISContent` will contain `InputStream`
 of the document type of nodes.
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-coap/src/main/docs/coap-component.adoc b/components/camel-coap/src/main/docs/coap-component.adoc
index 5f66134..f3fcf70 100644
--- a/components/camel-coap/src/main/docs/coap-component.adoc
+++ b/components/camel-coap/src/main/docs/coap-component.adoc
@@ -39,7 +39,7 @@ for this component:
 </dependency>
 ---------------------------------------------------------
 
-### Options
+== Options
 
 
 // component options: START
@@ -118,7 +118,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,20%,70%",options="header",]
 |=======================================================================
@@ -133,7 +133,7 @@ of what each code means.
 |`CamelCoapUri` |`String` |The URI of a CoAP server to call. Will override any existing URI configured directly on the endpoint.
 |=======================================================================
 
-#### Configuring the CoAP producer request method
+=== Configuring the CoAP producer request method
 
 The following rules determine which request method the CoAP producer will use to invoke the target URI:
 
diff --git a/components/camel-consul/src/main/docs/consul-component.adoc b/components/camel-consul/src/main/docs/consul-component.adoc
index 250fee1..1f9bec2 100644
--- a/components/camel-consul/src/main/docs/consul-component.adoc
+++ b/components/camel-consul/src/main/docs/consul-component.adoc
@@ -18,7 +18,7 @@ for this component:
     </dependency>
 -------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------
@@ -31,7 +31,7 @@ You can append query options to the URI in the following format:
     ?option=value&option=value&...
 ---------------------------------------
 
-### Options
+== Options
 
 
 
@@ -212,7 +212,7 @@ The component supports 90 options, which are listed below.
 
 
 
-### Headers
+== Headers
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
diff --git a/components/camel-context/src/main/docs/context-component.adoc b/components/camel-context/src/main/docs/context-component.adoc
index 9b10436..4f98e0d 100644
--- a/components/camel-context/src/main/docs/context-component.adoc
+++ b/components/camel-context/src/main/docs/context-component.adoc
@@ -27,7 +27,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 --------------------------------------------------
@@ -114,12 +114,12 @@ The component supports 2 options, which are listed below.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Example
+== Example
 
 In this example we'll create a black box context, then we'll use it from
 another CamelContext.
 
-#### Defining the context component
+=== Defining the context component
 
 First you need to create a CamelContext, add some routes in it, start it
 and then register the CamelContext into the Registry
@@ -165,7 +165,7 @@ ID. We can do the same thing in Spring via
 </camelContext>
 --------------------------------------------------------------------------
 
-#### Using the context component
+=== Using the context component
 
 Then in another CamelContext we can then refer to this "accounts black
 box" by just sending to *accounts:purchaseOrder* and consuming from
@@ -196,7 +196,7 @@ middleware (outside of the black box) we can do things like...
 </camelContext>
 --------------------------------------------------------------------------------
 
-#### Naming endpoints
+=== Naming endpoints
 
 A context component instance can have many public input and output
 endpoints that can be accessed from outside it's CamelContext. When
diff --git a/components/camel-corda/src/main/docs/corda-component.adoc b/components/camel-corda/src/main/docs/corda-component.adoc
index f5ac0b4..bb31e2b 100644
--- a/components/camel-corda/src/main/docs/corda-component.adoc
+++ b/components/camel-corda/src/main/docs/corda-component.adoc
@@ -121,7 +121,7 @@ You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -133,7 +133,7 @@ You can append query options to the URI in the following format,
 
 
 
-### Samples
+== Samples
 
 Subscribe for new vault state changes:
 
diff --git a/components/camel-couchbase/src/main/docs/couchbase-component.adoc b/components/camel-couchbase/src/main/docs/couchbase-component.adoc
index e4b3a9f..af5df47 100644
--- a/components/camel-couchbase/src/main/docs/couchbase-component.adoc
+++ b/components/camel-couchbase/src/main/docs/couchbase-component.adoc
@@ -21,14 +21,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------------
 couchbase:url
 -------------------------------------------------
 
-### Options
+== Options
 
 // component options: START
 The Couchbase component has no options.
diff --git a/components/camel-couchdb/src/main/docs/couchdb-component.adoc b/components/camel-couchdb/src/main/docs/couchdb-component.adoc
index 63a5a0d..f994403 100644
--- a/components/camel-couchdb/src/main/docs/couchdb-component.adoc
+++ b/components/camel-couchdb/src/main/docs/couchdb-component.adoc
@@ -33,7 +33,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------------
@@ -43,7 +43,7 @@ couchdb:http://hostname[:port]/database?[options]
 Where *hostname* is the hostname of the running couchdb instance. Port
 is optional and if not specified then defaults to 5984.
 
-### Options
+== Options
 
 // component options: START
 The CouchDB component has no options.
@@ -120,7 +120,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Headers
+== Headers
 
 The following headers are set on exchanges during message transport.
 
@@ -146,7 +146,7 @@ ignored. That means for example, if you set CouchDbId as a header, it
 will not be used as the id for insertion, the id of the document will
 still be used.
 
-### Message Body
+== Message Body
 
 The component will use the message body as the document to be inserted.
 If the body is an instance of String, then it will be marshalled into a
@@ -155,7 +155,7 @@ or the insert / update will fail. If the body is an instance of a
 com.google.gson.JsonElement then it will be inserted as is. Otherwise
 the producer will throw an exception of unsupported body type.
 
-### Samples
+== Samples
 
 For example if you wish to consume all inserts, updates and deletes from
 a CouchDB instance running locally, on port 9999 then you could use the
diff --git a/components/camel-crypto-cms/src/main/docs/crypto-cms-component.adoc b/components/camel-crypto-cms/src/main/docs/crypto-cms-component.adoc
index 83f4117..82fb77c 100644
--- a/components/camel-crypto-cms/src/main/docs/crypto-cms-component.adoc
+++ b/components/camel-crypto-cms/src/main/docs/crypto-cms-component.adoc
@@ -32,7 +32,7 @@ Security.addProvider(new BouncyCastleProvider());
 
 If the Bouncy Castle security provider is not registered then the Crypto CMS component will register the provider.
 
-### Options
+== Options
 
 // component options: START
 The Crypto CMS component supports 3 options, which are listed below.
@@ -122,7 +122,7 @@ The component supports 4 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Enveloped Data
+== Enveloped Data
 
 Note, that a `crypto-cms:encypt` endpoint is typically defined in one route and the complimentary `crypto-cms:decrypt` in another, though for simplicity in the
 examples they appear one after the other.
@@ -232,7 +232,7 @@ from("direct:start")
     </route> 
 ----
 
-### Signed Data
+== Signed Data
 
 Note, that a `crypto-cms:sign` endpoint is typically defined in one route and the complimentary `crypto-cms:verify` in another, though for simplicity in the
 examples they appear one after the other.
diff --git a/components/camel-crypto/src/main/docs/crypto-dataformat.adoc b/components/camel-crypto/src/main/docs/crypto-dataformat.adoc
index a6f3b66..2f9f1b2 100644
--- a/components/camel-crypto/src/main/docs/crypto-dataformat.adoc
+++ b/components/camel-crypto/src/main/docs/crypto-dataformat.adoc
@@ -12,7 +12,7 @@ encryption to cyphertext and unmarshalling to mean decryption back to
 the original plaintext. This data format implements only symmetric
 (shared-key) encryption and decyption.
 
-### CryptoDataFormat Options
+== CryptoDataFormat Options
 
 // dataformat options: START
 The Crypto (Java Cryptographic Extension) dataformat supports 10 options, which are listed below.
@@ -95,7 +95,7 @@ The component supports 33 options, which are listed below.
 ND
 
 
-### Basic Usage
+== Basic Usage
 
 At its most basic all that is required to encrypt/decrypt an exchange is a shared secret key.
 If one or more instances of the Crypto data format are configured with this key the format can
@@ -136,7 +136,7 @@ In Spring the dataformat is configured first and then used in routes
 ----------------------------------------------------------
 
 
-### Specifying the Encryption Algorithm
+== Specifying the Encryption Algorithm
 
 Changing the algorithm is a matter of supplying the JCE algorithm name. If you change the algorithm you will need to use a compatible key.
 
@@ -158,7 +158,7 @@ from("direct:hmac-algorithm")
 A list of the available algorithms in Java 7 is available via the Java Cryptography Architecture Standard Algorithm Name Documentation.
 
 
-### Specifying an Initialization Vector
+== Specifying an Initialization Vector
 
 Some crypto algorithms, particularly block algorithms, require configuration with an initial block of data known as an Initialization Vector.
 In the JCE this is passed as an AlgorithmParameterSpec when the Cipher is initialized.
@@ -226,7 +226,7 @@ For more information of the use of Initialization Vectors, consult
 * http://en.wikipedia.org/wiki/Block_cipher_modes_of_operation
 
 
-### Hashed Message Authentication Codes (HMAC)
+== Hashed Message Authentication Codes (HMAC)
 To avoid attacks against the encrypted data while it is in transit the CryptoDataFormat can also calculate a Message Authentication
 Code for the encrypted exchange contents based on a configurable MAC algorithm. The calculated HMAC is appended to the stream after encryption.
 It is separated from the stream in the decryption phase. The MAC is recalculated and verified against the transmitted version to insure nothing
@@ -279,7 +279,7 @@ or with spring.
 ----------------------------------------------------------
 
 
-### Supplying Keys Dynamically
+== Supplying Keys Dynamically
 
 When using a Recipient list or similar EIP the recipient of an exchange can vary dynamically.
 Using the same key across all recipients may neither be feasible or desirable. It would be useful to be able to specify
@@ -320,7 +320,7 @@ or with spring.
 ----------------------------------------------------------
 
 
-### Dependencies
+== Dependencies
 
 To use the <<crypto-component,Crypto>> dataformat in your camel routes you
 need to add the following dependency to your pom.
diff --git a/components/camel-crypto/src/main/docs/pgp-dataformat.adoc b/components/camel-crypto/src/main/docs/pgp-dataformat.adoc
index 6518497..a10bd61 100644
--- a/components/camel-crypto/src/main/docs/pgp-dataformat.adoc
+++ b/components/camel-crypto/src/main/docs/pgp-dataformat.adoc
@@ -12,7 +12,7 @@ encryption to cyphertext and unmarshalling to mean decryption back to
 the original plaintext. This data format implements only symmetric
 (shared-key) encryption and decyption.
 
-### PGPDataFormat Options
+== PGPDataFormat Options
 
 // dataformat options: START
 The PGP dataformat supports 15 options, which are listed below.
@@ -40,7 +40,7 @@ The PGP dataformat supports 15 options, which are listed below.
 |===
 // dataformat options: END
 
-### PGPDataFormat Message Headers
+== PGPDataFormat Message Headers
 
 You can override the PGPDataFormat options by applying below headers
 into message dynamically.
@@ -95,7 +95,7 @@ symmectric key, set by PGPDataFormat during encryptiion process
 signatures, set by PGPDataFormat during signing process
 |=======================================================================
 
-### Encrypting with PGPDataFormat
+== Encrypting with PGPDataFormat
 
 The following sample uses the popular PGP format for
 encrypting/decrypting files using the
@@ -107,7 +107,7 @@ encryption, but you can obviously use different keys:
 
 Or using Spring:
 
-#### To work with the previous example you need the following
+=== To work with the previous example you need the following
 
 * A public keyring file which contains the public keys used to encrypt
 the data
@@ -115,7 +115,7 @@ the data
 data
 * The keyring password
 
-#### Managing your keyring
+=== Managing your keyring
 
 To manage the keyring, I use the command line tools, I find this to be
 the simplest approach in managing the keys. There are also Java
@@ -150,7 +150,7 @@ ls -l ~/.gnupg/pubring.gpg ~/.gnupg/secring.gpg
 
 [[Crypto-PGPDecrypting/VerifyingofMessagesEncrypted/SignedbyDifferentPrivate/PublicKeys]]
 PGP Decrypting/Verifying of Messages Encrypted/Signed by Different
-### Private/Public Keys
+== Private/Public Keys
 
 Since *Camel 2.12.2*.
 
@@ -195,7 +195,7 @@ same mechanism is also used to locate the public key for verifying a
 signature. Therefore you no longer must specify User IDs for the
 unmarshaling.
 
-### Restricting the Signer Identities during PGP Signature Verification
+== Restricting the Signer Identities during PGP Signature Verification
 
 Since *Camel 2.12.3.*
 
@@ -232,7 +232,7 @@ successful as soon as one signature can be verified.
 then do not specify the signature key User IDs. In this case all public
 keys in the public keyring are taken into account.
 
-### Several Signatures in One PGP Data Format
+== Several Signatures in One PGP Data Format
 
 Since *Camel 2.12.3.*
 
@@ -262,7 +262,7 @@ from("direct:start")
         ...      
 -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
-### Support of Sub-Keys and Key Flags in PGP Data Format Marshaler
+== Support of Sub-Keys and Key Flags in PGP Data Format Marshaler
 
 Since *Camel 2.12.3. +
 *An https://tools.ietf.org/html/rfc4880#section-12.1[OpenPGP V4 key] can
@@ -277,7 +277,7 @@ these Key Flags of the primary key and sub-keys in order to determine
 the right key for signing and encryption. This is necessary because the
 primary key and its sub-keys have the same User IDs.
 
-### Support of Custom Key Accessors
+== Support of Custom Key Accessors
 
 Since *Camel 2.13.0. +
 *You can implement custom key accessors for encryption/signing. The
@@ -301,7 +301,7 @@ PGPKeyAccessDataFormat has the same options as PGPDataFormat except
 password, keyFileName, encryptionKeyRing, signaturePassword,
 signatureKeyFileName, and signatureKeyRing.
 
-### Dependencies
+== Dependencies
 
 To use the PGP dataformat in your camel routes you
 need to add the following dependency to your pom.
diff --git a/components/camel-csv/src/main/docs/csv-dataformat.adoc b/components/camel-csv/src/main/docs/csv-dataformat.adoc
index ada72e2..c59ac90 100644
--- a/components/camel-csv/src/main/docs/csv-dataformat.adoc
+++ b/components/camel-csv/src/main/docs/csv-dataformat.adoc
@@ -10,7 +10,7 @@ handle CSV payloads (Comma Separated Values) such as those
 exported/imported by Excel.
 
 
-### Options
+== Options
 
 // dataformat options: START
 The CSV dataformat supports 28 options, which are listed below.
@@ -108,7 +108,7 @@ ND
 
 
 
-### Marshalling a Map to CSV
+== Marshalling a Map to CSV
 
 The component allows you to marshal a Java Map (or any other message
 type that can be converted in a Map) into a
@@ -152,7 +152,7 @@ then it will produce
 abc,123
 ----
 
-### Unmarshalling a CSV message into a Java List
+== Unmarshalling a CSV message into a Java List
 
 Unmarshalling will transform a CSV messsage into a Java List with CSV
 file lines (containing another List with all the field values).
@@ -188,7 +188,7 @@ for (List<String> line : data) {
 }
 --------------------------------------------------------------------------------------------------------------
 
-### Marshalling a List<Map> to CSV
+== Marshalling a List<Map> to CSV
 
 *Available as of Camel 2.1*
 
@@ -197,7 +197,7 @@ format you can now store the message payload as a
 `List<Map<String, Object>>` object where the list contains a Map for
 each row.
 
-### File Poller of CSV, then unmarshaling
+== File Poller of CSV, then unmarshaling
 
 Given a bean which can handle the incoming data...
 
@@ -224,7 +224,7 @@ public void doHandleCsvData(List<List<String>> csvData)
 </route>
 ------------------------------------------------------------------------------------------------
 
-### Marshaling with a pipe as delimiter
+== Marshaling with a pipe as delimiter
 Considering the following body
 
 [source,java]
@@ -273,7 +273,7 @@ abc|123
 
 [[CSV-UsingautogenColumns,configRefandstrategyRefattributesinsideXMLDSL]]
 Using autogenColumns, configRef and strategyRef attributes inside XML
-### DSL
+== DSL
 
 *Available as of Camel 2.9.2 / 2.10 and deleted for Camel 2.15*
 
@@ -312,7 +312,7 @@ should illustrate this customization.
 </bean>
 -----------------------------------------------------------------------------------------------------------------------------
 
-### Using skipFirstLine option while unmarshaling
+== Using skipFirstLine option while unmarshaling
 
 *Available as of Camel 2.10 and deleted for Camel 2.15*
 
@@ -342,7 +342,7 @@ from("direct:start")
 .to("bean:myCsvHandler?method=doHandleCsv");
 --------------------------------------------
 
-### Unmarshaling with a pipe as delimiter
+== Unmarshaling with a pipe as delimiter
 
 Using the Spring/XML DSL:
 
@@ -405,7 +405,7 @@ csvConfig.setDelimiter(';');
 
 doesn't work. You have to set the delimiter as a String!
 
-### Dependencies
+== Dependencies
 
 To use CSV in your Camel routes you need to add a dependency on
 *camel-csv*, which implements this data format.
diff --git a/components/camel-cxf/src/main/docs/cxf-component.adoc b/components/camel-cxf/src/main/docs/cxf-component.adoc
index 2c18682..8b0b8cb 100644
--- a/components/camel-cxf/src/main/docs/cxf-component.adoc
+++ b/components/camel-cxf/src/main/docs/cxf-component.adoc
@@ -77,7 +77,7 @@ for this component:
 ------------------------------------------------------------
 
 
-### URI format
+== URI format
 There are two URI formats for this endpoint: *cxfEndpoint* and *someAddress*.
 
 [source,java]
@@ -105,7 +105,7 @@ For either style above, you can append options to the URI as follows:
 cxf:bean:cxfEndpoint?wsdlURL=wsdl/hello_world.wsdl&dataFormat=PAYLOAD
 ---------------------------------------------------------------------
 
-### Options
+== Options
 
 
 
@@ -228,7 +228,7 @@ http://en.wikipedia.org/wiki/QName[QNames], so if you provide them be
 sure to prefix them with their \{namespace} as shown in the examples
 above.
 
-#### Descriptions of the dataformats
+=== Descriptions of the dataformats
 In Apache Camel, the Camel CXF component is the key to integrating routes with Web services. You can use the Camel CXF component to create a CXF endpoint, which can be used in either of the following ways:
 
 * *Consumer* — (at the start of a route) represents a Web service instance, which integrates with the route. The type of payload injected into the route depends on the value of the endpoint's dataFormat option.
@@ -290,7 +290,7 @@ following is an example.
 </cxf:cxfEndpoint>
 -------------------------------------------------------------------------------------------------------
 
-#### Description of relayHeaders option
+=== Description of relayHeaders option
 
 There are _in-band_ and _out-of-band_ on-the-wire headers from the
 perspective of a JAXWS WSDL-first developer.
@@ -433,7 +433,7 @@ value is `false`, it will throw an exception
  _Default_: `false`
 |=======================================================================
 
-### Configure the CXF endpoints with Spring
+== Configure the CXF endpoints with Spring
 
 You can configure the CXF endpoint with the Spring configuration file
 shown below, and you can also embed the endpoint into the `camelContext`
@@ -563,7 +563,7 @@ and setDefaultBus properties from spring configuration file.
    </cxf:cxfEndpoint>
 -------------------------------------------------------------------------
 
-### Configuring the CXF Endpoints with Apache Aries Blueprint
+== Configuring the CXF Endpoints with Apache Aries Blueprint
 
 Since Camel 2.8 there is support for utilizing aries blueprint
 dependency injection for your CXF endpoints. 
@@ -639,7 +639,7 @@ You can also use the bean references just as in spring
 </blueprint>
 ----------------------------------------------------------------------------------------------------------------
 
-### How to make the camel-cxf component use log4j instead of java.util.logging
+== How to make the camel-cxf component use log4j instead of java.util.logging
 
 CXF's default logger is `java.util.logging`. If you want to change it to
 log4j, proceed as follows. Create a file, in the classpath, named
@@ -648,7 +648,7 @@ fully-qualified name of the class,
 `org.apache.cxf.common.logging.Log4jLogger`, with no comments, on a
 single line.
 
-### How to let camel-cxf response message with xml start document
+== How to let camel-cxf response message with xml start document
 
 If you are using some SOAP client such as PHP, you will get this kind of
 error, because CXF doesn't add the XML start document "<?xml
@@ -676,7 +676,7 @@ Or adding a message header for it like this if you are using *Camel
  exchange.getOut().setHeader(Client.RESPONSE_CONTEXT, map);
 -------------------------------------------------------------------
 
-### How to override the CXF producer address from message header
+== How to override the CXF producer address from message header
 
 The `camel-cxf` producer supports to override the services address by
 setting the message with the key of "CamelDestinationOverrideUrl".
@@ -687,7 +687,7 @@ setting the message with the key of "CamelDestinationOverrideUrl".
  exchange.getIn().setHeader(Exchange.DESTINATION_OVERRIDE_URL, constant(getServiceAddress()));
 ----------------------------------------------------------------------------------------------
 
-### How to consume a message from a camel-cxf endpoint in POJO data format
+== How to consume a message from a camel-cxf endpoint in POJO data format
 
 The `camel-cxf` endpoint consumer POJO data format is based on the
 http://cxf.apache.org/docs/invokers.html[CXF invoker], so the
@@ -695,7 +695,7 @@ message header has a property with the name of
 `CxfConstants.OPERATION_NAME` and the message body is a list of the SEI
 method parameters.
 
-### How to prepare the message for the camel-cxf endpoint in POJO data format
+== How to prepare the message for the camel-cxf endpoint in POJO data format
 
 The `camel-cxf` endpoint producer is based on the
 https://github.com/apache/cxf/blob/master/core/src/main/java/org/apache/cxf/endpoint/Client.java[CXF
@@ -713,7 +713,7 @@ list.
 If you want to get the object array from the message body, you can get
 the body using `message.getbody(Object[].class)`, as follows:
 
-### How to deal with the message for a camel-cxf endpoint in PAYLOAD data format
+== How to deal with the message for a camel-cxf endpoint in PAYLOAD data format
 
 `PAYLOAD` means that you process the payload message from the SOAP
 envelope. You can use the `Header.HEADER_LIST` as the key to set or get
@@ -724,7 +724,7 @@ elements.
 for SOAP message headers and Body elements. This change enables
 decoupling the native CXF message from the Camel message.
 
-### How to get and set SOAP headers in POJO mode
+== How to get and set SOAP headers in POJO mode
 
 `POJO` means that the data format is a "list of Java objects" when the
 Camel-cxf endpoint produces or consumes Camel exchanges. Even though
@@ -753,7 +753,7 @@ InsertResponseOutHeaderProcessor and InsertRequestOutHeaderProcessor are
 actually the same. The only difference between the two processors is
 setting the direction of the inserted SOAP header.
 
-### How to get and set SOAP headers in PAYLOAD mode
+== How to get and set SOAP headers in PAYLOAD mode
 
 We've already shown how to access SOAP message (CxfPayload object) in
 PAYLOAD mode (See "How to deal with the message for a camel-cxf endpoint
@@ -774,12 +774,12 @@ forwarded to the CXF service. If you do not want that these headers are
 forwarded you have to remove them in the Camel header
 "org.apache.cxf.headers.Header.list".
 
-### SOAP headers are not available in MESSAGE mode
+== SOAP headers are not available in MESSAGE mode
 
 SOAP headers are not available in MESSAGE mode as SOAP processing is
 skipped.
 
-### How to throw a SOAP Fault from Camel
+== How to throw a SOAP Fault from Camel
 
 If you are using a `camel-cxf` endpoint to consume the SOAP request, you
 may need to throw the SOAP Fault from the camel context. +
@@ -796,7 +796,7 @@ code in the message header.
 Same for using POJO data format. You can set the SOAPFault on the out
 body and also indicate it's a fault by calling Message.setFault(true):
 
-### How to propagate a camel-cxf endpoint's request and response context
+== How to propagate a camel-cxf endpoint's request and response context
 
 https://github.com/apache/cxf/blob/master/core/src/main/java/org/apache/cxf/endpoint/Client.java[CXF
 client API] provides a way to invoke the operation with request and
@@ -829,7 +829,7 @@ response context with the following code:
                       responseContext.get("javax.xml.ws.wsdl.operation").toString());
 -------------------------------------------------------------------------------------------------------------
 
-### Attachment Support
+== Attachment Support
 
 *POJO Mode:* Both SOAP with Attachment and MTOM are supported (see
 example in Payload Mode for enabling MTOM).  However, SOAP with
@@ -870,7 +870,7 @@ you require just the SOAP XML as a String, you can set the message body
 with message.getSOAPPart(), and Camel convert can do the rest of work
 for you.
 
-### Streaming Support in PAYLOAD mode
+== Streaming Support in PAYLOAD mode
 
 In Camel 2.8.2, the camel-cxf component now supports streaming of incoming
 messages when using PAYLOAD mode. Previously, the incoming messages
@@ -902,7 +902,7 @@ Global system property: you can add a system property of
 That sets the global default, but setting the endpoint property above
 will override this value for that endpoint.
 
-### Using the generic CXF Dispatch mode
+== Using the generic CXF Dispatch mode
 
 From Camel 2.8.0, the camel-cxf component supports the generic
 https://cxf.apache.org/docs/jax-ws-dispatch-api.html[CXF dispatch
diff --git a/components/camel-cxf/src/main/docs/cxfrs-component.adoc b/components/camel-cxf/src/main/docs/cxfrs-component.adoc
index 0df1b0f..e82a112 100644
--- a/components/camel-cxf/src/main/docs/cxfrs-component.adoc
+++ b/components/camel-cxf/src/main/docs/cxfrs-component.adoc
@@ -27,7 +27,7 @@ for this component:
 </dependency>
 -------------------------------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------
@@ -51,7 +51,7 @@ For either style above, you can append options to the URI as follows:
 cxfrs:bean:cxfEndpoint?resourceClasses=org.apache.camel.rs.Example
 ------------------------------------------------------------------
 
-### Options
+== Options
 
 
 
@@ -170,7 +170,7 @@ https://github.com/apache/camel/blob/master/components/camel-cxf/src/main/resour
 file] and http://cxf.apache.org/docs/jax-rs.html[CXF JAX-RS
 documentation] for more information.
 
-### How to configure the REST endpoint in Camel
+== How to configure the REST endpoint in Camel
 
 In
 https://github.com/apache/camel/blob/master/components/camel-cxf/src/main/resources/schema/cxfEndpoint.xsd[camel-cxf
@@ -178,7 +178,7 @@ schema file], there are two elements for the REST endpoint definition.
 *cxf:rsServer* for REST consumer, *cxf:rsClient* for REST producer. +
  You can find a Camel REST service route configuration example here.
 
-### How to override the CXF producer address from message header
+== How to override the CXF producer address from message header
 
 The `camel-cxfrs` producer supports to override the services address by
 setting the message with the key of "CamelDestinationOverrideUrl".
@@ -189,7 +189,7 @@ setting the message with the key of "CamelDestinationOverrideUrl".
  exchange.getIn().setHeader(Exchange.DESTINATION_OVERRIDE_URL, constant(getServiceAddress()));
 ----------------------------------------------------------------------------------------------
 
-### Consuming a REST Request - Simple Binding Style
+== Consuming a REST Request - Simple Binding Style
 
 *Available as of Camel 2.11*
 
@@ -227,7 +227,7 @@ respected and it becomes the final response.
 * In all cases, Camel headers permitted by custom or default
 `HeaderFilterStrategy` are added to the HTTP response.
 
-#### Enabling the Simple Binding Style
+=== Enabling the Simple Binding Style
 
 This binding style can be activated by setting the `bindingStyle`
 parameter in the consumer endpoint to value `SimpleConsumer`:
@@ -238,7 +238,7 @@ parameter in the consumer endpoint to value `SimpleConsumer`:
     .to("log:TEST?showAll=true");
 ---------------------------------------------------------
 
-#### Examples of request binding with different method signatures
+=== Examples of request binding with different method signatures
 
 Below is a list of method signatures along with the expected result from
 the Simple binding.
@@ -270,7 +270,7 @@ as the IN message body.
  The DataHandler is unwrapped from the MessageContentsList and preserved
 as the IN message body.
 
-#### More examples of the Simple Binding Style
+=== More examples of the Simple Binding Style
 
 Given a JAX-RS resource class with this method:
 
@@ -319,7 +319,7 @@ For more examples on how to process requests and write responses can be
 found
 https://svn.apache.org/repos/asf/camel/trunk/components/camel-cxf/src/test/java/org/apache/camel/component/cxf/jaxrs/simplebinding/[here].
 
-### Consuming a REST Request - Default Binding Style
+== Consuming a REST Request - Default Binding Style
 
 The http://cxf.apache.org/docs/jax-rs.html[CXF JAXRS front end]
 implements the https://javaee.github.io/jsr311/[JAX-RS (JSR-311) API], so we can
@@ -411,7 +411,7 @@ public interface CustomerServiceResource {
 }
 ----
 
-### How to invoke the REST service through camel-cxfrs producer
+== How to invoke the REST service through camel-cxfrs producer
 
 The http://cxf.apache.org/docs/jax-rs.html[CXF JAXRS front end]
 implements
diff --git a/components/camel-digitalocean/src/main/docs/digitalocean-component.adoc b/components/camel-digitalocean/src/main/docs/digitalocean-component.adoc
index ac42ae3..51fa577 100644
--- a/components/camel-digitalocean/src/main/docs/digitalocean-component.adoc
+++ b/components/camel-digitalocean/src/main/docs/digitalocean-component.adoc
@@ -6,11 +6,11 @@
 
 The **DigitalOcean** component allows you to manage Droplets and resources within the DigitalOcean cloud with **Camel** by encapsulating [digitalocean-api-java](https://www.digitalocean.com/community/projects/api-client-in-java). All of the functionality that you are familiar with in the DigitalOcean control panel is also available through this Camel component.
 
-### Prerequisites
+== Prerequisites
 
 You must have a valid DigitalOcean account and a valid OAuth token. You can generate an OAuth token by visiting the [Apps & API](https://cloud.digitalocean.com/settings/applications) section of the DigitalOcean control panel for your account.
 
-### URI format
+== URI format
 
 The **DigitalOcean Component** uses the following URI format:
 
@@ -28,7 +28,7 @@ digitalocean://droplets?operation=list&oAuthToken=XXXXXX&page=1&perPage=10
 The DigitalOcean component only supports producer endpoints so you cannot use this component at the beginning of a route to listen to messages in a channel.
 
 
-### Options
+== Options
 
 
 // component options: START
@@ -109,24 +109,24 @@ All **operation** values are defined in `DigitalOceanOperations` enumeration.
 All **header** names used by the component are defined in `DigitalOceanHeaders` enumeration.
 
 
-### Message body result
+== Message body result
 
 All message bodies returned are using objects provided by the **digitalocean-api-java** library.
 
 
-### API Rate Limits
+== API Rate Limits
 
 DigitalOcean REST API encapsulated by camel-digitalocean component is subjected to API Rate Limiting. You can find the per method limits in the [API Rate Limits documentation](https://developers.digitalocean.com/documentation/v2/#rate-limit).
 
 
-### Account endpoint
+== Account endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
 | `get` | get account info |  | `com.myjeeva.digitalocean.pojo.Account`  |
 
 
-### BlockStorages endpoint
+== BlockStorages endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -144,7 +144,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `resize` | resize a Block Storage volume | `CamelDigitalOceanVolumeSizeGigabytes`  _Integer_<br>`CamelDigitalOceanRegion` _String_| `com.myjeeva.digitalocean.pojo.Action`  |
 | `listActions` | retrieve all actions that have been executed on a volume | `CamelDigitalOceanId`  _Integer_| `List<com.myjeeva.digitalocean.pojo.Action>`  |
 
-### Droplets endpoint
+== Droplets endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -178,7 +178,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `listNeighbors` |  retrieve a list of droplets that are running on the same physical server | `CamelDigitalOceanId` _Integer_ | `List<com.myjeeva.digitalocean.pojo.Droplet>`  |
 | `listAllNeighbors` |  retrieve a list of any droplets that are running on the same physical hardware | | `List<com.myjeeva.digitalocean.pojo.Droplet>`  |
 
-### Images endpoint
+== Images endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -192,7 +192,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `transfer` | transfer an image to another region| `CamelDigitalOceanId` _Integer_ <br>`CamelDigitalOceanRegion` _String_| `com.myjeeva.digitalocean.pojo.Action`  |
 | `convert` | convert an image, for example, a backup to a snapshot| `CamelDigitalOceanId` _Integer_ | `com.myjeeva.digitalocean.pojo.Action`  |
 
-### Snapshots endpoint
+== Snapshots endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -201,7 +201,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `delete` | delete an snapshot| `CamelDigitalOceanId` _Integer_ | `com.myjeeva.digitalocean.pojo.Delete`  |
 
 
-### Keys endpoint
+== Keys endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -213,20 +213,20 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `delete` | delete a key by id| `CamelDigitalOceanId` _Integer_ | `com.myjeeva.digitalocean.pojo.Delete`  |
 | `delete` | delete a key by fingerprint| `CamelDigitalOceanKeyFingerprint` _String_ | `com.myjeeva.digitalocean.pojo.Delete`  |
 
-### Regions endpoint
+== Regions endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
 | `list` |  list all of the regions that are available | | `List<com.myjeeva.digitalocean.pojo.Region>`  |
 
 
-### Sizes endpoint
+== Sizes endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
 | `list` |  list all of the sizes that are available | | `List<com.myjeeva.digitalocean.pojo.Size>`  |
 
-### Floating IPs endpoint
+== Floating IPs endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -239,7 +239,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `unassign` | unassign a Floating IP | `CamelDigitalOceanFloatingIPAddress` _String_ | `com.myjeeva.digitalocean.pojo.Action`  |
 | `listActions` |  retrieve all actions that have been executed on a Floating IP | `CamelDigitalOceanFloatingIPAddress` _String_ | `List<com.myjeeva.digitalocean.pojo.Action>`  |
 
-### Tags endpoint
+== Tags endpoint
 
 | operation | Description | Headers | Result |
 | ------ | ---- | ------- | ----------- |
@@ -250,7 +250,7 @@ DigitalOcean REST API encapsulated by camel-digitalocean component is subjected
 | `update` |  update a tag | `CamelDigitalOceanName` _String_ <br>`CamelDigitalOceanNewName` _String_| `com.myjeeva.digitalocean.pojo.Tag`  |
 
 
-### Examples
+== Examples
 
 Get your account info
 
diff --git a/components/camel-docker/src/main/docs/docker-component.adoc b/components/camel-docker/src/main/docs/docker-component.adoc
index ce14b1e..275a891 100644
--- a/components/camel-docker/src/main/docs/docker-component.adoc
+++ b/components/camel-docker/src/main/docs/docker-component.adoc
@@ -12,7 +12,7 @@ https://docs.docker.com/reference/api/docker_remote_api[Docker Remote
 API].
 
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------
@@ -21,7 +21,7 @@ docker://[operation]?[options]
 
 Where *operation* is the specific action to perform on Docker.
 
-### General Options
+== General Options
 
 // component options: START
 The Docker component supports 2 options, which are listed below.
@@ -131,7 +131,7 @@ The component supports 20 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Header Strategy
+== Header Strategy
 
 All URI option can be passed as Header properties. Values found in a
 message header take precedence over URI parameters. A header property
@@ -146,7 +146,7 @@ below
 |=======================================================================
 
 
-### Examples
+== Examples
 
 The following example consumes events from Docker:
 
@@ -163,7 +163,7 @@ from("docker://info?host=192.168.59.103&port=2375").to("log:info");
 -------------------------------------------------------------------
 
 
-### Dependencies
+== Dependencies
 
 To use Docker in your Camel routes you need to add a dependency on
 *camel-docker*, which implements the component.
diff --git a/components/camel-dozer/src/main/docs/dozer-component.adoc b/components/camel-dozer/src/main/docs/dozer-component.adoc
index 8cfad56..e78a70a 100644
--- a/components/camel-dozer/src/main/docs/dozer-component.adoc
+++ b/components/camel-dozer/src/main/docs/dozer-component.adoc
@@ -34,7 +34,7 @@ following dependency to their `pom.xml`:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 The Dozer component only supports producer endpoints.
 
@@ -55,7 +55,7 @@ from("direct:orderInput").
   to("direct:orderOutput");
 ---------------------------------------------------------------------------------------
 
-### Options
+== Options
 
 // component options: START
 The Dozer component has no options.
@@ -124,7 +124,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Using Data Formats with Dozer
+== Using Data Formats with Dozer
 
 Dozer does not support non-Java sources and targets for mappings, so it
 cannot, for example, map an XML document to a Java object on its own.
@@ -158,7 +158,7 @@ using a JAXB data format and marshal the mapping output using Jackson.
 <endpoint uri="dozer:xml2json?marshalId=myjson&amp;unmarshalId=myjaxb&amp;targetModel=org.example.Order"/>
 ----------------------------------------------------------------------------------------------------------
 
-### Configuring Dozer
+== Configuring Dozer
 
 All Dozer endpoints require a Dozer mapping configuration file which
 defines mappings between source and target objects.  The component will
@@ -181,13 +181,13 @@ of `org.apache.camel.converter.dozer.DozerBeanMapperConfiguration`.
 </bean>
 ------------------------------------------------------------------------------------------
 
-### Mapping Extensions
+== Mapping Extensions
 
 The Dozer component implements a number of extensions to the Dozer
 mapping framework as custom converters.  These converters implement
 mapping functions that are not supported directly by Dozer itself.
 
-#### Variable Mappings
+=== Variable Mappings
 
 Variable mappings allow you to map the value of a variable definition
 within a Dozer configuration into a target field instead of using the
@@ -218,7 +218,7 @@ class into your target field of choice:
 </mappings>
 --------------------------------------------------------------------------------------------------------
 
-#### Custom Mappings
+=== Custom Mappings
 
 Custom mappings allow you to define your own logic for how a source
 field is mapped to a target field.  They are similar in function to
@@ -269,7 +269,7 @@ public class CustomMapper {
 </mappings>
 --------------------------------------------------------------------------------------------------------
 
-#### Expression Mappings
+=== Expression Mappings
 
 Expression mappings allow you to use the powerful
 http://camel.apache.org/languages.html[language] capabilities of Camel
diff --git a/components/camel-drill/src/main/docs/drill-component.adoc b/components/camel-drill/src/main/docs/drill-component.adoc
index 35905ca..513ebba 100644
--- a/components/camel-drill/src/main/docs/drill-component.adoc
+++ b/components/camel-drill/src/main/docs/drill-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 --------------------------------
@@ -31,11 +31,11 @@ drill://host[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Drill Producer 
+== Drill Producer 
 
 The producer execute query using *CamelDrillQuery* header and put results into body.
 
-### Options
+== Options
 
 // component options: START
 The Drill component has no options.
diff --git a/components/camel-eclipse/src/main/docs/eclipse.adoc b/components/camel-eclipse/src/main/docs/eclipse.adoc
index 765d7a2..2a0c149 100644
--- a/components/camel-eclipse/src/main/docs/eclipse.adoc
+++ b/components/camel-eclipse/src/main/docs/eclipse.adoc
@@ -1,4 +1,4 @@
-## Eclipse Component
+= Eclipse Component
 
 *Available as of Camel 2.3*
 
@@ -12,7 +12,7 @@ The resolver is provided in the class
 `org.apache.camel.component.eclipse.EclipsePackageScanClassResolver` in
 the `camel-eclipse` jar file.
 
-### Using with Java DSL
+== Using with Java DSL
 
 You need to configure the resolver on the
 CamelContext which is done like this:
@@ -25,7 +25,7 @@ CamelContext which is done like this:
   context.setPackageScanClassResolver(eclipseResolver);
 -----------------------------------------------------------------------------------
 
-### Using with Spring XML
+== Using with Spring XML
 
 When using Spring XML its just a matter of defining a spring bean with
 the Eclipse class resolver as shown:
@@ -42,7 +42,7 @@ the Eclipse class resolver as shown:
   </camelContext>
 ----------------------------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml
 for this component:
diff --git a/components/camel-ehcache/src/main/docs/ehcache-component.adoc b/components/camel-ehcache/src/main/docs/ehcache-component.adoc
index db19f77..887da54 100644
--- a/components/camel-ehcache/src/main/docs/ehcache-component.adoc
+++ b/components/camel-ehcache/src/main/docs/ehcache-component.adoc
@@ -25,7 +25,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -35,7 +35,7 @@ ehcache://cacheName[?options]
 You can append query options to the URI in the following
 format, `?option=value&option=#beanRef&...`
 
-### Options
+== Options
 
 
 // component options: START
@@ -155,7 +155,7 @@ The component supports 25 options, which are listed below.
 
 
 
-#### Message Headers Camel 
+=== Message Headers Camel 
 
  
 [width="100%",cols="10%,10%,80%",options="header",]
@@ -194,7 +194,7 @@ Object used for comparison for actions like REPLACE
 |CamelEhcacheEventType |EventType |The type of event received
 |=======================================================================
 
-### Ehcache based idempotent repository example:
+== Ehcache based idempotent repository example:
 
 [source,java]
 ------------------------------------------------------------------------------------------------
@@ -208,7 +208,7 @@ from("direct:in")
 
  
 
-### Ehcache based aggregation repository example:
+== Ehcache based aggregation repository example:
 
 [source,java]
 ---------------------------------------------------------------------------------------------------------------------------------
diff --git a/components/camel-ejb/src/main/docs/ejb-component.adoc b/components/camel-ejb/src/main/docs/ejb-component.adoc
index 79c6b3a..e453d3e 100644
--- a/components/camel-ejb/src/main/docs/ejb-component.adoc
+++ b/components/camel-ejb/src/main/docs/ejb-component.adoc
@@ -22,7 +22,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------
@@ -32,7 +32,7 @@ ejb:ejbName[?options]
 Where *ejbName* can be any string which is used to look up the EJB in
 the Application Server JNDI Registry
 
-### Options
+== Options
 
 
 
@@ -88,7 +88,7 @@ with the following path and query parameters:
 // endpoint options: END
 
 
-### Bean Binding
+== Bean Binding
 
 How bean methods to be invoked are chosen (if they are not specified
 explicitly through the *method* parameter) and how parameter values are
@@ -97,7 +97,7 @@ Bean Binding mechanism which is used throughout
 all of the various Bean Integration
 mechanisms in Camel.
 
-### Examples
+== Examples
 
 In the following examples we use the Greater EJB which is defined as
 follows:
@@ -135,7 +135,7 @@ public class GreaterImpl implements GreaterLocal {
 }
 -------------------------------------------------------------------------------------------------------------------------------------------------------------
 
-#### Using Java DSL
+=== Using Java DSL
 
 In this example we want to invoke the `hello` method on the EJB. Since
 this example is based on an unit test using Apache OpenEJB we have to
@@ -183,7 +183,7 @@ usually allows it to access the JNDI registry and lookup the
 <<ejb-component,EJB>>s. However if you need to access a application server on a remote JVM or
 the likes, you have to prepare the properties beforehand.
 
-#### Using Spring XML
+=== Using Spring XML
 
 And this is the same example using Spring XML instead:
 
diff --git a/components/camel-elasticsearch/src/main/docs/elasticsearch-component.adoc b/components/camel-elasticsearch/src/main/docs/elasticsearch-component.adoc
index 5702926..3eb9049 100644
--- a/components/camel-elasticsearch/src/main/docs/elasticsearch-component.adoc
+++ b/components/camel-elasticsearch/src/main/docs/elasticsearch-component.adoc
@@ -20,7 +20,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------
@@ -28,7 +28,7 @@ elasticsearch://clusterName[?options]
 -------------------------------------
 
 
-### Endpoint Options
+== Endpoint Options
 
 
 
@@ -117,7 +117,7 @@ The component supports 3 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Local testing
+== Local testing
 
 If you want to run against a local (in JVM/classloader) ElasticSearch
 server, just set the clusterName value in the URI to "local". See the
@@ -125,7 +125,7 @@ http://www.elasticsearch.org/guide/reference/java-api/client.html[client
 guide] for more details.
 
 
-### Message Operations
+== Message Operations
 
 The following ElasticSearch operations are currently supported. Simply
 set an endpoint URI option or exchange header with a key of "operation"
@@ -167,7 +167,7 @@ returns a MultiSearchResponse object in the body
 indexId in the body.
 |=======================================================================
 
-### Index Example
+== Index Example
 
 Below is a simple INDEX example
 
@@ -195,7 +195,7 @@ map.put("content", "test");
 String indexId = template.requestBody("direct:index", map, String.class);
 -------------------------------------------------------------------------
 
-### For more information, see these resources
+== For more information, see these resources
 
 http://elasticsearch.org[ElasticSearch Main Site]
 
diff --git a/components/camel-elasticsearch5/src/main/docs/elasticsearch5-component.adoc b/components/camel-elasticsearch5/src/main/docs/elasticsearch5-component.adoc
index 41f1407..42a897b 100644
--- a/components/camel-elasticsearch5/src/main/docs/elasticsearch5-component.adoc
+++ b/components/camel-elasticsearch5/src/main/docs/elasticsearch5-component.adoc
@@ -20,7 +20,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------
@@ -28,7 +28,7 @@ elasticsearch5://clusterName[?options]
 -------------------------------------
 
 
-### Endpoint Options
+== Endpoint Options
 
 
 
@@ -123,7 +123,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Message Operations
+== Message Operations
 
 The following ElasticSearch operations are currently supported. Simply
 set an endpoint URI option or exchange header with a key of "operation"
@@ -168,7 +168,7 @@ returns a MultiSearchResponse object in the body
 indexId in the body.
 |=======================================================================
 
-### Index Example
+== Index Example
 
 Below is a simple INDEX example
 
@@ -196,7 +196,7 @@ map.put("content", "test");
 String indexId = template.requestBody("direct:index", map, String.class);
 -------------------------------------------------------------------------
 
-### For more information, see these resources
+== For more information, see these resources
 
 http://www.elastic.co[Elastic Main Site]
 
diff --git a/components/camel-etcd/src/main/docs/etcd-component.adoc b/components/camel-etcd/src/main/docs/etcd-component.adoc
index 3a97638..d923778 100644
--- a/components/camel-etcd/src/main/docs/etcd-component.adoc
+++ b/components/camel-etcd/src/main/docs/etcd-component.adoc
@@ -6,14 +6,14 @@
 
 The camel etcd component allows you to work with Etcd, a distributed reliable key-value store.
 
-### URI Format
+== URI Format
 
 [source,java]
 ----------------------------
 etcd:namespace/path[?options]
 ----------------------------
 
-### URI Options
+== URI Options
 
 // component options: START
 The etcd component supports 7 options, which are listed below.
diff --git a/components/camel-eventadmin/src/main/docs/eventadmin-component.adoc b/components/camel-eventadmin/src/main/docs/eventadmin-component.adoc
index 5ebbce2..42abb53 100644
--- a/components/camel-eventadmin/src/main/docs/eventadmin-component.adoc
+++ b/components/camel-eventadmin/src/main/docs/eventadmin-component.adoc
@@ -7,7 +7,7 @@
 The `eventadmin` component can be used in an OSGi environment to receive
 OSGi EventAdmin events and process them.
 
-### Dependencies
+== Dependencies
 
 Maven users need to add the following dependency to their `pom.xml`
 
@@ -23,7 +23,7 @@ Maven users need to add the following dependency to their `pom.xml`
 where `${camel-version`} must be replaced by the actual version of Camel
 (2.6.0 or higher).
 
-### URI format
+== URI format
 
 [source,xml]
 --------------------------
@@ -32,7 +32,7 @@ eventadmin:topic[?options]
 
 where `topic` is the name of the topic to listen too.
 
-### URI options
+== URI options
 
 // component options: START
 The OSGi EventAdmin component supports 2 options, which are listed below.
@@ -80,7 +80,7 @@ with the following path and query parameters:
 |===
 // endpoint options: END
 
-### Message headers
+== Message headers
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -88,11 +88,11 @@ with the following path and query parameters:
 | | |
 |=======================================================================
 
-### Message body
+== Message body
 
 The `in` message body will be set to the received Event.
 
-### Example usage
+== Example usage
 
 [source,xml]
 ------------------------------
diff --git a/components/camel-exec/src/main/docs/exec-component.adoc b/components/camel-exec/src/main/docs/exec-component.adoc
index 652640c..09d893a 100644
--- a/components/camel-exec/src/main/docs/exec-component.adoc
+++ b/components/camel-exec/src/main/docs/exec-component.adoc
@@ -6,7 +6,7 @@
 
 The `exec` component can be used to execute system commands.
 
-### Dependencies
+== Dependencies
 
 Maven users need to add the following dependency to their `pom.xml`
 
@@ -22,7 +22,7 @@ Maven users need to add the following dependency to their `pom.xml`
 where `${camel-version`} must be replaced by the actual version of Camel
 (2.3.0 or higher).
 
-### URI format
+== URI format
 
 [source,xml]
 ---------------------------
@@ -33,7 +33,7 @@ where `executable` is the name, or file path, of the system command that
 will be executed. If executable name is used (e.g. `exec:java`), the
 executable must in the system path.
 
-### URI options
+== URI options
 
 // component options: START
 The Exec component has no options.
@@ -103,7 +103,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Message headers
+== Message headers
 
 The supported headers are defined in
 `org.apache.camel.component.exec.ExecBinding`.
@@ -145,7 +145,7 @@ Camel Message Body with `stderr`. This behavior is disabled (`false`) by
 default.
 |=======================================================================
 
-### Message body
+== Message body
 
 If the `Exec` component receives an `in` message body that is
 convertible to `java.io.InputStream`, it is used to feed input to the
@@ -176,9 +176,9 @@ will return the content of the out file. If no out file is used, then
 this component will convert the stdout of the process to the target
 type. For more details, please refer to the <<exec-component,usage examples>> below.
 
-### Usage examples
+== Usage examples
 
-#### Executing word count (Linux)
+=== Executing word count (Linux)
 
 The example below executes `wc` (word count, Linux) to count the words
 in file `/usr/share/dict/words`. The word count (output) is written to
@@ -200,7 +200,7 @@ from("direct:exec")
 });
 --------------------------------------------------------------------------------------
 
-#### Executing `java`
+=== Executing `java`
 
 The example below executes `java` with 2 arguments: `-server` and
 `-version`, provided that `java` is in the system path.
@@ -220,7 +220,7 @@ from("direct:exec")
 .to("exec:c:/program files/jdk/bin/java?args=-server -version -Duser.name=Camel&workingDir=c:/temp")
 ----------------------------------------------------------------------------------------------------
 
-#### Executing Ant scripts
+=== Executing Ant scripts
 
 The following example executes http://ant.apache.org/[Apache Ant]
 (Windows only) with the build file `CamelExecBuildFile.xml`, provided
@@ -252,7 +252,7 @@ from("direct:exec")
   });
 -------------------------------------------------------------------------------------------------------
 
-#### Executing `echo` (Windows)
+=== Executing `echo` (Windows)
 
 Commands such as `echo` and `dir` can be executed only with the command
 interpreter of the operating system. This example shows how to execute
diff --git a/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc b/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
index 67b037e..b348614 100644
--- a/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
+++ b/components/camel-fastjson/src/main/docs/json-fastjson-dataformat.adoc
@@ -14,7 +14,7 @@ from("activemq:My.Queue").
   to("mqseries:Another.Queue");
 -------------------------------
 
-### Fastjson Options
+== Fastjson Options
 
 
 // dataformat options: START
@@ -93,7 +93,7 @@ The component supports 20 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Dependencies
+== Dependencies
 
 To use Fastjson in your camel routes you need to add the dependency
 on *camel-fastjson* which implements this data format.
diff --git a/components/camel-flatpack/src/main/docs/flatpack-component.adoc b/components/camel-flatpack/src/main/docs/flatpack-component.adoc
index 436a124..6636c72 100644
--- a/components/camel-flatpack/src/main/docs/flatpack-component.adoc
+++ b/components/camel-flatpack/src/main/docs/flatpack-component.adoc
@@ -23,7 +23,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------------------------
@@ -40,7 +40,7 @@ flatpack:someName[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### URI Options
+== URI Options
 
 // component options: START
 The Flatpack component has no options.
@@ -138,7 +138,7 @@ The component supports 12 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Examples
+== Examples
 
 * `flatpack:fixed:foo.pzmap.xml` creates a fixed-width endpoint using
 the `foo.pzmap.xml` file configuration.
@@ -147,7 +147,7 @@ the `foo.pzmap.xml` file configuration.
 * `flatpack:foo` creates a delimited endpoint called `foo` with no file
 configuration.
 
-### Message Headers
+== Message Headers
 
 Camel will store the following headers on the IN message:
 
@@ -159,7 +159,7 @@ Camel will store the following headers on the IN message:
 number of rows.
 |=======================================================================
 
-### Message Body
+== Message Body
 
 The component delivers the data in the IN message as a
 `org.apache.camel.component.flatpack.DataSetList` object that has
@@ -188,7 +188,7 @@ However, you can also always get it as a `List` (even for
   String firstName = row.get("FIRSTNAME");
 ---------------------------------------------------
 
-### Header and Trailer records
+== Header and Trailer records
 
 The header and trailer notions in Flatpack are supported. However, you
 *must* use fixed record IDs:
@@ -219,7 +219,7 @@ trailer. You can omit one or both of them if not needed.
     </RECORD>
 ---------------------------------------------------------------------------
 
-### Using the endpoint
+== Using the endpoint
 
 A common use case is sending a file to this endpoint for further
 processing in a separate route. For example:
@@ -242,7 +242,7 @@ processing in a separate route. For example:
 You can also convert the payload of each message created to a `Map` for
 easy Bean Integration
 
-### Flatpack DataFormat
+== Flatpack DataFormat
 
 The <<flatpack-component,Flatpack>> component ships with the Flatpack data
 format that can be used to format between fixed width or delimited text
@@ -260,7 +260,7 @@ Splitter.
 *Notice:* The Flatpack library does currently not support header and
 trailers for the marshal operation.
 
-### Options
+== Options
 
 The data format has the following options:
 
@@ -289,7 +289,7 @@ expected and ignores the extra characters.
 expected and ignores the extra characters.
 |=======================================================================
 
-### Usage
+== Usage
 
 To use the data format, simply instantiate an instance and invoke the
 marshal or unmarshal operation in the route builder:
@@ -324,7 +324,7 @@ in Java code from e.g. a processor. We marshal the data according to the
 Flatpack format and convert the result as a `String` object and store it
 on a JMS queue.
 
-### Dependencies
+== Dependencies
 
 To use Flatpack in your camel routes you need to add the a dependency on
 *camel-flatpack* which implements this data format.
diff --git a/components/camel-flatpack/src/main/docs/flatpack-dataformat.adoc b/components/camel-flatpack/src/main/docs/flatpack-dataformat.adoc
index d9c17e9..0f42ab5 100644
--- a/components/camel-flatpack/src/main/docs/flatpack-dataformat.adoc
+++ b/components/camel-flatpack/src/main/docs/flatpack-dataformat.adoc
@@ -20,7 +20,7 @@ Splitter.
 *Notice:* The Flatpack library does currently not support header and
 trailers for the marshal operation.
 
-### Options
+== Options
 
 // dataformat options: START
 The Flatpack dataformat supports 9 options, which are listed below.
@@ -80,7 +80,7 @@ The component supports 12 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Usage
+== Usage
 
 To use the data format, simply instantiate an instance and invoke the
 marshal or unmarshal operation in the route builder:
@@ -115,7 +115,7 @@ in Java code from e.g. a processor. We marshal the data according to the
 Flatpack format and convert the result as a `String` object and store it
 on a JMS queue.
 
-### Dependencies
+== Dependencies
 
 To use Flatpack in your camel routes you need to add the a dependency on
 *camel-flatpack* which implements this data format.
diff --git a/components/camel-flink/src/main/docs/flink-component.adoc b/components/camel-flink/src/main/docs/flink-component.adoc
index 468e590..8c04638 100644
--- a/components/camel-flink/src/main/docs/flink-component.adoc
+++ b/components/camel-flink/src/main/docs/flink-component.adoc
@@ -25,7 +25,7 @@ their `pom.xml` for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI Format
+== URI Format
 
 Currently, the Flink Component supports only Producers. One can create DataSet, DataStream jobs.
 
@@ -108,7 +108,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### FlinkComponent Options
+== FlinkComponent Options
 
 
 
@@ -133,7 +133,7 @@ The Apache Flink component supports 5 options, which are listed below.
 
 
 
-### Flink DataSet Callback
+== Flink DataSet Callback
 
 [source,java]
 -----------------------------------
@@ -152,7 +152,7 @@ public DataSetCallback<Long> dataSetCallback() {
 }
 -----------------------------------
 
-### Flink DataStream Callback
+== Flink DataStream Callback
 
 [source,java]
 ---------------------------
@@ -169,7 +169,7 @@ public VoidDataStreamCallback dataStreamCallback() {
 }
 ---------------------------
 
-### Camel-Flink Producer call
+== Camel-Flink Producer call
 
 [source,java]
 -----------------------------------
diff --git a/components/camel-fop/src/main/docs/fop-component.adoc b/components/camel-fop/src/main/docs/fop-component.adoc
index 7443642..15767b9 100644
--- a/components/camel-fop/src/main/docs/fop-component.adoc
+++ b/components/camel-fop/src/main/docs/fop-component.adoc
@@ -20,14 +20,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ----------------------------
 fop://outputFormat?[options]
 ----------------------------
 
-### Output Formats
+== Output Formats
 
 The primary output format is PDF but other output
 http://xmlgraphics.apache.org/fop/0.95/output.html[formats] are also
@@ -61,7 +61,7 @@ supported:
 The complete list of valid output formats can be found
 http://svn.apache.org/repos/asf/xmlgraphics/commons/trunk/src/java/org/apache/xmlgraphics/util/MimeConstants.java[here]
 
-### Endpoint Options
+== Endpoint Options
 
 // component options: START
 The FOP component has no options.
@@ -143,7 +143,7 @@ fopFactory
 Allows to use a custom configured or implementation of
 `org.apache.fop.apps.FopFactory`.
 
-### Message Operations
+== Message Operations
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -178,7 +178,7 @@ Allows to use a custom configured or implementation of
 |CamelFop.Render.keywords |  | Set of keywords applicable to this document
 |=======================================================================
 
-### Example
+== Example
 
 Below is an example route that renders PDFs from xml data and xslt
 template and saves the PDF files in target folder:
diff --git a/components/camel-freemarker/src/main/docs/freemarker-component.adoc b/components/camel-freemarker/src/main/docs/freemarker-component.adoc
index 4da0eb2..e99bda5 100644
--- a/components/camel-freemarker/src/main/docs/freemarker-component.adoc
+++ b/components/camel-freemarker/src/main/docs/freemarker-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 -------------------------------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------
@@ -35,7 +35,7 @@ file://folder/myfile.ftl[file://folder/myfile.ftl]).
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 
@@ -121,7 +121,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Headers
+== Headers
 
 Headers set during the FreeMarker evaluation are returned to the message
 and added as headers. This provides a mechanism for the FreeMarker
@@ -136,7 +136,7 @@ ${request.setHeader('fruit', 'Apple')}
 
 The header, `fruit`, is now accessible from the `message.out.headers`.
 
-### FreeMarker Context
+== FreeMarker Context
 
 Camel will provide exchange information in the FreeMarker context (just
 a `Map`). The `Exchange` is transferred as:
@@ -172,14 +172,14 @@ variableMap.put("exchange", exchange);
 exchange.getIn().setHeader("CamelFreemarkerDataModel", variableMap);
 --------------------------------------------------------------------
 
-### Hot reloading
+== Hot reloading
 
 The FreeMarker template resource is by default *not* hot reloadable for
 both file and classpath resources (expanded jar). If you set
 `contentCache=false`, then Camel will not cache the resource and hot
 reloading is thus enabled. This scenario can be used in development.
 
-### 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
@@ -198,7 +198,7 @@ configured. | >= 2.1
 |FreemarkerConstants.FREEMARKER_TEMPLATE |String |The template to use instead of the endpoint configured. | >= 2.1
 |=======================================================================
 
-### Samples
+== Samples
 
 For example you could use something like:
 
@@ -250,7 +250,7 @@ from("direct:in").
   to("freemarker:dummy");
 ---------------------------------------------------------------------------------------------
 
-### The Email Sample
+== The Email Sample
 
 In this sample we want to use FreeMarker templating for an order
 confirmation email. The email template is laid out in FreeMarker as:
diff --git a/components/camel-ftp/src/main/docs/ftps-component.adoc b/components/camel-ftp/src/main/docs/ftps-component.adoc
index fa0836e..76c43be 100644
--- a/components/camel-ftp/src/main/docs/ftps-component.adoc
+++ b/components/camel-ftp/src/main/docs/ftps-component.adoc
@@ -22,7 +22,7 @@ for this component:
 
 For more information you can look at <<ftp-component,FTP component>>
 
-### URI Options
+== URI Options
 
 The options below are exclusive for the FTPS component.
 
diff --git a/components/camel-ftp/src/main/docs/sftp-component.adoc b/components/camel-ftp/src/main/docs/sftp-component.adoc
index 8628744..8573a9c 100644
--- a/components/camel-ftp/src/main/docs/sftp-component.adoc
+++ b/components/camel-ftp/src/main/docs/sftp-component.adoc
@@ -22,7 +22,7 @@ for this component:
 
 For more information you can look at <<ftp-component,FTP component>>
 
-### URI Options
+== URI Options
 
 The options below are exclusive for the FTPS component.
 
diff --git a/components/camel-geocoder/src/main/docs/geocoder-component.adoc b/components/camel-geocoder/src/main/docs/geocoder-component.adoc
index 7dd447e..d1d9d0f 100644
--- a/components/camel-geocoder/src/main/docs/geocoder-component.adoc
+++ b/components/camel-geocoder/src/main/docs/geocoder-component.adoc
@@ -22,7 +22,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 --------------------------------------------
@@ -30,7 +30,7 @@ geocoder:address:name[?options]
 geocoder:latlng:latitude,longitude[?options]
 --------------------------------------------
 
-### Options
+== Options
 
 
 // component options: START
@@ -112,7 +112,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Exchange data format
+== Exchange data format
 
 Camel will deliver the body as a
 `com.google.code.geocoder.model.GeocodeResponse` type. +
@@ -123,7 +123,7 @@ If the option `headersOnly` is set to `true` then the message body is
 left as-is, and only headers will be added to the
 Exchange.
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="50%,50%",options="header",]
 |=======================================================================
@@ -156,7 +156,7 @@ Exchange.
 Notice not all headers may be provided depending on available data and
 mode in use (address vs latlng).
 
-### Samples
+== Samples
 
 In the example below we get the latitude and longitude for Paris, France
 
diff --git a/components/camel-git/src/main/docs/git-component.adoc b/components/camel-git/src/main/docs/git-component.adoc
index b5811e1..bcb9962 100644
--- a/components/camel-git/src/main/docs/git-component.adoc
+++ b/components/camel-git/src/main/docs/git-component.adoc
@@ -23,7 +23,7 @@ The *git:* component allows you to work with a generic Git repository. 
 git://localRepositoryPath[?options]
 -----------------------------------
 
-### URI Options
+== URI Options
 
 The producer allows to do operations on a specific repository. +
 The consumer allows consuming commits, tags and branches on a specific
@@ -109,7 +109,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,10%,10%,20%,50%",options="header",]
 |=======================================================================
@@ -131,7 +131,7 @@ The component supports 2 options, which are listed below.
 
 |=======================================================================
 
-### Producer Example
+== Producer Example
 
 Below is an example route of a producer that add a file test.java to a
 local repository, commit it with a specific message on master branch and
@@ -149,7 +149,7 @@ from("direct:start")
         .to("git:///tmp/testRepo?operation=pushTag&tagName=myTag&remoteName=origin")
 --------------------------------------------------------------------------------------------------------------------
 
-### Consumer Example
+== Consumer Example
 
 Below is an example route of a consumer that consumes commit:
 
diff --git a/components/camel-github/src/main/docs/github-component.adoc b/components/camel-github/src/main/docs/github-component.adoc
index 68be513..97eb2b2 100644
--- a/components/camel-github/src/main/docs/github-component.adoc
+++ b/components/camel-github/src/main/docs/github-component.adoc
@@ -34,14 +34,14 @@ for this component:
 </dependency>
 -----------------------------------------
 
-### URI format
+== URI format
 
 [source,text]
 ---------------------------
 github://endpoint[?options]
 ---------------------------
 
-### Mandatory Options:
+== Mandatory Options:
 
 Note that these can be configured directly through the endpoint.
 
@@ -123,7 +123,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Consumer Endpoints:
+== Consumer Endpoints:
 
 [width="100%",cols="20%,20%,60%",options="header",]
 |=======================================================================
@@ -140,7 +140,7 @@ request discussion) or org.eclipse.egit.github.core.CommitComment
 |commit |polling |org.eclipse.egit.github.core.RepositoryCommit
 |=======================================================================
 
-### Producer Endpoints:
+== Producer Endpoints:
 
 [width="100%",cols="20%,20%,60%",options="header",]
 |=======================================================================
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
index f3057f7..3570fba 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-component.adoc
@@ -31,7 +31,7 @@ for this component:
         
 ----------------------------------------------------------
 
-### 1. Google Calendar Options
+== 1. Google Calendar Options
 
 
 
@@ -141,7 +141,7 @@ The component supports 14 options, which are listed below.
 
 
 
-### URI Format
+== URI Format
 
 The GoogleCalendar Component uses the following URI format:
 
@@ -161,7 +161,7 @@ Endpoint prefix can be one of:
 * list
 * settings
 
-### 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
@@ -180,7 +180,7 @@ overrides message header, i.e. the endpoint option `inBody=option` would
 override a `CamelGoogleCalendar.option` header.
 
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can use
@@ -190,12 +190,12 @@ invocation. Consumer endpoints that return an array or collection will
 generate one exchange per element, and their routes will be executed
 once for each exchange.
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a `CamelGoogleCalendar.` prefix.
 
-### Message Body
+== Message Body
 
 All result message bodies utilize objects provided by the underlying
 APIs used by the GoogleCalendarComponent. Producer endpoints can specify
diff --git a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
index 8f4a1c3..b0e6ee0 100644
--- a/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
+++ b/components/camel-google-calendar/src/main/docs/google-calendar-stream-component.adoc
@@ -31,7 +31,7 @@ for this component:
 
 ------------------------------------------------------
 
-### URI Format
+== URI Format
 
 The Google Calendar Component uses the following URI format:
 
@@ -40,7 +40,7 @@ The Google Calendar Component uses the following URI format:
 
 --------------------------------------------------------
 
-### GoogleCalendarStreamComponent
+== GoogleCalendarStreamComponent
 
 
 // component options: START
@@ -159,7 +159,7 @@ The component supports 15 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Consumer
+== Consumer
 
 The consumer will poll by default with maxResults equals to 5.
 
diff --git a/components/camel-google-drive/src/main/docs/google-drive-component.adoc b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
index 9edbb35..bef3b5f 100644
--- a/components/camel-google-drive/src/main/docs/google-drive-component.adoc
+++ b/components/camel-google-drive/src/main/docs/google-drive-component.adoc
@@ -30,7 +30,7 @@ for this component:
         
 -------------------------------------------------------
 
-### URI Format
+== URI Format
 
 '''''
 
@@ -57,7 +57,7 @@ Endpoint prefix can be one of:
 * drive-replies
 * drive-revisions
 
-### GoogleDriveComponent
+== GoogleDriveComponent
 
 
 
@@ -164,7 +164,7 @@ The component supports 11 options, which are listed below.
 
 
 
-### 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
@@ -185,7 +185,7 @@ override a `CamelGoogleDrive.option` header.
 For more information on the endpoints and options see API documentation
 at: https://developers.google.com/drive/v2/reference/[https://developers.google.com/drive/v2/reference/]
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can use
@@ -195,12 +195,12 @@ invocation. Consumer endpoints that return an array or collection will
 generate one exchange per element, and their routes will be executed
 once for each exchange.
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a `CamelGoogleDrive.` prefix.
 
-### Message Body
+== Message Body
 
 All result message bodies utilize objects provided by the underlying
 APIs used by the GoogleDriveComponent. Producer endpoints can specify
diff --git a/components/camel-google-mail/src/main/docs/google-mail-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
index 70a6686..315d85b 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-component.adoc
@@ -31,7 +31,7 @@ for this component:
         
 ------------------------------------------------------
 
-### URI Format
+== URI Format
 
 The GoogleMail Component uses the following URI format:
 
@@ -50,7 +50,7 @@ Endpoint prefix can be one of:
 * threads
 * users
 
-### GoogleMailComponent
+== GoogleMailComponent
 
 
 
@@ -153,7 +153,7 @@ The component supports 10 options, which are listed below.
 
 
 
-### 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
@@ -174,7 +174,7 @@ override a `CamelGoogleMail.option` header.
 For more information on the endpoints and options see API documentation
 at: https://developers.google.com/gmail/api/v1/reference/[https://developers.google.com/gmail/api/v1/reference/]
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can use
@@ -184,12 +184,12 @@ invocation. Consumer endpoints that return an array or collection will
 generate one exchange per element, and their routes will be executed
 once for each exchange.
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a `CamelGoogleMail.` prefix.
 
-### Message Body
+== Message Body
 
 All result message bodies utilize objects provided by the underlying
 APIs used by the GoogleMailComponent. Producer endpoints can specify the
diff --git a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
index 60f5f4d..4b80631 100644
--- a/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
+++ b/components/camel-google-mail/src/main/docs/google-mail-stream-component.adoc
@@ -31,7 +31,7 @@ for this component:
 
 ------------------------------------------------------
 
-### URI Format
+== URI Format
 
 The GoogleMail Component uses the following URI format:
 
@@ -40,7 +40,7 @@ The GoogleMail Component uses the following URI format:
 
 --------------------------------------------------------
 
-### GoogleMailStreamComponent
+== GoogleMailStreamComponent
 
 
 // component options: START
@@ -155,7 +155,7 @@ The component supports 13 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Consumer
+== Consumer
 
 The consumer will poll by default with the query "is:unread" and maxResults equals to 10.
 
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
index b66883c..0d6e46a 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-component.adoc
@@ -31,7 +31,7 @@ for this component:
 
 ----------------------------------------------------------
 
-### URI Format
+== URI Format
 
 The GoogleSheets Component uses the following URI format:
 
@@ -45,7 +45,7 @@ Endpoint prefix can be one of:
 * spreadsheets
 * data
 
-### GoogleSheetsComponent
+== GoogleSheetsComponent
 
 
 
@@ -148,7 +148,7 @@ The component supports 10 options, which are listed below.
 
 
 
-### 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
@@ -169,7 +169,7 @@ override a `CamelGoogleSheets.option` header.
 For more information on the endpoints and options see API documentation
 at: https://developers.google.com/sheets/api/reference/rest/[https://developers.google.com/sheets/api/reference/rest/]
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can use
@@ -179,12 +179,12 @@ invocation. Consumer endpoints that return an array or collection will
 generate one exchange per element, and their routes will be executed
 once for each exchange.
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a `CamelGoogleSheets.` prefix.
 
-### Message Body
+== Message Body
 
 All result message bodies utilize objects provided by the underlying
 APIs used by the GoogleSheetsComponent. Producer endpoints can specify
diff --git a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
index bd81fc8..e1795ae 100644
--- a/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
+++ b/components/camel-google-sheets/src/main/docs/google-sheets-stream-component.adoc
@@ -31,7 +31,7 @@ for this component:
 
 ------------------------------------------------------
 
-### URI Format
+== URI Format
 
 The Google Sheets Component uses the following URI format:
 
@@ -40,7 +40,7 @@ The Google Sheets Component uses the following URI format:
 
 --------------------------------------------------------
 
-### GoogleSheetsStreamComponent
+== GoogleSheetsStreamComponent
 
 
 // component options: START
@@ -163,7 +163,7 @@ The component supports 17 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Consumer
+== Consumer
 
 The consumer will poll by default with maxResults equals to 5.
 
diff --git a/components/camel-gora/src/main/docs/gora-component.adoc b/components/camel-gora/src/main/docs/gora-component.adoc
index 0104211..8493cfb 100644
--- a/components/camel-gora/src/main/docs/gora-component.adoc
+++ b/components/camel-gora/src/main/docs/gora-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 ---------------------------------------------------------
 
-### Apache Gora Overview
+== Apache Gora Overview
 
 The http://gora.apache.org/[Apache Gora] open source framework provides
 an in-memory data model and persistence for big data. Gora supports
@@ -39,7 +39,7 @@ http://accumulo.apache.org/[Apache Accumulo],
 http://aws.amazon.com/dynamodb/[Amazon DynamoDB] and SQL databases such
 as http://hsqldb.org/[hsqldb], http://www.mysql.com/[MySQL] and more.
 
-### URI format
+== URI format
 
 [source,text]
 ---------------------------
@@ -62,7 +62,7 @@ _Java DSL_
 to("gora:foobar?keyClass=java.lang.Long&valueClass=org.apache.camel.component.gora.generated.Pageview&dataStoreClass=org.apache.gora.hbase.store.HBaseStore")
 -------------------------------------------------------------------------------------------------------------------------------------------------------------
 
-### Configuratiion
+== Configuratiion
 
 Using camel-gora needs some configuration. This mainly involve to
 configure the _AvroStore_ through the _gora.properties_ file and to
@@ -73,7 +73,7 @@ Extensive information for this configuration can be found in the apache
 http://gora.apache.org/current/index.html[gora documentation] and the
 http://gora.apache.org/current/gora-conf.html[gora-conf] page.
 
-### Options
+== Options
 
 
 // component options: START
@@ -164,7 +164,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Supported Gora Operations
+== Supported Gora Operations
 
 Supported operations include : *put*, *get*, *delete*, *getSchemaName*,
 *deleteSchema*, *createSchema*, *query*, *deleteByQuery*,
@@ -202,7 +202,7 @@ hold the objects._
 datastore._
 |=======================================================================
 
-### Gora Headers
+== Gora Headers
 
 [width="100%",cols="20%,80%",options="header",]
 |=======================================================================
@@ -213,7 +213,7 @@ datastore._
 |GoraKey | _Used in order to define the datum key for the operations need it._
 |=======================================================================
 
-### Usage examples
+== Usage examples
 
 *Create Schema* _(XML DSL)_:
 
@@ -285,7 +285,7 @@ The full usage examples in the form of integration tests can be found at
 https://github.com/ipolyzos/camel-gora-examples/[camel-gora-examples]
 repository.
 
-### More resources
+== More resources
 
 For more please information and in depth configuration refer to the
 http://gora.apache.org/current/overview.html[Apache Gora Documentation]
diff --git a/components/camel-grpc/src/main/docs/grpc-component.adoc b/components/camel-grpc/src/main/docs/grpc-component.adoc
index e601e29..3c7cba7 100644
--- a/components/camel-grpc/src/main/docs/grpc-component.adoc
+++ b/components/camel-grpc/src/main/docs/grpc-component.adoc
@@ -31,14 +31,14 @@ add following configuration property to the maven file
 <properties>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------
 grpc://service[?options]
 -------------------------------------
 
-### Endpoint Options
+== Endpoint Options
 
 // component options: START
 The gRPC component has no options.
@@ -127,7 +127,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Transport security and authentication support (available from *Camel 2.20*)
+== Transport security and authentication support (available from *Camel 2.20*)
 
 The following https://grpc.io/docs/guides/auth.html[authentication] mechanisms are built-in to gRPC and available in this component:
 
@@ -157,7 +157,7 @@ To enable these features the following component properties combinations must be
 TLS with OpenSSL is currently the recommended approach for using gRPC over TLS component.
 Using the JDK for ALPN is generally much slower and may not support the necessary ciphers for HTTP2. This function is not implemented in the component.
 
-### gRPC producer resource type mapping
+== gRPC producer resource type mapping
 
 The table below shows the types of objects in the message body, depending on the types (simple or stream) of incoming and outgoing parameters, as well as the invocation style (synchronous or asynchronous). Please note, that invocation of the procedures with incoming stream parameter in asynchronous style are not allowed.
 
@@ -177,7 +177,7 @@ The table below shows the types of objects in the message body, depending on the
 
 |=======================================================================
 
-### gRPC consumer headers (will be installed after the consumer invocation)
+== gRPC consumer headers (will be installed after the consumer invocation)
 
 [width="100%",cols="25%,50,25%",options="header",]
 |=======================================================================
@@ -189,7 +189,7 @@ The table below shows the types of objects in the message body, depending on the
 
 |=======================================================================
 
-### Examples
+== Examples
 
 Below is a simple synchronous method invoke with host and port parameters
 
@@ -250,7 +250,7 @@ from("direct:grpc-jwt")
 .to("grpc://localhost:1101/org.apache.camel.component.grpc.PingPong?method=pingSyncSync&synchronous=true&authenticationType=JWT&jwtSecret=supersecuredsecret");
 -------------------------------------------------------------------------------
 
-### Configuration
+== Configuration
 
 It's it is recommended to use Maven Protocol Buffers Plugin which calls Protocol Buffer Compiler (protoc) tool to generate Java source files from .proto (protocol buffer definition) files for the custom project. This plugin will generate procedures request and response classes, their builders and gRPC procedures stubs classes as well.
 
@@ -293,7 +293,7 @@ Insert gRPC and protobuf Java code generator plugin **<plugins>** tag of the pro
 </plugin>
 -------------------------------------------------------------------------
 
-### For more information, see these resources
+== For more information, see these resources
 
 http://www.grpc.io/[gRPC project site]
 
diff --git a/components/camel-gson/src/main/docs/json-gson-dataformat.adoc b/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
index c55b6bb..0eb6545 100644
--- a/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
+++ b/components/camel-gson/src/main/docs/json-gson-dataformat.adoc
@@ -14,7 +14,7 @@ from("activemq:My.Queue").
   to("mqseries:Another.Queue");
 -------------------------------
 
-### Gson Options
+== Gson Options
 
 
 // dataformat options: START
@@ -94,7 +94,7 @@ The component supports 20 options, which are listed below.
 
 
 
-### Dependencies
+== Dependencies
 
 To use Gson in your camel routes you need to add the dependency
 on *camel-gson* which implements this data format.
diff --git a/components/camel-guava-eventbus/src/main/docs/guava-eventbus-component.adoc b/components/camel-guava-eventbus/src/main/docs/guava-eventbus-component.adoc
index bdbd57c..1826d4a 100644
--- a/components/camel-guava-eventbus/src/main/docs/guava-eventbus-component.adoc
+++ b/components/camel-guava-eventbus/src/main/docs/guava-eventbus-component.adoc
@@ -29,7 +29,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 --------------------------------
@@ -40,7 +40,7 @@ Where *busName* represents the name of the
 `com.google.common.eventbus.EventBus` instance located in the Camel
 registry.
 
-### Options
+== Options
 
 
 
@@ -130,7 +130,7 @@ The component supports 4 options, which are listed below.
 
 
 
-### Usage
+== Usage
 
 Using `guava-eventbus` component on the consumer side of the route will
 capture messages sent to the Guava `EventBus` and forward them to the
@@ -172,7 +172,7 @@ eventBus.register(new Object(){
 });
 ----------------------------------------------------------------------
 
-### DeadEvent considerations
+== DeadEvent considerations
 
 Keep in mind that due to the limitations caused by the design of the
 Guava EventBus, you cannot specify event class to be received by the
@@ -221,7 +221,7 @@ follows.
 from("guava-eventbus:busName?listenerInterface=com.example.CustomListener").to("seda:queue");
 ---------------------------------------------------------------------------------------------
 
-### Consuming multiple type of events
+== Consuming multiple type of events
 
 In order to define multiple type of events to be consumed by Guava
 EventBus consumer use `listenerInterface` endpoint option, as listener
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-atomicvalue-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-atomicvalue-component.adoc
index 261293a..cd8e24d 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-atomicvalue-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-atomicvalue-component.adoc
@@ -10,7 +10,7 @@ An atomic number is an object that simply provides a grid wide number (long).
 *There is no consumer for this endpoint!*
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Atomic Number component supports 3 options, which are listed below.
@@ -97,7 +97,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### atomic number producer - to("hazelcast-atomicvalue:foo")
+== atomic number producer - to("hazelcast-atomicvalue:foo")
 
 The operations for this producer are:
 * setvalue (set the number with a given value)
@@ -115,7 +115,7 @@ Header Variables for the request message:
 |`CamelHazelcastOperationType` |`String` |valid values are: setvalue, get, increase, decrease, destroy 
 |=======================================================================
 
-#### Sample for *set*:
+=== Sample for *set*:
 
 Java DSL:
 
@@ -143,7 +143,7 @@ Spring DSL:
 Provide the value to set inside the message body (here the value is 10):
 `template.sendBody("direct:set", 10);`
 
-#### Sample for *get*:
+=== Sample for *get*:
 
 Java DSL:
 
@@ -171,7 +171,7 @@ Spring DSL:
 You can get the number with
 `long body = template.requestBody("direct:get", null, Long.class);`.
 
-#### Sample for *increment*:
+=== Sample for *increment*:
 
 Java DSL:
 
@@ -199,7 +199,7 @@ Spring DSL:
 The actual value (after increment) will be provided inside the message
 body.
 
-#### Sample for *decrement*:
+=== Sample for *decrement*:
 
 Java DSL:
 
@@ -227,7 +227,7 @@ Spring DSL:
 The actual value (after decrement) will be provided inside the message
 body.
 
-#### Sample for *destroy*
+=== Sample for *destroy*
 
 Java DSL:
 
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-instance-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-instance-component.adoc
index 2f12d54..6eb2c06 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-instance-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-instance-component.adoc
@@ -10,7 +10,7 @@ Hazelcast makes sense in one single "server node", but it's extremly powerful in
 *This endpoint provides no producer!*
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Instance component supports 3 options, which are listed below.
@@ -123,7 +123,7 @@ The component supports 26 options, which are listed below.
 
 
 
-### instance consumer - from("hazelcast-instance:foo")
+== instance consumer - from("hazelcast-instance:foo")
 
  The instance consumer fires if a new cache instance will join or leave the cluster.
  
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-list-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-list-component.adoc
index 7c1da17..8bf9f32 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-list-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-list-component.adoc
@@ -6,7 +6,7 @@
 
 The http://www.hazelcast.com/[Hazelcast] List component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed list.
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast List component supports 3 options, which are listed below.
@@ -98,7 +98,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### List producer – to(“hazelcast-list:foo”)
+== List producer – to(“hazelcast-list:foo”)
 
 The list producer provides 7 operations:
 * add
@@ -109,7 +109,7 @@ The list producer provides 7 operations:
 * removeAll
 * clear
 
-#### Sample for *add*:
+=== Sample for *add*:
 
 [source,java]
 ------------------------------------------------------------------------------------
@@ -118,7 +118,7 @@ from("direct:add")
 .toF("hazelcast-%sbar", HazelcastConstants.LIST_PREFIX);
 ------------------------------------------------------------------------------------
 
-#### Sample for *get*:
+=== Sample for *get*:
 
 [source,java]
 ------------------------------------------------------------------------------------
@@ -128,7 +128,7 @@ from("direct:get")
 .to("seda:out");
 ------------------------------------------------------------------------------------
 
-#### Sample for *setvalue*:
+=== Sample for *setvalue*:
 
 [source,java]
 -----------------------------------------------------------------------------------------
@@ -137,7 +137,7 @@ from("direct:set")
 .toF("hazelcast-%sbar", HazelcastConstants.LIST_PREFIX);
 -----------------------------------------------------------------------------------------
 
-#### Sample for *removevalue*:
+=== Sample for *removevalue*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -150,7 +150,7 @@ Note that *CamelHazelcastObjectIndex* header is used for indexing
 purpose.
 
 
-### List consumer – from(“hazelcast-list:foo”)
+== List consumer – from(“hazelcast-list:foo”)
 
 The list consumer provides 2 operations:
 * add
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-map-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-map-component.adoc
index 144162a..9285885 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-map-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-map-component.adoc
@@ -7,7 +7,7 @@
 The http://www.hazelcast.com/[Hazelcast] Map component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed map.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Map component supports 3 options, which are listed below.
@@ -100,7 +100,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### Map cache producer - to("hazelcast-map:foo")
+== Map cache producer - to("hazelcast-map:foo")
 
 If you want to store a value in a map you can use the map cache
 producer. 
@@ -151,7 +151,7 @@ You can call the samples with:
 template.sendBodyAndHeader("direct:[put|get|update|delete|query|evict]", "my-foo", HazelcastConstants.OBJECT_ID, "4711");
 -------------------------------------------------------------------------------------------------------------------
 
-#### Sample for *put*:
+=== Sample for *put*:
 
 Java DSL:
 
@@ -210,7 +210,7 @@ Spring DSL:
 -----------------------------------------------------------------------------------------------
 
 
-#### Sample for *get*:
+=== Sample for *get*:
 
 Java DSL:
 
@@ -237,7 +237,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *update*:
+=== Sample for *update*:
 
 Java DSL:
 
@@ -262,7 +262,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *delete*:
+=== Sample for *delete*:
 
 Java DSL:
 
@@ -287,7 +287,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *query*
+=== Sample for *query*
 
 Java DSL:
 
@@ -324,7 +324,7 @@ template.sendBodyAndHeader("direct:query", null, HazelcastConstants.QUERY, q1);
 -------------------------------------------------------------------------------
 
 
-### Map cache consumer - from("hazelcast-map:foo")
+== Map cache consumer - from("hazelcast-map:foo")
 
 Hazelcast provides event listeners on their data grid. If you want to be
 notified if a cache will be manipulated, you can use the map consumer.
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-multimap-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-multimap-component.adoc
index e6bc9b0..09b19d3 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-multimap-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-multimap-component.adoc
@@ -7,7 +7,7 @@
 The http://www.hazelcast.com/[Hazelcast] Multimap component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed multimap.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Multimap component supports 3 options, which are listed below.
@@ -101,7 +101,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### multimap cache producer - to("hazelcast-multimap:foo")
+== multimap cache producer - to("hazelcast-multimap:foo")
 
 A multimap is a cache where you can store n values to one key. The
 multimap producer provides 4 operations (put, get, removevalue, delete).
@@ -117,7 +117,7 @@ Header Variables for the request message:
 |`CamelHazelcastObjectId` |`String` |the object id to store / find your object inside the cache
 |=======================================================================
 
-#### Sample for *put*:
+=== Sample for *put*:
 
 Java DSL:
 
@@ -143,7 +143,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *removevalue*:
+=== Sample for *removevalue*:
 
 Java DSL:
 
@@ -174,7 +174,7 @@ inside the message body. If you have a multimap object
 \{`key: "4711" values: { "my-foo", "my-bar"`}} you have to put "my-foo"
 inside the message body to remove the "my-foo" value.
 
-#### Sample for *get*:
+=== Sample for *get*:
 
 Java DSL:
 
@@ -202,7 +202,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *delete*:
+=== Sample for *delete*:
 
 Java DSL:
 
@@ -235,7 +235,7 @@ you can call them in your test class with:
 template.sendBodyAndHeader("direct:[put|get|removevalue|delete]", "my-foo", HazelcastConstants.OBJECT_ID, "4711");
 ------------------------------------------------------------------------------------------------------------------
 
-### multimap cache consumer - from("hazelcast-multimap:foo")
+== multimap cache consumer - from("hazelcast-multimap:foo")
 
 For the multimap cache this component provides the same listeners /
 variables as for the map cache consumer (except the update and enviction
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-queue-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-queue-component.adoc
index 3a73023..2ad4aae 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-queue-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-queue-component.adoc
@@ -7,7 +7,7 @@
 The http://www.hazelcast.com/[Hazelcast] Queue component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed queue.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Queue component supports 3 options, which are listed below.
@@ -99,7 +99,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### Queue producer – to(“hazelcast-queue:foo”)
+== Queue producer – to(“hazelcast-queue:foo”)
 
 The queue producer provides 10 operations:
 * add
@@ -115,7 +115,7 @@ The queue producer provides 10 operations:
 * take
 * retain all
 
-#### Sample for *add*:
+=== Sample for *add*:
 
 [source,java]
 ------------------------------------------------------------------------------------
@@ -124,7 +124,7 @@ from("direct:add")
 .toF("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX);
 ------------------------------------------------------------------------------------
 
-#### Sample for *put*:
+=== Sample for *put*:
 
 [source,java]
 ------------------------------------------------------------------------------------
@@ -133,7 +133,7 @@ from("direct:put")
 .toF("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX);
 ------------------------------------------------------------------------------------
 
-#### Sample for *poll*:
+=== Sample for *poll*:
 
 [source,java]
 -------------------------------------------------------------------------------------
@@ -142,7 +142,7 @@ from("direct:poll")
 .toF("hazelcast:%sbar", HazelcastConstants.QUEUE_PREFIX);
 -------------------------------------------------------------------------------------
 
-#### Sample for *peek*:
+=== Sample for *peek*:
 
 [source,java]
 -------------------------------------------------------------------------------------
@@ -151,7 +151,7 @@ from("direct:peek")
 .toF("hazelcast:%sbar", HazelcastConstants.QUEUE_PREFIX);
 -------------------------------------------------------------------------------------
 
-#### Sample for *offer*:
+=== Sample for *offer*:
 
 [source,java]
 --------------------------------------------------------------------------------------
@@ -160,7 +160,7 @@ from("direct:offer")
 .toF("hazelcast:%sbar", HazelcastConstants.QUEUE_PREFIX);
 --------------------------------------------------------------------------------------
 
-#### Sample for *removevalue*:
+=== Sample for *removevalue*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -169,7 +169,7 @@ from("direct:removevalue")
 .toF("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX);
 --------------------------------------------------------------------------------------------
 
-#### Sample for *remaining capacity*:
+=== Sample for *remaining capacity*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -177,7 +177,7 @@ from("direct:remaining-capacity").setHeader(HazelcastConstants.OPERATION, consta
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-#### Sample for *remove all*:
+=== Sample for *remove all*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -185,7 +185,7 @@ from("direct:removeAll").setHeader(HazelcastConstants.OPERATION, constant(Hazelc
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-#### Sample for *remove if*:
+=== Sample for *remove if*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -193,7 +193,7 @@ from("direct:removeIf").setHeader(HazelcastConstants.OPERATION, constant(Hazelca
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-#### Sample for *drain to*:
+=== Sample for *drain to*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -201,7 +201,7 @@ from("direct:drainTo").setHeader(HazelcastConstants.OPERATION, constant(Hazelcas
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-#### Sample for *take*:
+=== Sample for *take*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -209,7 +209,7 @@ from("direct:take").setHeader(HazelcastConstants.OPERATION, constant(HazelcastOp
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-#### Sample for *retain all*:
+=== Sample for *retain all*:
 
 [source,java]
 --------------------------------------------------------------------------------------------
@@ -217,7 +217,7 @@ from("direct:retainAll").setHeader(HazelcastConstants.OPERATION, constant(Hazelc
 String.format("hazelcast-%sbar", HazelcastConstants.QUEUE_PREFIX));
 --------------------------------------------------------------------------------------------
 
-### Queue consumer – from(“hazelcast-queue:foo”)
+== Queue consumer – from(“hazelcast-queue:foo”)
 
 The queue consumer provides two different modes:
 
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-replicatedmap-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-replicatedmap-component.adoc
index 258e0c0..f52d2cd 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-replicatedmap-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-replicatedmap-component.adoc
@@ -8,7 +8,7 @@ The http://www.hazelcast.com/[Hazelcast] instance component is one of Camel Haze
 A replicated map is a weakly consistent, distributed key-value data structure with no data partition.
  
  
-### Options
+== Options
  
 // component options: START
 The Hazelcast Replicated Map component supports 3 options, which are listed below.
@@ -101,7 +101,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### replicatedmap cache producer
+== replicatedmap cache producer
 
 The replicatedmap producer provides 4 operations:
 * put
@@ -120,7 +120,7 @@ Header Variables for the request message:
 |`CamelHazelcastObjectId` |`String` | the object id to store / find your object inside the cache
 |=======================================================================
 
-#### Sample for *put*:
+=== Sample for *put*:
 
 Java DSL:
 
@@ -146,7 +146,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *get*:
+=== Sample for *get*:
 
 Java DSL:
 
@@ -174,7 +174,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *delete*:
+=== Sample for *delete*:
 
 Java DSL:
 
@@ -207,7 +207,7 @@ you can call them in your test class with:
 template.sendBodyAndHeader("direct:[put|get|delete|clear]", "my-foo", HazelcastConstants.OBJECT_ID, "4711");
 ------------------------------------------------------------------------------------------------------------
 
-### replicatedmap cache consumer
+== replicatedmap cache consumer
 
 For the multimap cache this component provides the same listeners /
 variables as for the map cache consumer (except the update and enviction
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-ringbuffer-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-ringbuffer-component.adoc
index b1d065a..5ea7225 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-ringbuffer-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-ringbuffer-component.adoc
@@ -9,7 +9,7 @@
 The http://www.hazelcast.com/[Hazelcast] ringbuffer component is one of Camel Hazelcast Components which allows you to access Hazelcast ringbuffer.
 Ringbuffer is a distributed data structure where the data is stored in a ring-like structure. You can think of it as a circular array with a certain capacity. 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Ringbuffer component supports 3 options, which are listed below.
@@ -97,7 +97,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### ringbuffer cache producer 
+== ringbuffer cache producer 
 
 The ringbuffer producer provides 5 operations:
 * add
@@ -117,7 +117,7 @@ Header Variables for the request message:
 |`CamelHazelcastObjectId` |`String` |the object id to store / find your object inside the cache
 |=======================================================================
 
-#### Sample for *put*:
+=== Sample for *put*:
 
 Java DSL:
 
@@ -143,7 +143,7 @@ Spring DSL:
 </route>
 -----------------------------------------------------------------------------------------------
 
-#### Sample for *readonce from head*:
+=== Sample for *readonce from head*:
 
 Java DSL:
 
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-seda-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-seda-component.adoc
index 181f5c0..72d21a1 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-seda-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-seda-component.adoc
@@ -8,7 +8,7 @@ The http://www.hazelcast.com/[Hazelcast] SEDA component is one of Camel Hazelcas
 SEDA component differs from the rest components provided. It implements a work-queue in order to support asynchronous SEDA architectures, similar to the core "SEDA" component.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast SEDA component supports 3 options, which are listed below.
@@ -100,7 +100,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### SEDA producer – to(“hazelcast-seda:foo”)
+== SEDA producer – to(“hazelcast-seda:foo”)
 
 The SEDA producer provides no operations. You only send data to the
 specified queue.
@@ -123,7 +123,7 @@ Spring DSL :
 </route>
 ----------------------------------
 
-### SEDA consumer – from(“hazelcast-seda:foo”)
+== SEDA consumer – from(“hazelcast-seda:foo”)
 
 The SEDA consumer provides no operations. You only retrieve data from
 the specified queue.
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-set-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-set-component.adoc
index 37c6fb8..d4fc047 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-set-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-set-component.adoc
@@ -7,7 +7,7 @@
 The http://www.hazelcast.com/[Hazelcast] Set component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed set.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Set component supports 3 options, which are listed below.
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast-topic-component.adoc b/components/camel-hazelcast/src/main/docs/hazelcast-topic-component.adoc
index f3b4c18..1d66af2 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast-topic-component.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast-topic-component.adoc
@@ -7,7 +7,7 @@
 The http://www.hazelcast.com/[Hazelcast] Topic component is one of Camel Hazelcast Components which allows you to access Hazelcast distributed topic.
 
 
-### Options
+== Options
 
 // component options: START
 The Hazelcast Topic component supports 3 options, which are listed below.
@@ -102,11 +102,11 @@ The component supports 8 options, which are listed below.
 
 
 
-### Topic producer – to(“hazelcast-topic:foo”)
+== Topic producer – to(“hazelcast-topic:foo”)
 
 The topic producer provides only one operation (publish).
 
-#### Sample for *publish*:
+=== Sample for *publish*:
 
 [source,java]
 ----------------------------------------------------------------------------------------
@@ -115,7 +115,7 @@ from("direct:add")
 .toF("hazelcast-%sbar", HazelcastConstants.PUBLISH_OPERATION);
 ----------------------------------------------------------------------------------------
 
-### Topic consumer – from(“hazelcast-topic:foo”)
+== Topic consumer – from(“hazelcast-topic:foo”)
 
 The topic consumer provides only one operation (received). This
 component is supposed to support multiple consumption as it's expected
diff --git a/components/camel-hazelcast/src/main/docs/hazelcast.adoc b/components/camel-hazelcast/src/main/docs/hazelcast.adoc
index 91d39ee..2bc5c60 100644
--- a/components/camel-hazelcast/src/main/docs/hazelcast.adoc
+++ b/components/camel-hazelcast/src/main/docs/hazelcast.adoc
@@ -1,4 +1,4 @@
-## Hazelcast Component
+= Hazelcast Component
 
 *Available as of Camel version 2.7*
 
@@ -29,7 +29,7 @@ for this component:
 ------------------------------------------------------------
 
 
-### Hazelcast components
+== Hazelcast components
 See followings for each component usage:
 * <<hazelcast-map-component,map>>
 * <<hazelcast-multimap-component,multimap>>
@@ -45,9 +45,9 @@ See followings for each component usage:
 
 
 
-### Using hazelcast reference
+== Using hazelcast reference
 
-#### By its name
+=== By its name
 
 [source,xml]
 --------------------------------------------------------------------------------------------------------
@@ -82,7 +82,7 @@ See followings for each component usage:
 </camelContext>
 --------------------------------------------------------------------------------------------------------
 
-#### By instance
+=== By instance
 
 [source,xml]
 ------------------------------------------------------------------------------
@@ -112,14 +112,14 @@ See followings for each component usage:
 </camelContext>
 ------------------------------------------------------------------------------
 
-### Publishing hazelcast instance as an OSGI service
+== Publishing hazelcast instance as an OSGI service
 
 If operating in an OSGI container and you would want to use one instance
 of hazelcast across all bundles in the same container. You can publish
 the instance as an OSGI service and bundles using the cache al need is
 to reference the service in the hazelcast endpoint.
 
-#### Bundle A create an instance and publishes it as an OSGI service
+=== Bundle A create an instance and publishes it as an OSGI service
 
  
 
@@ -137,7 +137,7 @@ to reference the service in the hazelcast endpoint.
 <service ref="hazelcastInstance" interface="com.hazelcast.core.HazelcastInstance" />
 --------------------------------------------------------------------------------------------------------
 
-#### Bundle B uses the instance
+=== Bundle B uses the instance
 
 [source,xml]
 --------------------------------------------------------------------------------------
diff --git a/components/camel-hbase/src/main/docs/hbase-component.adoc b/components/camel-hbase/src/main/docs/hbase-component.adoc
index 81d89c8..946be72 100644
--- a/components/camel-hbase/src/main/docs/hbase-component.adoc
+++ b/components/camel-hbase/src/main/docs/hbase-component.adoc
@@ -20,7 +20,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Apache HBase Overview
+== Apache HBase Overview
 
 HBase is an open-source, distributed, versioned, column-oriented store
 modeled after Google's Bigtable: A Distributed Storage System for
@@ -28,7 +28,7 @@ Structured Data. You can use HBase when you need random, realtime
 read/write access to your Big Data. More information at
 http://hbase.apache.org[Apache HBase].
 
-### Camel and HBase
+== Camel and HBase
 
 When using a datasotre inside a camel route, there is always the
 chalenge of specifying how the camel message will stored to the
@@ -57,7 +57,7 @@ Regardless of the mapping strategy camel-hbase will convert a message
 into an org.apache.camel.component.hbase.model.HBaseData object and use
 that object for its internal operations.
 
-### Configuring the component
+== Configuring the component
 
 The HBase component can be provided a custom HBaseConfiguration object
 as a property or it can create an HBase configuration object on its own
@@ -77,7 +77,7 @@ You can find more information about how to configure HBase clients at:
 http://archive.apache.org/dist/hbase/docs/client_dependencies.html[HBase
 client configuration and dependencies]
 
-### HBase Producer
+== HBase Producer
 
 As mentioned above camel provides produers endpoints for HBase. This
 allows you to store, delete, retrieve or query data from HBase using
@@ -97,7 +97,7 @@ The supported operations are:
 * Delete
 * Scan
 
-#### Supported URI options
+=== Supported URI options
 
 
 
@@ -197,7 +197,7 @@ The component supports 4 options, which are listed below.
 
 
 
-#### Put Operations.
+=== Put Operations.
 
 HBase is a column based store, which allows you to store data into a
 specific column of a specific row. Columns are grouped into families, so
@@ -261,7 +261,7 @@ headers or a combination of both. It is recommended to specify constants
 as part of the uri and dynamic values as headers. If something is
 defined both as header and as part of the uri, the header will be used.
 
-#### Get Operations.
+=== Get Operations.
 
 A Get Operation is an operation that is used to retrieve one or more
 values from a specified HBase row. To specify what are the values that
@@ -284,7 +284,7 @@ message headers.
 In the example above the result of the get operation will be stored as a
 header with name CamelHBaseValue.
 
-#### Delete Operations.
+=== Delete Operations.
 
 You can also you camel-hbase to perform HBase delete operation. The
 delete operation will remove an entire row. All that needs to be
@@ -302,7 +302,7 @@ specified is one or more rows as part of the message headers.
         </route>
 ----------------------------------------------------------------
 
-#### Scan Operations.
+=== Scan Operations.
 
 A scan operation is the equivalent of a query in HBase. You can use the
 scan operation to retrieve multiple rows. To specify what columns should
@@ -383,7 +383,7 @@ and will pass that model the ModelAwareColumnMatchingFilter. The
 filter will filter out any rows, that do not contain columns that match
 the model. It is like query by example.
 
-### HBase Consumer
+== HBase Consumer
 
 The Camel HBase Consumer, will perform repeated scan on the specified
 HBase table and will return the scan results as part of the message. You
@@ -409,7 +409,7 @@ specified fields and the scan results will populate the model object
 with values. Finally the mapping strategy will be used to map this model
 to the camel message.
 
-### HBase Idempotent repository
+== HBase Idempotent repository
 
 The camel-hbase component also provides an idempotent repository which
 can be used when you want to make sure that each message is processed
@@ -427,14 +427,14 @@ from("direct:in")
   .to("log:out);
 ------------------------------------------------------------------------------------------------------------------
 
-### HBase Mapping
+== HBase Mapping
 
 It was mentioned above that you the default mapping strategies are
 *header* and *body* mapping. +
  Below you can find some detailed examples of how each mapping strategy
 works.
 
-#### HBase Header mapping Examples
+=== HBase Header mapping Examples
 
 The header mapping is the default mapping. 
  To put the value "myvalue" into HBase row "myrow" and column
@@ -496,7 +496,7 @@ Please note that in order to avoid boilerplate headers that are
 considered constant for all messages, you can also specify them as part
 of the endpoint uri, as you will see below.
 
-#### Body mapping Examples
+=== Body mapping Examples
 
 In order to use the body mapping strategy you will have to specify the
 option mappingStrategy as part of the uri, for example:
@@ -529,7 +529,7 @@ myvalue to the column myfamily:myqualifier. +
 advantage it has over the header mapping strategy is that the HBaseData
 object can be easily converted to or from xml/json.
 
-### See also
+== See also
 
 * Polling Consumer
 * http://hbase.apache.org[Apache HBase]
\ No newline at end of file
diff --git a/components/camel-hdfs/src/main/docs/hdfs-component.adoc b/components/camel-hdfs/src/main/docs/hdfs-component.adoc
index 6fb1697..4746c41 100644
--- a/components/camel-hdfs/src/main/docs/hdfs-component.adoc
+++ b/components/camel-hdfs/src/main/docs/hdfs-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------
@@ -51,7 +51,7 @@ fileMode=Append to append each of the chunks together.
 
  
 
-### Options
+== Options
 
 
 
@@ -176,7 +176,7 @@ The component supports 3 options, which are listed below.
 
 
 
-#### KeyType and ValueType
+=== KeyType and ValueType
 
 * NULL it means that the key or the value is absent
 * BYTE for writing a byte, the java Byte class is mapped into a BYTE
@@ -192,7 +192,7 @@ BYTES is also used with everything else, for example, in Camel a file is
 sent around as an InputStream, int this case is written in a sequence
 file or a map file as a sequence of bytes.
 
-### Splitting Strategy
+== Splitting Strategy
 
 In the current version of Hadoop opening a file in append mode is
 disabled since it's not very reliable. So, for the moment, it's only
@@ -235,11 +235,11 @@ than 1 second or if more than 5 bytes have been written. So, running
 `hadoop fs -ls /tmp/simple-file` you'll see that multiple files have
 been created.
 
-### Message Headers
+== Message Headers
 
 The following headers are supported by this component:
 
-#### Producer only
+=== Producer only
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -251,7 +251,7 @@ Expression object. Only relevant when not using a
 split strategy.
 |=======================================================================
 
-### Controlling to close file stream
+== Controlling to close file stream
 
 *Available as of Camel 2.10.4*
 
@@ -266,7 +266,7 @@ the stream should be closed or not.
 Notice this does not apply if you use a split strategy, as there are
 various strategies that can control when the stream is closed.
 
-### Using this component in OSGi
+== Using this component in OSGi
 
 This component is fully functional in an OSGi environment, however, it
 requires some actions from the user. Hadoop uses the thread context
diff --git a/components/camel-hdfs2/src/main/docs/hdfs2-component.adoc b/components/camel-hdfs2/src/main/docs/hdfs2-component.adoc
index add2ccc..cf710ef 100644
--- a/components/camel-hdfs2/src/main/docs/hdfs2-component.adoc
+++ b/components/camel-hdfs2/src/main/docs/hdfs2-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ----------------------------------------
@@ -48,7 +48,7 @@ chunk using the chunkSize option. If you want to read from hdfs and
 write to a regular file using the file component, then you can use the
 fileMode=Append to append each of the chunks together.
 
-### Options
+== Options
 
 
 
@@ -172,7 +172,7 @@ The component supports 3 options, which are listed below.
 
 
 
-#### KeyType and ValueType
+=== KeyType and ValueType
 
 * NULL it means that the key or the value is absent
 * BYTE for writing a byte, the java Byte class is mapped into a BYTE
@@ -188,7 +188,7 @@ BYTES is also used with everything else, for example, in Camel a file is
 sent around as an InputStream, int this case is written in a sequence
 file or a map file as a sequence of bytes.
 
-### Splitting Strategy
+== Splitting Strategy
 
 In the current version of Hadoop opening a file in append mode is
 disabled since it's not very reliable. So, for the moment, it's only
@@ -228,11 +228,11 @@ than 1 second or if more than 5 bytes have been written. So, running
 `hadoop fs -ls /tmp/simple-file` you'll see that multiple files have
 been created.
 
-### Message Headers
+== Message Headers
 
 The following headers are supported by this component:
 
-#### Producer only
+=== Producer only
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -244,7 +244,7 @@ Expression object. Only relevant when not using a
 split strategy.
 |=======================================================================
 
-### Controlling to close file stream
+== Controlling to close file stream
 
 When using the <<hdfs2-component,HDFS2>> producer *without* a split
 strategy, then the file output stream is by default closed after the
@@ -257,7 +257,7 @@ the stream should be closed or not.
 Notice this does not apply if you use a split strategy, as there are
 various strategies that can control when the stream is closed.
 
-### Using this component in OSGi
+== Using this component in OSGi
 
 There are some quirks when running this component in an OSGi environment
 related to the mechanism Hadoop 2.x uses to discover different
@@ -272,7 +272,7 @@ be visible from the bundle class loader. A typical way to deal with it
 is to keep a copy of `core-default.xml` (and e.g., `hdfs-default.xml`)
 in your bundle root.
 
-#### Using this component with manually defined routes
+=== Using this component with manually defined routes
 
 There are two options:
 
@@ -293,7 +293,7 @@ FileSystem.get("hdfs://localhost:9000/", conf);
 ...
 ----------------------------------------------------------------------------------------------------
 
-#### Using this component with Blueprint container
+=== Using this component with Blueprint container
 
 Two options:
 
diff --git a/components/camel-headersmap/src/main/docs/headersmap.adoc b/components/camel-headersmap/src/main/docs/headersmap.adoc
index 8b9283f..e7d7f70 100644
--- a/components/camel-headersmap/src/main/docs/headersmap.adoc
+++ b/components/camel-headersmap/src/main/docs/headersmap.adoc
@@ -1,11 +1,11 @@
-## HeadersMap
+= HeadersMap
 
 *Available as of Camel 2.20*
 
 The camel-headersmap is a faster implementation of a case-insenstive map which can be plugged in
 and used by Camel at runtime to have slight faster performance in the Camel Message headers.
 
-### Auto detection from classpath
+== Auto detection from classpath
 
 To use this implementation all you need to do is to add the `camel-headersmap` dependency to the classpath,
 and Camel should auto-detect this on startup and log as follows:
@@ -16,7 +16,7 @@ Detected and using custom HeadersMapFactory: org.apache.camel.component.headersm
 
 For spring-boot there is a `camel-headersmap-starter` dependency you should use.
 
-### Manual enabling
+== Manual enabling
 
 If you use OSGi or the implementation is not added to the classpath, you need to enable this explict such:
 
diff --git a/components/camel-hessian/src/main/docs/hessian-dataformat.adoc b/components/camel-hessian/src/main/docs/hessian-dataformat.adoc
index 290366b..062bd4e 100644
--- a/components/camel-hessian/src/main/docs/hessian-dataformat.adoc
+++ b/components/camel-hessian/src/main/docs/hessian-dataformat.adoc
@@ -18,7 +18,7 @@ If you want to use Hessian Data Format from Maven, add the following dependency
 </dependency>
 ------------------------------------------------------------
 
-### Options
+== Options
 
 // dataformat options: START
 The Hessian dataformat supports 4 options, which are listed below.
@@ -66,7 +66,7 @@ The component supports 5 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Using the Hessian data format in Java DSL
+== Using the Hessian data format in Java DSL
 
 [source,java]
 --------------------------------------------------------------------------------
@@ -74,7 +74,7 @@ ND
         .marshal().hessian();
 --------------------------------------------------------------------------------
 
-### Using the Hessian data format in Spring DSL
+== Using the Hessian data format in Spring DSL
 
 [source,xml]
 --------------------------------------------------------------------------------
diff --git a/components/camel-hipchat/src/main/docs/hipchat-component.adoc b/components/camel-hipchat/src/main/docs/hipchat-component.adoc
index 7bfa441..220d9d4 100644
--- a/components/camel-hipchat/src/main/docs/hipchat-component.adoc
+++ b/components/camel-hipchat/src/main/docs/hipchat-component.adoc
@@ -14,7 +14,7 @@ https://www.hipchat.com/account/api[personal access token] that you can
 use to produce/consume messages.
 
 
-### URI Format
+== URI Format
 
 [source,java]
 -------------------------------
@@ -24,7 +24,7 @@ hipchat://[host][:port]?options
 You can append query options to the URI in the following format,
 ?options=value&option2=value&...
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -121,7 +121,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Scheduled Poll Consumer
+== Scheduled Poll Consumer
 
 This component implements the
 ScheduledPollConsumer. Only the last message
@@ -146,7 +146,7 @@ public void configure() throws Exception {
 }
 ---------------------------------------------------------------------------------
 
-#### Message headers set by the Hipchat consumer
+=== Message headers set by the Hipchat consumer
 
 [width="100%",cols="10%,10%,10%,70%",options="header",]
 |=======================================================================
@@ -163,7 +163,7 @@ Hipchat https://www.hipchat.com/docs/apiv2/method/view_recent_privatechat_histor
 The status of the API response received.
 |=======================================================================
 
-### Hipchat Producer
+== Hipchat Producer
 
 Producer can send messages to both Room's and User's simultaneously. The
 body of the exchange is sent as message. Sample usage is shown below.
@@ -180,7 +180,7 @@ Appropriate headers needs to be set.
  }
 ----------------------------------------------------------
 
-#### Message headers evaluated by the Hipchat producer
+=== Message headers evaluated by the Hipchat producer
 
 [width="100%",cols="10%,10%,10%,70%",options="header",]
 |=======================================================================
@@ -201,7 +201,7 @@ a user notification (change the tab color, play a sound, notify mobile
 phones, etc). *Default: 'false' (Room Only)*
 |=======================================================================
 
-#### Message headers set by the Hipchat producer
+=== Message headers set by the Hipchat producer
 
 [width="100%",cols="10%,10%,10%,70%",options="header",]
 |=======================================================================
@@ -214,7 +214,7 @@ The status of the API response received when message sent to the user.
 |HipchatFromUserResponseStatus |HipchatConstants.TO_ROOM_RESPONSE_STATUS |_http://hc.apache.org/httpcomponents-core-4.2.x/httpcore/apidocs/org/apache/http/StatusLine.html[StatusLine]_ |The status of the API response received when message sent to the room.
 |=======================================================================
 
-#### Configuring Http Client
+=== Configuring Http Client
 
 The HipChat component allow your own `HttpClient` configuration. This can be done by defining a reference for `CloseableHttpClient` in the http://camel.apache.org/registry.html[registry] (e.g. Spring Context) and then, set the parameter during the Endpoint definition, for example: `hipchat:http://api.hipchat.com?httpClient=#myHttpClient`.
 
@@ -232,7 +232,7 @@ CloseableHttpClient httpclient = HttpClients.custom()
 To see more information about Http Client configuration, please check the https://hc.apache.org/httpcomponents-client-ga/examples.html[official documentation].
  
 
-#### Dependencies
+=== Dependencies
 
 Maven users will need to add the following dependency to their pom.xml.
 
diff --git a/components/camel-hl7/src/main/docs/terser-language.adoc b/components/camel-hl7/src/main/docs/terser-language.adoc
index eece883..7f92e21 100644
--- a/components/camel-hl7/src/main/docs/terser-language.adoc
+++ b/components/camel-hl7/src/main/docs/terser-language.adoc
@@ -1,6 +1,6 @@
 [[terser-language]]
 = HL7 Terser Language
-### Terser language
+== Terser language
 *Available as of Camel version 2.11.0*
 *Available as of Camel version 2.11*
 
@@ -31,7 +31,7 @@ import static org.apache.camel.component.hl7.HL7.terser;
       .to("mock:test2");
 --------------------------------------------------------------------------------------------------
 
-### Terser Language options
+== Terser Language options
 
 // language options: START
 The HL7 Terser language supports 1 options, which are listed below.
diff --git a/components/camel-http4/src/main/docs/http4-component.adoc b/components/camel-http4/src/main/docs/http4-component.adoc
index 14a8fd6..bb06c76 100644
--- a/components/camel-http4/src/main/docs/http4-component.adoc
+++ b/components/camel-http4/src/main/docs/http4-component.adoc
@@ -28,7 +28,7 @@ Camel-http4 uses http://hc.apache.org/httpcomponents-client-ga/[Apache
 HttpClient 4.x] while camel-http uses
 http://hc.apache.org/httpclient-3.x/[Apache HttpClient 3.x].
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------------
@@ -47,7 +47,7 @@ Therefore it should never be used as input into your Camel Routes. To
 bind/expose an HTTP endpoint via a HTTP server as input to a Camel
 route, use the <<jetty-component,Jetty Component>> instead.
 
-### Http4 Component Options
+== Http4 Component Options
 
 
 
@@ -218,7 +218,7 @@ The component supports 19 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,20%,70%",options="header",]
 |=======================================================================
@@ -249,7 +249,7 @@ a content type, such as `text/html`.
 provide a content encoding, such as `gzip`.
 |=======================================================================
 
-### Message Body
+== Message Body
 
 Camel will store the HTTP response from the external server on the OUT
 body. All headers from the IN message will be copied to the OUT message,
@@ -259,7 +259,7 @@ HTTP response headers as well to the OUT message headers.
  
 
 
-### Using System Properties
+== Using System Properties
 
 When setting useSystemProperties to true, the HTTP Client will look for
 the following System Properties and it will use it:
@@ -281,7 +281,7 @@ the following System Properties and it will use it:
 * http.keepAlive
 * http.maxConnections
 
-### Response code
+== Response code
 
 Camel will handle according to the HTTP response code:
 
@@ -299,7 +299,7 @@ the `HttpOperationFailedException` from being thrown for failed response
 codes. This allows you to get any response from the remote server. +
 There is a sample below demonstrating this.
 
-### HttpOperationFailedException
+== HttpOperationFailedException
 
 This exception contains the following information:
 
@@ -309,7 +309,7 @@ This exception contains the following information:
 * Response body as a `java.lang.String`, if server provided a body as
 response
 
-### Which HTTP method will be used
+== Which HTTP method will be used
 
 The following algorithm is used to determine what HTTP method should be used: +
  1. Use method provided as endpoint configuration (`httpMethod`). +
@@ -319,7 +319,7 @@ The following algorithm is used to determine what HTTP method should be used: +
  5. `POST` if there is data to send (body is not `null`). +
  6. `GET` otherwise.
 
-### How to get access to HttpServletRequest and HttpServletResponse
+== How to get access to HttpServletRequest and HttpServletResponse
 
 You can get access to these two using the Camel type converter system
 using +
@@ -332,7 +332,7 @@ HttpServletRequest request = exchange.getIn().getBody(HttpServletRequest.class);
 HttpServletRequest response = exchange.getIn().getBody(HttpServletResponse.class);
 ----------------------------------------------------------------------------------
 
-### Configuring URI to call
+== Configuring URI to call
 
 You can set the HTTP producer's URI directly form the endpoint URI. In
 the route below, Camel will call out to the external server, `oldhost`,
@@ -371,7 +371,7 @@ endpoint is configured with http4://oldhost. +
 If the http4 endpoint is working in bridge mode, it will ignore the
 message header of `Exchange.HTTP_URI`.
 
-### Configuring URI Parameters
+== Configuring URI Parameters
 
 The *http* producer supports URI parameters to be sent to the HTTP
 server. The URI parameters can either be set directly on the endpoint
@@ -392,7 +392,7 @@ from("direct:start")
   .to("http4://oldhost");
 ---------------------------------------------------------------------
 
-### How to set the http method (GET/PATCH/POST/PUT/DELETE/HEAD/OPTIONS/TRACE) to the HTTP producer
+== How to set the http method (GET/PATCH/POST/PUT/DELETE/HEAD/OPTIONS/TRACE) to the HTTP producer
 
 *Using the http PATCH method*
 
@@ -432,7 +432,7 @@ And the equivalent Spring sample:
 </camelContext>
 ---------------------------------------------------------------------
 
-### Using client timeout - SO_TIMEOUT
+== Using client timeout - SO_TIMEOUT
 
 See the
 https://svn.apache.org/repos/asf/camel/trunk/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpSOTimeoutTest.java[HttpSOTimeoutTest]
@@ -442,7 +442,7 @@ unit test.
 https://github.com/apache/camel/blob/master/components/camel-http4/src/test/java/org/apache/camel/component/http4/HttpSOTimeoutTest.java[HttpSOTimeoutTest]
 unit test.
 
-### Configuring a Proxy
+== Configuring a Proxy
 
 The HTTP4 component provides a way to configure a proxy.
 
@@ -455,7 +455,7 @@ from("direct:start")
 There is also support for proxy authentication via the
 `proxyAuthUsername` and `proxyAuthPassword` options.
 
-#### Using proxy settings outside of URI
+=== Using proxy settings outside of URI
 
 To avoid System properties conflicts, you can set proxy configuration
 only from the CamelContext or URI. +
@@ -486,7 +486,7 @@ Properties and then the endpoint proxy options if provided. +
 Notice in *Camel 2.8* there is also a `http.proxyScheme` property you
 can set to explicit configure the scheme to use.
 
-### Configuring charset
+== Configuring charset
 
 If you are using `POST` to send data you can configure the `charset`
 using the `Exchange` property:
@@ -496,7 +496,7 @@ using the `Exchange` property:
 exchange.setProperty(Exchange.CHARSET_NAME, "ISO-8859-1");
 ----------------------------------------------------------
 
-#### Sample with scheduled poll
+=== Sample with scheduled poll
 
 This sample polls the Google homepage every 10 seconds and write the
 page to the file `message.html`:
@@ -509,7 +509,7 @@ from("timer://foo?fixedRate=true&delay=0&period=10000")
   .to("file:target/google");
 ------------------------------------------------------------
 
-#### URI Parameters from the endpoint URI
+=== URI Parameters from the endpoint URI
 
 In this sample we have the complete URI endpoint that is just what you
 would have typed in a web browser. Multiple URI parameters can of course
@@ -522,7 +522,7 @@ web browser. Camel does no tricks here.
 template.sendBody("http4://www.google.com/search?q=Camel", null);
 -----------------------------------------------------------------
 
-#### URI Parameters from the Message
+=== URI Parameters from the Message
 
 [source,java]
 ------------------------------------------------------------------
@@ -535,7 +535,7 @@ template.sendBody("http4://www.google.com/search", null, headers);
 In the header value above notice that it should *not* be prefixed with
 `?` and you can separate parameters as usual with the `&` char.
 
-#### Getting the Response Code
+=== Getting the Response Code
 
 You can get the HTTP response code from the HTTP4 component by getting
 the value from the Out message header with
@@ -552,19 +552,19 @@ Message out = exchange.getOut();
 int responseCode = out.getHeader(Exchange.HTTP_RESPONSE_CODE, Integer.class);
 ------------------------------------------------------------------------------------
 
-### Disabling Cookies
+== Disabling Cookies
 
 To disable cookies you can set the HTTP Client to ignore cookies by
 adding this URI option: +
  `httpClient.cookiePolicy=ignoreCookies`
 
-### Advanced Usage
+== Advanced Usage
 
 If you need more control over the HTTP producer you should use the
 `HttpComponent` where you can set various classes to give you custom
 behavior.
 
-#### Setting up SSL for HTTP Client
+=== Setting up SSL for HTTP Client
 
 [[HTTP4-UsingtheJSSEConfigurationUtility]]
 Using the JSSE Configuration Utility
diff --git a/components/camel-ibatis/src/main/docs/ibatis-component.adoc b/components/camel-ibatis/src/main/docs/ibatis-component.adoc
index 2805af3..81d9fb2 100644
--- a/components/camel-ibatis/src/main/docs/ibatis-component.adoc
+++ b/components/camel-ibatis/src/main/docs/ibatis-component.adoc
@@ -31,7 +31,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------
@@ -52,7 +52,7 @@ the root of the classpath and expected named as `SqlMapConfig.xml`. +
  In Camel 2.2 you can configure this on the iBatisComponent with the
 `setSqlMapConfig(String)` method.
 
-### Options
+== Options
 
 
 
@@ -138,7 +138,7 @@ with the following path and query parameters:
 
 
 
-### Message Headers
+== Message Headers
 
 Camel will populate the result message, either IN or OUT with a header
 with the operationName used:
@@ -154,7 +154,7 @@ instance an `INSERT` could return the auto-generated key, or number of
 rows etc.
 |=======================================================================
 
-### Message Body
+== Message Body
 
 The response from iBatis will only be set as body if it's a `SELECT`
 statement. That means, for example, for `INSERT` statements Camel will
@@ -162,7 +162,7 @@ not replace the body. This allows you to continue routing and keep the
 original body. The response from iBatis is always stored in the header
 with the key `CamelIBatisResult`.
 
-### Samples
+== Samples
 
 For example if you wish to consume beans from a JMS queue and insert
 them into a database you could do the following:
@@ -194,7 +194,7 @@ Where *insertAccount* is the iBatis ID in the SQL map file:
   </insert>
 ------------------------------------------------------------
 
-### Using StatementType for better control of IBatis
+== Using StatementType for better control of IBatis
 
 When routing to an iBatis endpoint you want more fine grained control so
 you can control whether the SQL statement to be executed is a `SELEECT`,
@@ -212,7 +212,7 @@ We can do the same for some of the other operations, such as
 And the same for `UPDATE`, where we can send an `Account` object as IN
 body to iBatis:
 
-#### Scheduled polling example
+=== Scheduled polling example
 
 Since this component does not support scheduled polling, you need to use
 another mechanism for triggering the scheduled polls, such as the
@@ -236,7 +236,7 @@ And the iBatis SQL map file used:
   </select>
 ----------------------------------------------------------------------------
 
-#### Using onConsume
+=== Using onConsume
 
 This component supports executing statements *after* data have been
 consumed and processed by Camel. This allows you to do post updates in
diff --git a/components/camel-ical/src/main/docs/ical-dataformat.adoc b/components/camel-ical/src/main/docs/ical-dataformat.adoc
index b284243..b52104d 100644
--- a/components/camel-ical/src/main/docs/ical-dataformat.adoc
+++ b/components/camel-ical/src/main/docs/ical-dataformat.adoc
@@ -28,7 +28,7 @@ END:VEVENT
 END:VCALENDAR
 ----------------------------------------------------------------------
 
-### Options
+== Options
 
 // dataformat options: START
 The iCal dataformat supports 2 options, which are listed below.
@@ -72,7 +72,7 @@ The component supports 3 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Basic Usage
+== Basic Usage
 
 To unmarshal and marshal the message shown above, your route will look
 like the following:
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 0ad13a1..cc2b5a3 100644
--- a/components/camel-ignite/src/main/docs/ignite-cache-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-cache-component.adoc
@@ -11,7 +11,7 @@ The cache value is always the body of the message, whereas the cache key is alwa
 
 Even if you configure a fixed operation in the endpoint URI, you can vary it per-exchange by setting the `IgniteConstants.IGNITE_CACHE_OPERATION` message header.
 
-### Options
+== Options
 
 // component options: START
 The Ignite Cache component supports 4 options, which are listed below.
@@ -104,7 +104,7 @@ The component supports 5 options, which are listed below.
 
 
 
-#### Headers used
+=== Headers used
 
 This endpoint uses the following headers:
 [width="100%",cols="1,1,1,4",options="header"]
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 9e74f17..2c6bcfa 100644
--- a/components/camel-ignite/src/main/docs/ignite-compute-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-compute-component.adoc
@@ -12,7 +12,7 @@ The host part of the endpoint URI is a symbolic endpoint ID, it is not used for
 
 The endpoint tries to run the object passed in the body of the IN message as the compute job. It expects different payload types depending on the execution type.
 
-### Options
+== Options
 
 // component options: START
 The Ignite Compute component supports 4 options, which are listed below.
@@ -97,7 +97,7 @@ The component supports 5 options, which are listed below.
 
 
 
-#### Expected payload types
+=== Expected payload types
 
 Each operation expects the indicated types:
 [width="100%",cols="1,4",options="header"]
@@ -112,7 +112,7 @@ Each operation expects the indicated types:
 | AFFINITY_RUN | IgniteRunnable.
 |=======================================================================
 
-#### Headers used
+=== Headers used
 
 This endpoint uses the following headers:
 [width="100%",cols="1,1,1,4",options="header"]
diff --git a/components/camel-ignite/src/main/docs/ignite-events-component.adoc b/components/camel-ignite/src/main/docs/ignite-events-component.adoc
index 62d0ada..7140b08 100644
--- a/components/camel-ignite/src/main/docs/ignite-events-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-events-component.adoc
@@ -9,7 +9,7 @@ The Ignite Events endpoint is one of camel-ignite endpoints which allows you to
 This endpoint only supports consumers.
 The Exchanges created by this consumer put the received Event object into the body of the IN message.
 
-### Options
+== Options
 
 // component options: START
 The Ignite Events component supports 4 options, which are listed below.
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 14ce8b9..757ba2e 100644
--- a/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-idgen-component.adoc
@@ -8,7 +8,7 @@ The Ignite ID Generator endpoint is one of camel-ignite endpoints which allows y
 
 This endpoint only supports producers.
 
-### Options
+== Options
 
 // component options: START
 The Ignite ID Generator component supports 4 options, which are listed below.
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 151b997..5ee5709 100644
--- a/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-messaging-component.adoc
@@ -8,7 +8,7 @@ The Ignite Messaging endpoint is one of camel-ignite endpoints which allows you
 
 This endpoint supports producers (to send messages) and consumers (to receive messages).
 
-### Options
+== Options
 
 // component options: START
 The Ignite Messaging component supports 4 options, which are listed below.
@@ -94,7 +94,7 @@ The component supports 5 options, which are listed below.
 
 
 
-#### Headers used
+=== Headers used
 
 This endpoint uses the following headers:
 [width="100%",cols="1,1,1,4",options="header"]
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 dc9c795..ea94975 100644
--- a/components/camel-ignite/src/main/docs/ignite-queue-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-queue-component.adoc
@@ -8,7 +8,7 @@ The Ignite Queue endpoint is one of camel-ignite endpoints which allows you to i
 
 This endpoint only supports producers.
 
-### Options
+== Options
 
 // component options: START
 The Ignite Queues component supports 4 options, which are listed below.
@@ -93,7 +93,7 @@ The component supports 5 options, which are listed below.
 
 
 
-#### Headers used
+=== Headers used
 
 This endpoint uses the following headers:
 [width="100%",cols="1,1,1,4",options="header"]
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 dc78d0c..55d3f6f 100644
--- a/components/camel-ignite/src/main/docs/ignite-set-component.adoc
+++ b/components/camel-ignite/src/main/docs/ignite-set-component.adoc
@@ -8,7 +8,7 @@ The Ignite Sets endpoint is one of camel-ignite endpoints which allows you to in
 
 This endpoint only supports producers.
 
-### Options
+== Options
 
 // component options: START
 The Ignite Sets component supports 4 options, which are listed below.
@@ -91,7 +91,7 @@ The component supports 5 options, which are listed below.
 
 
 
-#### Headers used
+=== Headers used
 
 This endpoint uses the following headers:
 [width="100%",cols="1,1,1,4",options="header"]
diff --git a/components/camel-infinispan/src/main/docs/infinispan-component.adoc b/components/camel-infinispan/src/main/docs/infinispan-component.adoc
index f69a309..4066778 100644
--- a/components/camel-infinispan/src/main/docs/infinispan-component.adoc
+++ b/components/camel-infinispan/src/main/docs/infinispan-component.adoc
@@ -24,14 +24,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------
 infinispan://cacheName?[options]
 -------------------------------
 
-### URI Options
+== URI Options
 
 The producer allows sending messages to a local infinispan cache
 configured in the registry, or to a remote cache using the HotRod
@@ -151,7 +151,7 @@ The component supports 21 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,10%,10%,10%,60%",options="header",]
 |=======================================================================
@@ -172,7 +172,7 @@ The component supports 21 options, which are listed below.
 |CamelInfinispanOperationResultHeader |null |String |Producer|*From Camel 2.20:* Store the operation result in a header instead of the message body
 |=======================================================================
 
-### Examples
+== Examples
 
 * Retrieve a specific key from the default cache using a custom cache container:
 +
@@ -224,7 +224,7 @@ from("direct:start")
     .to("infinispan?cacheContainerConfiguration=#cacheContainerConfiguration");
 ----
 
-### Using the Infinispan based idempotent repository
+== Using the Infinispan based idempotent repository
 
 In this section we will use the Infinispan based idempotent repository.
 
@@ -268,5 +268,5 @@ XML file as well:
 </camelContext>
 ----
 
-### Using the Infinispan based route policy
+== Using the Infinispan based route policy
 
diff --git a/components/camel-influxdb/src/main/docs/influxdb-component.adoc b/components/camel-influxdb/src/main/docs/influxdb-component.adoc
index d39bb9b..edb8aac 100644
--- a/components/camel-influxdb/src/main/docs/influxdb-component.adoc
+++ b/components/camel-influxdb/src/main/docs/influxdb-component.adoc
@@ -28,14 +28,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------
 influxdb://beanName?[options]
 -------------------------------
 
-### URI Options
+== URI Options
 
 The producer allows sending messages to a influxdb
 configured in the registry, using the native java driver.
@@ -114,7 +114,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,10%,10%,10%,60%",options="header",]
 |=======================================================================
@@ -123,7 +123,7 @@ The component supports 2 options, which are listed below.
 | | | | |
 |=======================================================================
 
-### Example
+== Example
 
 
 Below is an example route that stores a point into the db (taking the db name from the URI)
diff --git a/components/camel-ipfs/src/main/docs/ipfs-component.adoc b/components/camel-ipfs/src/main/docs/ipfs-component.adoc
index 0f1a56f..e9e6843 100644
--- a/components/camel-ipfs/src/main/docs/ipfs-component.adoc
+++ b/components/camel-ipfs/src/main/docs/ipfs-component.adoc
@@ -19,14 +19,14 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------
 ipfs://cmd?options
 ---------------------------------
 
-### Options
+== Options
 
 // component options: START
 The IPFS component has no options.
@@ -89,15 +89,15 @@ The component supports 2 options, which are listed below.
 |===
 // spring-boot-auto-configure options: END
 
-### Karaf support
+== Karaf support
 
 Actually this component is not supported in Karaf
 
-### Message Headers
+== Message Headers
 
 [TODO]
 
-### Samples
+== Samples
 
 In this sample we add a file to IPFS, get a file from IPFS and finally access the content of an IPFS file. 
 
diff --git a/components/camel-ironmq/src/main/docs/ironmq-component.adoc b/components/camel-ironmq/src/main/docs/ironmq-component.adoc
index 71193ce..d20900d 100644
--- a/components/camel-ironmq/src/main/docs/ironmq-component.adoc
+++ b/components/camel-ironmq/src/main/docs/ironmq-component.adoc
@@ -25,7 +25,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -33,7 +33,7 @@ for this component:
 -----------------------------
 Where **queueName** identifies the IronMQ queue you want to publish or consume messages from.
 
-### Options
+== Options
 
 
 
@@ -132,7 +132,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### IronMQComponent Options
+== IronMQComponent Options
 
 
 
@@ -145,10 +145,10 @@ The IronMQ component has no options.
 
 
 
-### Message Body
+== Message Body
 Should be either a String or a array of Strings. In the latter case the batch of strings will be send to IronMQ as one request, creating one message pr. element in the array.
 
-### Producer message headers
+== Producer message headers
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -157,7 +157,7 @@ Should be either a String or a array of Strings. In the latter case the batch of
 |CamelIronMQMessageId |String or io.iron.ironmq.Ids|The id of the IronMQ message as a String when sending a single message, or a Ids object when sending a array of strings.
 |=======================================================================
 
-### Consumer message headers
+== Consumer message headers
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -168,7 +168,7 @@ Should be either a String or a array of Strings. In the latter case the batch of
 |=======================================================================
 
 
-### Consumer example
+== Consumer example
 
 Consume 50 messages pr. poll from the queue 'testqueue' on aws eu, and save the messages to files.
 
@@ -178,7 +178,7 @@ from("ironmq:testqueue?ironMQCloud=https://mq-aws-eu-west-1-1.iron.io&projectId=
   .to("file:somefolder");
 --------------------------------------------------
 
-### Producer example
+== Producer example
 Dequeue from activemq jms and enqueue the messages on IronMQ.
 
 [source,java]
diff --git a/components/camel-jacksonxml/src/main/docs/jacksonxml-dataformat.adoc b/components/camel-jacksonxml/src/main/docs/jacksonxml-dataformat.adoc
index 36c9f80..6295745 100644
--- a/components/camel-jacksonxml/src/main/docs/jacksonxml-dataformat.adoc
+++ b/components/camel-jacksonxml/src/main/docs/jacksonxml-dataformat.adoc
@@ -29,7 +29,7 @@ from("activemq:My.Queue").
   to("mqseries:Another.Queue");
 -------------------------------
 
-### JacksonXML Options
+== JacksonXML Options
 
 
 
@@ -102,7 +102,7 @@ The component supports 16 options, which are listed below.
 ND
 
 
-#### Using Jackson XML in Spring DSL
+=== Using Jackson XML in Spring DSL
 
 When using Data Format in Spring DSL you need to
 declare the data formats first. This is done in the *DataFormats* XML
@@ -128,7 +128,7 @@ And then you can refer to this id in the route:
         </route>
 -------------------------------------
 
-### Excluding POJO fields from marshalling
+== Excluding POJO fields from marshalling
 
 When marshalling a POJO to XML you might want to exclude certain fields
 from the XML output. With Jackson you can
@@ -148,7 +148,7 @@ Note that the weight field is missing in the resulting XML:
 <pojo age="30" weight="70"/>
 ----------------------------
 
-### Include/Exclude fields using the `jsonView` attribute with `JacksonXML`DataFormat
+== Include/Exclude fields using the `jsonView` attribute with `JacksonXML`DataFormat
 
 As an example of using this attribute you can instead of:
 
@@ -178,7 +178,7 @@ And the same in XML DSL:
   </marshal>
 ---------------------------------------------------------------------------------------------------------------------------------------------------
 
-### Setting serialization include option
+== Setting serialization include option
 
 If you want to marshal a pojo to XML, and the pojo has some fields with
 null values. And you want to skip these null values, then you need to
@@ -211,7 +211,7 @@ Or from XML DSL you configure this as
     </dataFormats>
 ------------------------------------------------------
 
-### Unmarshalling from XML to POJO with dynamic class name
+== Unmarshalling from XML to POJO with dynamic class name
 
 If you use jackson to unmarshal XML to POJO, then you can now specify a
 header in the message that indicate which class name to unmarshal to. +
@@ -238,7 +238,7 @@ Or from XML DSL you configure this as
     </dataFormats>
 -------------------------------------------------------
 
-### Unmarshalling from XML to List<Map> or List<pojo>
+== Unmarshalling from XML to List<Map> or List<pojo>
 
 If you are using Jackson to unmarshal XML to a list of map/pojo, you can
 now specify this by setting `useList="true"` or use
@@ -274,7 +274,7 @@ And you can specify the pojo type also
     </dataFormats>
 -------------------------------------------------------------------------------
 
-### Using custom Jackson modules
+== Using custom Jackson modules
 
 You can use custom Jackson modules by specifying the class names of
 those using the moduleClassNames option as shown below.
@@ -306,7 +306,7 @@ to the module as shown below:
  Multiple modules can be specified separated by comma, such as
 moduleRefs="myJacksonModule,myOtherModule"
 
-### Enabling or disable features using Jackson
+== Enabling or disable features using Jackson
 
 Jackson has a number of features you can enable or disable, which its
 ObjectMapper uses. For example to disable failing on unknown properties
@@ -339,7 +339,7 @@ df.disableFeature(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
 df.disableFeature(DeserializationFeature.FAIL_ON_NULL_FOR_PRIMITIVES);
 ----------------------------------------------------------------------
 
-### Converting Maps to POJO using Jackson
+== Converting Maps to POJO using Jackson
 
 Jackson `ObjectMapper` can be used to convert maps to POJO objects.
 Jackson component comes with the data converter that can be used to
@@ -360,7 +360,7 @@ If there is a single `ObjectMapper` instance available in the Camel
 registry, it will used by the converter to perform the conversion.
 Otherwise the default mapper will be used.  
 
-### Formatted XML marshalling (pretty-printing)
+== Formatted XML marshalling (pretty-printing)
 
 Using the `prettyPrint` option one can output a well formatted XML while
 marshalling:
@@ -383,7 +383,7 @@ Please note that there are 5 different overloaded `jacksonxml()` DSL
 methods which support the `prettyPrint` option in combination with other
 settings for `unmarshalType`, `jsonView` etc. 
 
-### Dependencies
+== Dependencies
 
 To use Jackson XML in your camel routes you need to add the dependency
 on *camel-jacksonxml* which implements this data format.
diff --git a/components/camel-javaspace/src/main/docs/javaspace-component.adoc b/components/camel-javaspace/src/main/docs/javaspace-component.adoc
index bab46db..750ba70 100644
--- a/components/camel-javaspace/src/main/docs/javaspace-component.adoc
+++ b/components/camel-javaspace/src/main/docs/javaspace-component.adoc
@@ -36,7 +36,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------
@@ -46,7 +46,7 @@ javaspace:jini://host[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 // component options: START
@@ -124,9 +124,9 @@ The component supports 2 options, which are listed below.
 
 
 
-### Examples
+== Examples
 
-#### Sending and Receiving Entries
+=== Sending and Receiving Entries
 
 [source,java]
 --------------------------------------------------------------------------------------------------------
@@ -142,7 +142,7 @@ from("javaspace:jini://localhost?spaceName=mySpace&templateId=template&verb=take
 In this case the payload can be any object that inherits from the Jini
 `Entry` type.
 
-#### Sending and receiving serializable objects
+=== Sending and receiving serializable objects
 
 Using the preceding routes, it is also possible to send and receive any
 serializable object. The JavaSpace component detects that the payload is
@@ -150,7 +150,7 @@ not a Jini `Entry` and then it automatically wraps the payload with a
 Camel Jini `Entry`. In this way, a JavaSpace can be used as a generic
 transport mechanism.
 
-#### Using JavaSpace as a remote invocation transport
+=== Using JavaSpace as a remote invocation transport
 
 The JavaSpace component has been tailored to work in combination with
 the Camel bean component. It is therefore possible to call a remote POJO
diff --git a/components/camel-jaxb/src/main/docs/jaxb-dataformat.adoc b/components/camel-jaxb/src/main/docs/jaxb-dataformat.adoc
index 66aacbd..69bed0b 100644
--- a/components/camel-jaxb/src/main/docs/jaxb-dataformat.adoc
+++ b/components/camel-jaxb/src/main/docs/jaxb-dataformat.adoc
@@ -9,7 +9,7 @@ marshalling standard which is included in Java 6 to unmarshal an XML
 payload into Java objects or to marshal Java objects into an XML
 payload.
 
-### Options
+== Options
 
 // dataformat options: START
 The JAXB dataformat supports 18 options, which are listed below.
@@ -85,7 +85,7 @@ The component supports 19 options, which are listed below.
 // spring-boot-auto-configure options: END
 ND
 
-### Using the Java DSL
+== Using the Java DSL
 
 For example the following uses a named DataFormat of _jaxb_ which is
 configured with a number of Java package names to initialize the
@@ -111,7 +111,7 @@ from("activemq:My.Queue").
   to("mqseries:Another.Queue");
 -------------------------------
 
-### Using Spring XML
+== Using Spring XML
 
 The following example shows how to use JAXB to unmarshal using
 Spring configuring the jaxb data type
@@ -126,7 +126,7 @@ You can specify context path using `:` as separator, for example
 `com.mycompany:com.mycompany2`. Note that this is handled by JAXB
 implementation and might change if you use different vendor than RI.
 
-### Partial marshalling/unmarshalling
+== Partial marshalling/unmarshalling
 
 *This feature is new to Camel 2.2.0.* +
  JAXB 2 supports marshalling and unmarshalling XML tree fragments. By
@@ -155,7 +155,7 @@ note that you need to specify its value {[namespaceUri]}[localPart]
    ...
 --------------------------------------------------------------------------------------
 
-### Fragment
+== Fragment
 
 *This feature is new to Camel 2.8.0.* +
  JaxbDataFormat has new property fragment which can set the the
@@ -164,7 +164,7 @@ you don't want the JAXB Marshaller to generate the XML declaration, you
 can set this option to be true. The default value of this property is
 false.
 
-### Ignoring the NonXML Character
+== Ignoring the NonXML Character
 
 *This feature is new to Camel 2.2.0.* +
  JaxbDataFromat supports to ignore the
@@ -209,7 +209,7 @@ Camel's NonXML filtering:
 <jaxb filterNonXmlChars="true"  contextPath="org.apache.camel.foo.bar" xmlStreamWriterWrapper="#testXmlStreamWriterWrapper" />
 ------------------------------------------------------------------------------------------------------------------------------
 
-### Working with the ObjectFactory
+== Working with the ObjectFactory
 
 If you use XJC to create the java class from the schema, you will get an
 ObjectFactory for you JAXB context. Since the ObjectFactory uses
@@ -222,7 +222,7 @@ unmarshaled message body.  +
 body, you need to set the JaxbDataFormat object's ignoreJAXBElement
 property to be false.
 
-### Setting encoding
+== Setting encoding
 
 You can set the *encoding* option to use when marshalling. Its the
 `Marshaller.JAXB_ENCODING` encoding property on the JAXB Marshaller. +
@@ -233,7 +233,7 @@ property will overrule the encoding set on the JAXB data format.
 
 In this Spring DSL we have defined to use `iso-8859-1` as the encoding:
 
-### Controlling namespace prefix mapping
+== Controlling namespace prefix mapping
 
 *Available as of Camel 2.11*
 
@@ -271,7 +271,7 @@ with the id "myMap", which was what we defined above.
   </marshal>
 ----------------------------------------------------------------------------------------
 
-### Schema validation
+== Schema validation
 
 *Available as of Camel 2.11*
 
@@ -318,7 +318,7 @@ JaxbDataFormat jaxbDataFormat = new JaxbDataFormat();
 jaxbDataFormat.setSchemaFactory(thradSafeSchemaFactory);
 --------------------------------------------------------
 
-### Schema Location
+== Schema Location
 
 *Available as of Camel 2.14*
 
@@ -343,7 +343,7 @@ You can do the same using the XML DSL:
 </marshal>
 --------------------------------------------------------
 
-### Marshal data that is already XML
+== Marshal data that is already XML
 
 *Available as of Camel 2.14.1*
 
@@ -356,7 +356,7 @@ the JAXB marshaller only attempts to marshal JAXBElements
 (javax.xml.bind.JAXBIntrospector#isElement returns true). And in those
 situations the marshaller fallbacks to marshal the message body as-is.
 
-### Dependencies
+== Dependencies
 
 To use JAXB in your camel routes you need to add the a dependency on
 *camel-jaxb* which implements this data format.
diff --git a/components/camel-jbpm/src/main/docs/jbpm-component.adoc b/components/camel-jbpm/src/main/docs/jbpm-component.adoc
index e61d611..4abcfd5 100644
--- a/components/camel-jbpm/src/main/docs/jbpm-component.adoc
+++ b/components/camel-jbpm/src/main/docs/jbpm-component.adoc
@@ -21,7 +21,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------------------------------
 
-## Consumer
+== Consumer
 
 jBPM Consumer allows to attach routes to 
 
@@ -29,7 +29,7 @@ jBPM Consumer allows to attach routes to
 * TaskEventListners
 * CaseEventListeners
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------------
@@ -56,12 +56,12 @@ Consumers are configured via KieServerExtension that is a pluggable interface to
 jBPM with additional capabilities. It reacts to different life cycle phases of the KIE Server
 and by that is able to configure individual endpoints properly.
 
-### KJAR routes
+== KJAR routes
 
 Create file named `camel-routes.xml` in the root folder of your KJAR (src/main/resources) so it will be automatically 
 discovered and Camel Context for given KJAR will be created.
 
-### Global routes
+== Global routes
 
 Create file name `global-camel-routes` in the root of the class path of KIE Server. It will be automatically found and registered
 on every KJAR deployed to KIE Server.
@@ -92,7 +92,7 @@ Example camel-routes.xml file that can be placed in the KJAR
 ----
 
 
-### Use of jBPM Component in KIE Server
+== Use of jBPM Component in KIE Server
 
 To make use of camel-jbpm component in a KIE Server it is as simple as just adding two jars into KIE Server application
 
@@ -121,19 +121,19 @@ To make use of jBPM Consumer jBPM deployment descriptor must also define camel s
 These must be set in either server level of kjar deployment descriptor (use MVEL as resolver type) - see jbpm docs for more details about
 deployment descriptors.
 
-## Producer
+== Producer
 
 Producer is dedicated to interact with jBPM via kie-server-client that uses exposed REST api of 
 jBPM (KIE Server).
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------------
 jbpm::hostName[:port][/resourceUri][?options]
 ---------------------------------------------
 
-### URI Options
+== URI Options
 
 
 // component options: START
@@ -234,7 +234,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 [width="100%",cols="10%,10%,10%,70%",options="header",]
 |=======================================================================
@@ -282,7 +282,7 @@ org.infinispan.notifications.cachelistener.event.Event.Type
 |CamelJBPMStatusList |null |List<String> |The list of status to use when filtering tasks
 |=======================================================================
 
-### Example
+== Example
 
 Below is an example route that starts a business process with id
 evaluation. To run this example you need jBPM to run locally, easiest is to use single zip 
diff --git a/components/camel-jcache/src/main/docs/jcache-component.adoc b/components/camel-jcache/src/main/docs/jcache-component.adoc
index 3078e10..28a4370 100644
--- a/components/camel-jcache/src/main/docs/jcache-component.adoc
+++ b/components/camel-jcache/src/main/docs/jcache-component.adoc
@@ -6,14 +6,14 @@
 
 The jcache component enables you to perform caching operations using JSR107/JCache as cache implementation.
 
-### URI Format
+== URI Format
 
 [source,java]
 ----------------------------
 jcache:cacheName[?options]
 ----------------------------
 
-### URI Options
+== URI Options
 
 // endpoint options: START
 The JCache endpoint is configured using URI syntax:
diff --git a/components/camel-jclouds/src/main/docs/jclouds-component.adoc b/components/camel-jclouds/src/main/docs/jclouds-component.adoc
index c23b843..4d057a8 100644
--- a/components/camel-jclouds/src/main/docs/jclouds-component.adoc
+++ b/components/camel-jclouds/src/main/docs/jclouds-component.adoc
@@ -35,7 +35,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Configuring the component
+== Configuring the component
 
 The camel jclouds component will make use of multiple jclouds blobstores
 and compute services as long as they are passed to the component during
@@ -84,7 +84,7 @@ As you can see the component is capable of handling multiple blobstores
 and compute services. The actual implementation that will be used by
 each endpoint is specified by passing the provider inside the URI.
 
-### Jclouds Options
+== Jclouds Options
 
 [source,java]
 -----------------------------------------
@@ -98,7 +98,7 @@ target service (_e.g. aws-s3 or aws_ec2_).
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Blobstore URI Options
+== Blobstore URI Options
 
 
 
@@ -178,7 +178,7 @@ jclouds:blobstore:aws-s3?operation=CamelJcloudsGet&container=mycontainer&blobNam
 For producer endpoint you can override all of the above URI options by
 passing the appropriate headers to the message.
 
-#### Message Headers for blobstore
+=== Message Headers for blobstore
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -193,9 +193,9 @@ passing the appropriate headers to the message.
 |`CamelJcloudsBlobName` |The name of the blob.
 |=======================================================================
 
-### Blobstore Usage Samples
+== Blobstore Usage Samples
 
-#### Example 1: Putting to the blob
+=== Example 1: Putting to the blob
 
 This example will show you how you can store any message inside a blob
 using the jclouds component.
@@ -222,7 +222,7 @@ route.
 </route>
 --------------------------------------------------------------------------------------------
 
-#### Example 2: Getting/Reading from a blob
+=== Example 2: Getting/Reading from a blob
 
 This example will show you how you can read the contnet of a blob using
 the jclouds component.
@@ -249,7 +249,7 @@ route.
 </route>
 --------------------------------------------------------------------------------------------
 
-#### Example 3: Consuming a blob
+=== Example 3: Consuming a blob
 
 This example will consume all blob that are under the specified
 container. The generated exchange will contain the payload of the blob
@@ -279,12 +279,12 @@ You can achieve the same goal by using xml, as you can see below.
 jclouds:compute:aws-ec2?operation=CamelJcloudsCreateNode&imageId=AMI_XXXXX&locationId=eu-west-1&group=mygroup
 -------------------------------------------------------------------------------------------------------------
 
-### Compute Usage Samples
+== Compute Usage Samples
 
 Below are some examples that demonstrate the use of jclouds compute
 producer in java dsl and spring/blueprint xml.
 
-#### Example 1: Listing the available images.
+=== Example 1: Listing the available images.
 
 [source,java]
 --------------------------------------------
@@ -304,7 +304,7 @@ its body. You can also do the same using xml.
 </route>
 --------------------------------------------------------------------------
 
-#### Example 2: Create a new node.
+=== Example 2: Create a new node.
 
 [source,java]
 ---------------------------------------------
@@ -329,7 +329,7 @@ spring xml.
 </route>
 -------------------------------------------------------------------------------------------------------------------------
 
-#### Example 3: Run a shell script on running node.
+=== Example 3: Run a shell script on running node.
 
 [source,java]
 --------------------------------------------
@@ -362,7 +362,7 @@ Here is the same using spring xml.
 </route>
 ----------------------------------------------------------------------------------------------
 
-#### See also
+=== See also
 
 If you want to find out more about jclouds here is list of interesting
 resources 
diff --git a/components/camel-jcr/src/main/docs/jcr-component.adoc b/components/camel-jcr/src/main/docs/jcr-component.adoc
index ab7b55b..2d848b7 100644
--- a/components/camel-jcr/src/main/docs/jcr-component.adoc
+++ b/components/camel-jcr/src/main/docs/jcr-component.adoc
@@ -22,7 +22,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------
@@ -34,12 +34,12 @@ jcr://user:password@repository/path/to/node
 From *Camel 2.10* onwards you can use consumer as an EventListener in
 JCR or a producer to read a node by identifier.
 
-### Usage
+== Usage
 
 The `repository` element of the URI is used to look up the JCR
 `Repository` object in the Camel context registry.
 
-#### JCR Options
+=== JCR Options
 
 
 // component options: START
@@ -128,7 +128,7 @@ message headers in Camel versions earlier than 2.12.3. See
 https://issues.apache.org/jira/browse/CAMEL-7067[https://issues.apache.org/jira/browse/CAMEL-7067]
 for more details.
 
-### Example
+== Example
 
 The snippet below creates a node named `node` under the `/home/test`
 node in the content repository. One additional property is added to the
diff --git a/components/camel-jgroups-raft/src/main/docs/jgroups-raft-component.adoc b/components/camel-jgroups-raft/src/main/docs/jgroups-raft-component.adoc
index b94a1bd..9a42e17 100644
--- a/components/camel-jgroups-raft/src/main/docs/jgroups-raft-component.adoc
+++ b/components/camel-jgroups-raft/src/main/docs/jgroups-raft-component.adoc
@@ -20,7 +20,7 @@ for this component.
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -30,7 +30,7 @@ jgroups-raft:clusterName[?options]
 Where *clusterName* represents the name of the JGroups-raft cluster the
 component should connect to.
 
-### Options
+== Options
 
 // component options: START
 The JGroups raft component supports 5 options, which are listed below.
@@ -118,7 +118,7 @@ The component supports 11 options, which are listed below.
 |===
 // spring-boot-auto-configure options: END
 
-### Headers
+== Headers
 
 [width="100%",cols="10%,10%,10%,70%",options="header",]
 |=======================================================================
@@ -151,7 +151,7 @@ The component supports 11 options, which are listed below.
 |`JGROUPSRAFT_SET_TIMEUNIT` |`JGroupsRaftEndpoint.`HEADER_JGROUPSRAFT_SET_TIMEUNIT` |*2.24.0* | *Producer*: Timeunit to be used in set() operation.
 |=======================================================================
  
-### Usage
+== Usage
 
 Using `jgroups-raft` component with `enableRoleChangeEvents=true` on the consumer side of the route will capture
 change in JGrups-raft role and forward them to the Camel route.
@@ -174,9 +174,9 @@ to perform a setX() operation on the raftHandle associated with the endpoint..
 from("direct:start").to("jgroups-raft:clusterName");
 --------------------------------------------------
 
-### Examples
+== Examples
 
-#### Receive cluster view change notifications
+=== Receive cluster view change notifications
 
 The snippet below demonstrates how to create the consumer endpoint
 listening to the change role events. By default this option is off.
@@ -188,7 +188,7 @@ from("jgroups-raft:clusterName?enableRoleChangeEvents=true").to(mock:mockEndpoin
 ...
 ---------------------------------------------------------------------
 
-#### Keeping singleton route within the cluster
+=== Keeping singleton route within the cluster
 
 The snippet below demonstrates how to keep the singleton consumer route
 in the cluster of Camel Contexts. As soon as the master node dies, one
diff --git a/components/camel-jibx/src/main/docs/jibx-dataformat.adoc b/components/camel-jibx/src/main/docs/jibx-dataformat.adoc
index 16e0272..6c65051 100644
--- a/components/camel-jibx/src/main/docs/jibx-dataformat.adoc
+++ b/components/camel-jibx/src/main/docs/jibx-dataformat.adoc
@@ -28,7 +28,7 @@ from("mqseries:Another.Queue").
   to("activemq:My.Queue");
 -------------------------------------------
 
-### Options
+== Options
 
 // dataformat options: START
 The JiBX dataformat supports 3 options, which are listed below.
@@ -75,7 +75,7 @@ The component supports 4 options, which are listed below.
 ND
 
 
-### JiBX Spring DSL
+== JiBX Spring DSL
 
 JiBX data format is also supported by Camel Spring DSL.
 
@@ -105,7 +105,7 @@ JiBX data format is also supported by Camel Spring DSL.
 </camelContext>
 --------------------------------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 To use JiBX in your camel routes you need to add the a dependency on
 *camel-jibx* which implements this data format.
diff --git a/components/camel-jing/src/main/docs/jing-component.adoc b/components/camel-jing/src/main/docs/jing-component.adoc
index 85e24bb..57fc037 100644
--- a/components/camel-jing/src/main/docs/jing-component.adoc
+++ b/components/camel-jing/src/main/docs/jing-component.adoc
@@ -28,7 +28,7 @@ for this component:
 Note that the <<msv-component,MSV>> component can also support RelaxNG XML
 syntax.
 
-### URI format Camel 2.16
+== URI format Camel 2.16
 
 [source,java]
 ------------------------------
@@ -38,7 +38,7 @@ jing:someLocalOrRemoteResource
 From Camel 2.16 the component use jing as name, and you can use the
 option compactSyntax to turn on either RNG or RNC mode.
 
-### Options
+== Options
 
 
 // component options: START
@@ -108,7 +108,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### Example
+== Example
 
 The following
 http://svn.apache.org/repos/asf/camel/trunk/components/camel-jing/src/test/resources/org/apache/camel/component/validator/jing/rnc-context.xml[example]
diff --git a/components/camel-jira/src/main/docs/jira-component.adoc b/components/camel-jira/src/main/docs/jira-component.adoc
index b0e5f88..0ffde7f 100644
--- a/components/camel-jira/src/main/docs/jira-component.adoc
+++ b/components/camel-jira/src/main/docs/jira-component.adoc
@@ -34,14 +34,14 @@ for this component:
 </dependency>
 ---------------------------------------
 
-### URI format
+== URI format
 
 [source,text]
 -------------------------
 jira://endpoint[?options]
 -------------------------
 
-### JIRA Options
+== JIRA Options
 
 
 // component options: START
@@ -118,7 +118,7 @@ The component supports 2 options, which are listed below.
 
 
 
-### JQL:
+== JQL:
 
 The JQL URI option is used by both consumer endpoints.  Theoretically,
 items like "project key", etc. could be URI options themselves.
diff --git a/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc b/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
index a85018d..63fdc71 100644
--- a/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
+++ b/components/camel-johnzon/src/main/docs/json-johnzon-dataformat.adoc
@@ -14,7 +14,7 @@ from("activemq:My.Queue").
   to("mqseries:Another.Queue");
 -------------------------------
 
-### Johnzon Options
+== Johnzon Options
 
 
 
@@ -94,7 +94,7 @@ The component supports 20 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Dependencies
+== Dependencies
 
 To use Johnzon in your camel routes you need to add the dependency
 on *camel-johnzon* which implements this data format.
diff --git a/components/camel-jolt/src/main/docs/jolt-component.adoc b/components/camel-jolt/src/main/docs/jolt-component.adoc
index 78e88a5..e5b43b7 100644
--- a/components/camel-jolt/src/main/docs/jolt-component.adoc
+++ b/components/camel-jolt/src/main/docs/jolt-component.adoc
@@ -23,7 +23,7 @@ their `pom.xml` for this component:
 
  
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------
@@ -37,7 +37,7 @@ invoke; or the complete URL of the remote specification
 You can append query options to the URI in the following
 format, `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 
@@ -124,7 +124,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Samples
+== Samples
 
 For example you could use something like
 
diff --git a/components/camel-josql/src/main/docs/sql-language.adoc b/components/camel-josql/src/main/docs/sql-language.adoc
index 7465222..91b9c72 100644
--- a/components/camel-josql/src/main/docs/sql-language.adoc
+++ b/components/camel-josql/src/main/docs/sql-language.adoc
@@ -57,7 +57,7 @@ And the spring DSL:
    <to uri="queue:bar"/>
 --------------------------------------
 
-### Options
+== Options
 
 
 // language options: START
@@ -99,7 +99,7 @@ The component supports 2 options, which are listed below.
 |===
 // spring-boot-auto-configure options: END
 
-### Loading script from external resource
+== Loading script from external resource
 
 *Available as of Camel 2.11*
 
diff --git a/components/camel-jpa/src/main/docs/jpa-component.adoc b/components/camel-jpa/src/main/docs/jpa-component.adoc
index ff773f0..e06c10d 100644
--- a/components/camel-jpa/src/main/docs/jpa-component.adoc
+++ b/components/camel-jpa/src/main/docs/jpa-component.adoc
@@ -22,7 +22,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### Sending to the endpoint
+== Sending to the endpoint
 
 You can store a Java entity bean in a database by sending it to a JPA
 producer endpoint. The body of the _In_ message is assumed to be an
@@ -48,7 +48,7 @@ if you execute `UPDATE`/`DELETE` with `namedQuery` as camel don't look into the
 named query unlike `query` and `nativeQuery`.
 
 
-### Consuming from the endpoint
+== Consuming from the endpoint
 
 Consuming messages from a JPA consumer endpoint removes (or updates)
 entity beans in the database. This allows you to use a database table as
@@ -74,7 +74,7 @@ which will be invoked on your entity bean before it has been processed
 If you are consuming a lot (100K+) of rows and experience OutOfMemory
 problems you should set the maximumResults to sensible value.
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -90,7 +90,7 @@ For consuming, the _entityClassName_ is mandatory.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 
@@ -224,7 +224,7 @@ The component supports 6 options, which are listed below.
 
 
 
-### Message Headers
+== Message Headers
 
 Camel adds the following message headers to the exchange:
 
@@ -246,7 +246,7 @@ reason why the support for this header has been dropped.
 
 |=======================================================================
 
-### Configuring EntityManagerFactory
+== Configuring EntityManagerFactory
 
 Its strongly advised to configure the JPA component to use a specific
 `EntityManagerFactory` instance. If failed to do so each `JpaEndpoint`
@@ -269,7 +269,7 @@ you do not need to configure this on the `JpaComponent` as shown above.
 You only need to do so if there is ambiguity, in which case Camel will
 log a WARN.
 
-### Configuring TransactionManager
+== Configuring TransactionManager
 
 Since *Camel 2.3* the `JpaComponent` will auto lookup the
 `TransactionManager` from the Registry. If Camel
@@ -294,7 +294,7 @@ explicitly configure a JPA component that references the
 </bean>
 -------------------------------------------------------------------
 
-### Using a consumer with a named query
+== Using a consumer with a named query
 
 For consuming only selected entities, you can use the
 `consumer.namedQuery` URI query option. First, you have to define the
@@ -317,7 +317,7 @@ from("jpa://org.apache.camel.examples.MultiSteps?consumer.namedQuery=step1")
 .to("bean:myBusinessLogic");
 ----------------------------------------------------------------------------
 
-### Using a consumer with a query
+== Using a consumer with a query
 
 For consuming only selected entities, you can use the `consumer.query`
 URI query option. You only have to define the query option:
@@ -328,7 +328,7 @@ from("jpa://org.apache.camel.examples.MultiSteps?consumer.query=select o from or
 .to("bean:myBusinessLogic");
 ---------------------------------------------------------------------------------------------------------------------------------------
 
-### Using a consumer with a native query
+== Using a consumer with a native query
 
 For consuming only selected entities, you can use the
 `consumer.nativeQuery` URI query option. You only have to define the
@@ -344,7 +344,7 @@ If you use the native query option, you will receive an object array in
 the message body.
 
 
-### Using a producer with a named query
+== Using a producer with a named query
 
 For retrieving selected entities or execute bulk update/delete, you can use the
 `namedQuery` URI query option. First, you have to define the
@@ -370,7 +370,7 @@ from("direct:namedQuery")
 Note that you need to specify `useExecuteUpdate` option to `true` to execute `UPDATE`/`DELETE` statement
 as a named query.
 
-### Using a producer with a query
+== Using a producer with a query
 
 For retrieving selected entities or execute bulk update/delete, you can use the `query`
 URI query option. You only have to define the query option:
@@ -381,7 +381,7 @@ from("direct:query")
 .to("jpa://org.apache.camel.examples.MultiSteps?query=select o from org.apache.camel.examples.MultiSteps o where o.step = 1");
 ---------------------------------------------------------------------------------------------------------------------------------------
 
-### Using a producer with a native query
+== Using a producer with a native query
 
 For retrieving selected entities or execute bulk update/delete, you can use the
 `nativeQuery` URI query option. You only have to define the
@@ -396,12 +396,12 @@ from("direct:nativeQuery")
 If you use the native query option without specifying `resultClass`, you will receive an object array in
 the message body.
 
-### Example
+== Example
 
 See link:http://camel.apache.org/tracer-example.html[Tracer Example] for an example using
 <<jpa-component,JPA>> to store traced messages into a database.
 
-### Using the JPA-Based Idempotent Repository
+== Using the JPA-Based Idempotent Repository
 
 The Idempotent Consumer from the http://camel.apache.org/enterprise-integration-patterns.html[EIP patterns] is used to filter out duplicate messages. A JPA-based idempotent repository is provided.
 
diff --git a/components/camel-jsch/src/main/docs/scp-component.adoc b/components/camel-jsch/src/main/docs/scp-component.adoc
index b3d305c..4c10452 100644
--- a/components/camel-jsch/src/main/docs/scp-component.adoc
+++ b/components/camel-jsch/src/main/docs/scp-component.adoc
@@ -23,7 +23,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ---------------------------------------
@@ -37,7 +37,7 @@ The file name can be specified either in the <path> part of the URI or
 as a "CamelFileName" header on the message (`Exchange.FILE_NAME` if used
 in code).
 
-### Options
+== Options
 
 
 
@@ -147,7 +147,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Limitations
+== Limitations
 
 Currently camel-jsch only supports a
 http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/Producer.html[Producer]
diff --git a/components/camel-jt400/src/main/docs/jt400-component.adoc b/components/camel-jt400/src/main/docs/jt400-component.adoc
index fda11d7..3516c3d 100644
--- a/components/camel-jt400/src/main/docs/jt400-component.adoc
+++ b/components/camel-jt400/src/main/docs/jt400-component.adoc
@@ -20,7 +20,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ----------------------------------------------------------------------
@@ -37,7 +37,7 @@ jt400://user:password@system/QSYS.LIB/LIBRARY.LIB/program.PGM[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### JT400 options
+== JT400 options
 
 // component options: START
 The JT400 component supports 2 options, which are listed below.
@@ -145,7 +145,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Usage
+== Usage
 
 When configured as a consumer endpoint, the endpoint will poll a data
 queue on a remote system. For every entry on the data queue, a new
@@ -154,7 +154,7 @@ formatted either as a `String` or a `byte[]`, depending on the format.
 For a provider endpoint, the _In_ message body contents will be put on
 the data queue as either raw bytes or text.
 
-### Connection pool
+== Connection pool
 
 *Available as of Camel 2.10*
 
@@ -162,7 +162,7 @@ Connection pooling is in use from Camel 2.10 onwards. You can explicit
 configure a connection pool on the Jt400Component, or as an uri option
 on the endpoint.
 
-#### Remote program call (*Camel 2.7*)
+=== Remote program call (*Camel 2.7*)
 
 This endpoint expects the input to be either a String array or byte[]
 array (depending on format) and handles all the CCSID handling through
@@ -173,7 +173,7 @@ String array or byte[] array with the values as they were returned by
 the program (the input only parameters will contain the same data as the
 beginning of the invocation). This endpoint does not implement a provider endpoint!
 
-### Example
+== Example
 
 In the snippet below, the data for an exchange sent to the
 `direct:george` endpoint will be put in the data queue `PENNYLANE` in
@@ -192,7 +192,7 @@ public class Jt400RouteBuilder extends RouteBuilder {
 }
 -------------------------------------------------------------------------------------------------------
 
-#### Remote program call example (*Camel 2.7*)
+=== Remote program call example (*Camel 2.7*)
 
 In the snippet below, the data Exchange sent to the direct:work endpoint
 will contain three string that will be used as the arguments for the
@@ -210,7 +210,7 @@ public class Jt400RouteBuilder extends RouteBuilder {
 }
 ---------------------------------------------------------------------------------------------------------------------------------------------------------
 
-#### Writing to keyed data queues
+=== Writing to keyed data queues
 
 [source,java]
 ------------------------------------------------------------------------
@@ -218,7 +218,7 @@ from("jms:queue:input")
 .to("jt400://username:password@system/lib.lib/MSGINDQ.DTAQ?keyed=true");
 ------------------------------------------------------------------------
 
-#### Reading from keyed data queues
+=== Reading from keyed data queues
 
 [source,java]
 -------------------------------------------------------------------------------------------------------
diff --git a/components/camel-juel/src/main/docs/el-language.adoc b/components/camel-juel/src/main/docs/el-language.adoc
index b740073..4e893c2 100644
--- a/components/camel-juel/src/main/docs/el-language.adoc
+++ b/components/camel-juel/src/main/docs/el-language.adoc
@@ -47,7 +47,7 @@ Message Filter or as an
 Expression for a
 Recipient List
 
-### EL Options
+== EL Options
 
 
 
@@ -91,7 +91,7 @@ The component supports 2 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Variables
+== Variables
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -104,7 +104,7 @@ The component supports 2 options, which are listed below.
 |out |Message |the exchange.out message
 |=======================================================================
 
-### Samples
+== Samples
 
 You can use EL dot notation to invoke operations. If you for instance
 have a body that contains a POJO that has a `getFamiliyName` method then
@@ -115,7 +115,7 @@ you can construct the syntax as follows:
 "${in.body.familyName}"
 -----------------------
 
-### Dependencies
+== Dependencies
 
 To use EL in your camel routes you need to add the a dependency on
 *camel-juel* which implements the EL language.
diff --git a/components/camel-jxpath/src/main/docs/jxpath-language.adoc b/components/camel-jxpath/src/main/docs/jxpath-language.adoc
index 8322085..2916b8a 100644
--- a/components/camel-jxpath/src/main/docs/jxpath-language.adoc
+++ b/components/camel-jxpath/src/main/docs/jxpath-language.adoc
@@ -23,7 +23,7 @@ from("queue:foo").filter().
   to("queue:bar")
 ---------------------------
 
-### JXPath Options
+== JXPath Options
 
 
 // language options: START
@@ -70,7 +70,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### Variables
+== Variables
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -83,7 +83,7 @@ The component supports 3 options, which are listed below.
 |out |Message |the exchange.out message
 |=======================================================================
 
-### Options
+== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -97,7 +97,7 @@ http://commons.apache.org/proper/commons-jxpath//users-guide.html#Lenient_Mode[J
 Documentation] This option is by default false.
 |=======================================================================
 
-### Using XML configuration
+== Using XML configuration
 
 If you prefer to configure your routes in your Spring
 XML file then you can use JXPath expressions as follows
@@ -122,14 +122,14 @@ XML file then you can use JXPath expressions as follows
 </beans>
 ---------------------------------------------------------------------------------------------------------------
 
-### Examples
+== Examples
 
 Here is a simple
 http://svn.apache.org/repos/asf/camel/trunk/components/camel-jxpath/src/test/java/org/apache/camel/language/jxpath/JXPathFilterTest.java[example]
 using a JXPath expression as a predicate in a
 Message Filter
 
-### JXPath injection
+== JXPath injection
 
 You can use Bean Integration to invoke a
 method on a bean and use various languages such as JXPath to extract a
@@ -148,7 +148,7 @@ public class Foo {
 }
 ---------------------------------------------------------------------------------------------
 
-### Loading script from external resource
+== Loading script from external resource
 
 *Available as of Camel 2.11*
 
@@ -162,7 +162,7 @@ eg to refer to a file on the classpath you can do:
 .setHeader("myHeader").jxpath("resource:classpath:myjxpath.txt")
 ----------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 To use JXpath in your camel routes you need to add the a dependency on
 *camel-jxpath* which implements the JXpath language.
diff --git a/components/camel-kestrel/src/main/docs/kestrel-component.adoc b/components/camel-kestrel/src/main/docs/kestrel-component.adoc
index 84d2b0d..787ff17 100644
--- a/components/camel-kestrel/src/main/docs/kestrel-component.adoc
+++ b/components/camel-kestrel/src/main/docs/kestrel-component.adoc
@@ -14,7 +14,7 @@ WARNING: The kestrel project is inactive and the Camel team regard this
 components as deprecated.
 
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------
@@ -61,7 +61,7 @@ concurrently from a queue:
 kestrel://kserver03:22133/massive?concurrentConsumers=25&waitTimeMs=500
 -----------------------------------------------------------------------
 
-### Options
+== Options
 
 
 
@@ -154,7 +154,7 @@ The component supports 5 options, which are listed below.
 
 
 
-### Configuring the Kestrel component using Spring XML
+== Configuring the Kestrel component using Spring XML
 
 The simplest form of explicit configuration is as follows:
 
@@ -206,9 +206,9 @@ can set up a KestrelConfiguration POJO as follows:
 </beans>
 ---------------------------------------------------------------------------------------------------------------
 
-### Usage Examples
+== Usage Examples
 
-#### Example 1: Consuming
+=== Example 1: Consuming
 
 [source,java]
 -------------------------------------------------------------------------------
@@ -225,7 +225,7 @@ public class MyConsumer {
 }
 -------------------------------------------
 
-#### Example 2: Producing
+=== Example 2: Producing
 
 [source,java]
 ------------------------------------------------------------------------------
@@ -239,7 +239,7 @@ public class MyProducer {
 }
 ------------------------------------------------------------------------------
 
-#### Example 3: Spring XML Configuration
+=== Example 3: Spring XML Configuration
 
 [source,xml]
 ----------------------------------------------------------------------------------------
@@ -264,13 +264,13 @@ public class MyBean {
 }
 -------------------------------------------
 
-### Dependencies
+== Dependencies
 
 The Kestrel component has the following dependencies:
 
 * `spymemcached` 2.5 (or greater)
 
-#### spymemcached
+=== spymemcached
 
 You *must* have the `spymemcached` jar on your classpath. Here is a
 snippet you can use in your pom.xml:
diff --git a/components/camel-krati/src/main/docs/krati-component.adoc b/components/camel-krati/src/main/docs/krati-component.adoc
index 079bb0d..097060d 100644
--- a/components/camel-krati/src/main/docs/krati-component.adoc
+++ b/components/camel-krati/src/main/docs/krati-component.adoc
@@ -27,7 +27,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------
@@ -40,7 +40,7 @@ krati will use for its datastore.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Krati Options
+== Krati Options
 
 
 // component options: START
@@ -149,7 +149,7 @@ krati:/tmp/krati?operation=CamelKratiGet&initialCapacity=10000&keySerializer=#my
 For producer endpoint you can override all of the above URI options by
 passing the appropriate headers to the message.
 
-#### Message Headers for datastore
+=== Message Headers for datastore
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -163,9 +163,9 @@ CamelKratiDelete, CamelKratiDeleteAll
 |`CamelKratiValue` |The value.
 |=======================================================================
 
-### Usage Samples
+== Usage Samples
 
-#### Example 1: Putting to the datastore.
+=== Example 1: Putting to the datastore.
 
 This example will show you how you can store any message inside a
 datastore.
@@ -188,7 +188,7 @@ route.
         </route>
 ------------------------------------------------------------
 
-#### Example 2: Getting/Reading from a datastore
+=== Example 2: Getting/Reading from a datastore
 
 This example will show you how you can read the contnet of a datastore.
 
@@ -212,7 +212,7 @@ route.
 </route>
 -----------------------------------------------------------------------------
 
-#### Example 3: Consuming from a datastore
+=== Example 3: Consuming from a datastore
 
 This example will consume all items that are under the specified
 datastore.
@@ -233,7 +233,7 @@ You can achieve the same goal by using xml, as you can see below.
 </route>
 ------------------------------------------------------
 
-### Idempotent Repository
+== Idempotent Repository
 
 As already mentioned this component also offers and idemptonet
 repository which can be used for filtering out duplicate messages.
@@ -243,6 +243,6 @@ repository which can be used for filtering out duplicate messages.
 from("direct://in").idempotentConsumer(header("messageId"), new KratiIdempotentRepositroy("/tmp/idempotent").to("log://out");
 -----------------------------------------------------------------------------------------------------------------------------
 
-#### See also
+=== See also
 
 http://sna-projects.com/krati/[Krati Website]
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-config-maps-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-config-maps-component.adoc
index ae9c70f..5203c94 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-config-maps-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-config-maps-component.adoc
@@ -8,14 +8,14 @@ The *Kubernetes ConfigMap* component is one of <<kubernetes-component,Kubernete
 provides a producer to execute kubernetes ConfigMap operations.
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes ConfigMap component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes ConfigMap endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-deployments-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-deployments-component.adoc
index 068b823..1632606 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-deployments-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-deployments-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes secret operations.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Deployments component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Deployments endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-hpa-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-hpa-component.adoc
index fe5e243..8447424 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-hpa-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-hpa-component.adoc
@@ -10,14 +10,14 @@ hpa events.
  
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes HPA component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes HPA endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-job-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-job-component.adoc
index e311a63..2c0b847 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-job-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-job-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes job operations.
  
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Job component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Job endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-namespaces-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-namespaces-component.adoc
index 8b90975..e44fa99 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-namespaces-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-namespaces-component.adoc
@@ -10,14 +10,14 @@ kubernetes namespace events.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Namespaces component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Namespaces endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-nodes-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-nodes-component.adoc
index 8188487..d7d51c0 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-nodes-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-nodes-component.adoc
@@ -10,14 +10,14 @@ node events.
  
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Nodes component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Nodes endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-claims-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-claims-component.adoc
index 08fc9a1..439339b 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-claims-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-claims-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes persistent volume claim operations.
  
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Persistent Volume Claim component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Persistent Volume Claim endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-component.adoc
index 30240f5..ab35250 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-persistent-volumes-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes persistent volume operations.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Persistent Volume component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Persistent Volume endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-pods-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-pods-component.adoc
index faba69b..7abba2f 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-pods-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-pods-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes pod operations.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Pods component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Pods endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-replication-controllers-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-replication-controllers-component.adoc
index 2c545a7..c099ac7 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-replication-controllers-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-replication-controllers-component.adoc
@@ -10,14 +10,14 @@ consume kubernetes replication controller events.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Replication Controller component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Replication Controller endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-resources-quota-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-resources-quota-component.adoc
index 85684b4..932c131 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-resources-quota-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-resources-quota-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes resource quota operations.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Resources Quota component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Resources Quota endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-secrets-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-secrets-component.adoc
index b0faa5b..768fa2c 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-secrets-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-secrets-component.adoc
@@ -9,14 +9,14 @@ provides a producer to execute kubernetes secret operations.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Secrets component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Secrets endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-service-accounts-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-service-accounts-component.adoc
index 29b289b..59402c5 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-service-accounts-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-service-accounts-component.adoc
@@ -8,14 +8,14 @@ The *Kubernetes Service Account* component is one of <<kubernetes-component,Kub
 provides a producer to execute kubernetes Service Account operations.
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Service Account component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 // endpoint options: START
 The Kubernetes Service Account endpoint is configured using URI syntax:
 
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes-services-component.adoc b/components/camel-kubernetes/src/main/docs/kubernetes-services-component.adoc
index 96e5a51..399924e 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes-services-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes-services-component.adoc
@@ -10,14 +10,14 @@ service events.
 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Kubernetes Services component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Kubernetes Services endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/kubernetes.adoc b/components/camel-kubernetes/src/main/docs/kubernetes.adoc
index 0b1eb65..4679bd5 100644
--- a/components/camel-kubernetes/src/main/docs/kubernetes.adoc
+++ b/components/camel-kubernetes/src/main/docs/kubernetes.adoc
@@ -1,4 +1,4 @@
-## Kubernetes Components
+= Kubernetes Components
 
 *Available as of Camel version 2.17*
 
@@ -38,7 +38,7 @@ their `pom.xml` for this component:
 ------------------------------------------------------------
 
 
-### Headers
+== Headers
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=======================================================================
@@ -122,13 +122,13 @@ their `pom.xml` for this component:
 |=======================================================================
 
 
-### Usage
+== Usage
 
-#### Producer examples
+=== Producer examples
 
 Here we show some examples of producer using camel-kubernetes.
 
-#### Create a pod
+=== Create a pod
 
 [source,java]
 -------------------------------------------------------------
@@ -138,7 +138,7 @@ from("direct:createPod")
 
 By using the KubernetesConstants.KUBERNETES_POD_SPEC header you can specify your PodSpec and pass it to this operation.
 
-#### Delete a pod
+=== Delete a pod
 
 [source,java]
 -------------------------------------------------------------
diff --git a/components/camel-kubernetes/src/main/docs/openshift-build-configs-component.adoc b/components/camel-kubernetes/src/main/docs/openshift-build-configs-component.adoc
index e26fd1b..e2b1935 100644
--- a/components/camel-kubernetes/src/main/docs/openshift-build-configs-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/openshift-build-configs-component.adoc
@@ -8,14 +8,14 @@ The *OpenShift Build Config* component is one of link:kubernetes.html[Kubernete
 provides a producer to execute kubernetes build config operations. 
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Openshift Build Config component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Openshift Build Config endpoint is configured using URI syntax:
diff --git a/components/camel-kubernetes/src/main/docs/openshift-builds-component.adoc b/components/camel-kubernetes/src/main/docs/openshift-builds-component.adoc
index bcb0ccc..ea5ad54 100644
--- a/components/camel-kubernetes/src/main/docs/openshift-builds-component.adoc
+++ b/components/camel-kubernetes/src/main/docs/openshift-builds-component.adoc
@@ -8,14 +8,14 @@ The *Kubernetes Builds* component is one of <<kubernetes-component,Kubernetes C
 provides a producer to execute kubernetes build operations.
 
 
-### Component Options
+== Component Options
 
 // component options: START
 The Openshift Builds component has no options.
 // component options: END
 
 
-### Endpoint Options
+== Endpoint Options
 
 // endpoint options: START
 The Openshift Builds endpoint is configured using URI syntax:
diff --git a/components/camel-ldap/src/main/docs/ldap-component.adoc b/components/camel-ldap/src/main/docs/ldap-component.adoc
index 26ffb99..c2d2fd1 100644
--- a/components/camel-ldap/src/main/docs/ldap-component.adoc
+++ b/components/camel-ldap/src/main/docs/ldap-component.adoc
@@ -22,7 +22,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -----------------------------
@@ -38,7 +38,7 @@ the start of a route.
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 // component options: START
@@ -111,12 +111,12 @@ The component supports 2 options, which are listed below.
 
 
 
-### Result
+== Result
 
 The result is returned in the Out body as a
 `ArrayList<javax.naming.directory.SearchResult>` object.
 
-### DirContext
+== DirContext
 
 The URI, `ldap:ldapserver`, references a Spring bean with the ID,
 `ldapserver`. The `ldapserver` bean may be defined as follows:
@@ -144,7 +144,7 @@ or that the context supports concurrency. In the Spring framework,
 `prototype` scoped objects are instantiated each time they are looked
 up.
 
-### Samples
+== Samples
 
 Following on from the Spring configuration above, the code sample below
 sends an LDAP request to filter search a group for a member. The Common
@@ -183,7 +183,7 @@ if the LDAP entry has a Common Name, use a filter expression like:
 (cn=*)
 ------
 
-#### Binding using credentials
+=== Binding using credentials
 
 A Camel end user donated this sample code he used to bind to the ldap
 server using credentials.
@@ -228,7 +228,7 @@ System.out.println(out.getOut().getBody());
 context.stop();
 ---------------------------------------------------------------------------------------
 
-### Configuring SSL
+== Configuring SSL
 
 All required is to create a custom socket factory and reference it in
 the InitialDirContext bean - see below sample.
diff --git a/components/camel-linkedin/camel-linkedin-component/src/main/docs/linkedin-component.adoc b/components/camel-linkedin/camel-linkedin-component/src/main/docs/linkedin-component.adoc
index ad8f4c0..33ce09c 100644
--- a/components/camel-linkedin/camel-linkedin-component/src/main/docs/linkedin-component.adoc
+++ b/components/camel-linkedin/camel-linkedin-component/src/main/docs/linkedin-component.adoc
@@ -31,7 +31,7 @@ for this component:
     </dependency>
 -----------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 -------------------------------------------------
@@ -48,7 +48,7 @@ Endpoint prefix can be one of:
 * posts
 * search
 
-### LinkedInComponent
+== LinkedInComponent
 
 
 
@@ -155,7 +155,7 @@ The component supports 15 options, which are listed below.
 |===
 // spring-boot-auto-configure options: END
 
-### 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
@@ -177,7 +177,7 @@ For more information on the endpoints and options see LinkedIn REST API
 documentation
 at https://developer.linkedin.com/rest[https://developer.linkedin.com/rest]. 
 
-#### Endpoint prefix _comments_
+=== Endpoint prefix _comments_
 
 The following endpoints can be invoked with the prefix *comments* as
 follows:
@@ -208,7 +208,7 @@ URI Options for _comments_
 |fields |String
 |=======================================================================
 
-#### Endpoint prefix _companies_
+=== Endpoint prefix _companies_
 
 The following endpoints can be invoked with the prefix *companies* as
 follows:
@@ -313,7 +313,7 @@ matching endpoints.
 |updatecomment |org.apache.camel.component.linkedin.api.model.UpdateComment
 |=======================================================================
 
-#### Endpoint prefix _groups_
+=== Endpoint prefix _groups_
 
 The following endpoints can be invoked with the prefix *groups* as
 follows:
@@ -344,7 +344,7 @@ URI Options for _groups_
 |post |org.apache.camel.component.linkedin.api.model.Post
 |=======================================================================
 
-#### Endpoint prefix _jobs_
+=== Endpoint prefix _jobs_
 
 The following endpoints can be invoked with the prefix *jobs* as
 follows:
@@ -383,7 +383,7 @@ URI Options for _jobs_
 |partner_job_id |Long
 |=======================================================================
 
-#### Endpoint prefix _people_
+=== Endpoint prefix _people_
 
 The following endpoints can be invoked with the prefix *people* as
 follows:
@@ -537,7 +537,7 @@ if other options do not satisfy matching endpoints.
 |updatecomment |org.apache.camel.component.linkedin.api.model.UpdateComment
 |=======================================================================
 
-#### Endpoint prefix _posts_
+=== Endpoint prefix _posts_
 
 The following endpoints can be invoked with the prefix *posts* as
 follows:
@@ -595,7 +595,7 @@ options do not satisfy matching endpoints.
 |start |Long
 |=======================================================================
 
-#### Endpoint prefix _search_
+=== Endpoint prefix _search_
 
 The following endpoints can be invoked with the prefix *search* as
 follows:
@@ -675,7 +675,7 @@ satisfy matching endpoints.
 |title |String
 |=======================================================================
 
-### Consumer Endpoints
+== Consumer Endpoints
 
 Any of the producer endpoints can be used as a consumer endpoint.
 Consumer endpoints can
@@ -687,19 +687,19 @@ be executed once for each exchange. To change this behavior use the
 property *consumer.splitResults=true* to return a single exchange for
 the entire list or array. 
 
-### Message Headers
+== Message Headers
 
 Any URI option can be provided in a message header for producer
 endpoints with a *CamelLinkedIn.* prefix.
 
-### Message body
+== Message body
 
 All result message bodies utilize objects provided by the Camel LinkedIn
 API SDK, which is built using Apache CXF JAX-RS. Producer endpoints can
 specify the option name for incoming message body in the *inBody*
 endpoint parameter.
 
-### Use cases
+== Use cases
 
 The following route gets user's profile:
 
diff --git a/components/camel-lucene/src/main/docs/lucene-component.adoc b/components/camel-lucene/src/main/docs/lucene-component.adoc
index a65beac..7d6f72a 100644
--- a/components/camel-lucene/src/main/docs/lucene-component.adoc
+++ b/components/camel-lucene/src/main/docs/lucene-component.adoc
@@ -35,7 +35,7 @@ for this component:
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------------
@@ -46,7 +46,7 @@ lucene:searcherName:query[?options]
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Insert Options
+== Insert Options
 
 
 
@@ -144,9 +144,9 @@ The component supports 11 options, which are listed below.
 
 
 
-### Sending/Receiving Messages to/from the cache
+== Sending/Receiving Messages to/from the cache
 
-#### Message Headers
+=== Message Headers
 
 [width="100%",cols="10%,90%",options="header",]
 |=======================================================================
@@ -159,7 +159,7 @@ wildcards and phrases
 documentation when returning hit information.
 |=======================================================================
 
-#### Lucene Producers
+=== Lucene Producers
 
 This component supports 2 producer endpoints.
 
@@ -173,14 +173,14 @@ property name called 'QUERY'. The value of the header property 'QUERY'
 is a Lucene Query. For more details on how to create Lucene Queries
 check out http://lucene.apache.org/java/3_0_0/queryparsersyntax.html[http://lucene.apache.org/java/3_0_0/queryparsersyntax.html]
 
-#### Lucene Processor
+=== Lucene Processor
 
 There is a processor called LuceneQueryProcessor available to perform
 queries against lucene without the need to create a producer.
 
-### Lucene Usage Samples
+== Lucene Usage Samples
 
-#### Example 1: Creating a Lucene index
+=== Example 1: Creating a Lucene index
 
 [source,java]
 ------------------------------------------------------------------------------------
@@ -194,7 +194,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 ------------------------------------------------------------------------------------
 
-#### Example 2: Loading properties into the JNDI registry in the Camel Context
+=== Example 2: Loading properties into the JNDI registry in the Camel Context
 
 [source,java]
 -----------------------------------------------------------------
@@ -213,7 +213,7 @@ protected JndiRegistry createRegistry() throws Exception {
 CamelContext context = new DefaultCamelContext(createRegistry());
 -----------------------------------------------------------------
 
-#### Example 2: Performing searches using a Query Producer
+=== Example 2: Performing searches using a Query Producer
 
 [source,java]
 ----------------------------------------------------------------------------------------------------
@@ -244,7 +244,7 @@ RouteBuilder builder = new RouteBuilder() {
 };
 ----------------------------------------------------------------------------------------------------
 
-#### Example 3: Performing searches using a Query Processor
+=== Example 3: Performing searches using a Query Processor
 
 [source,java]
 -------------------------------------------------------------------------------------------------------
diff --git a/components/camel-lumberjack/src/main/docs/lumberjack-component.adoc b/components/camel-lumberjack/src/main/docs/lumberjack-component.adoc
index 4eae4dc..d1b6308 100644
--- a/components/camel-lumberjack/src/main/docs/lumberjack-component.adoc
+++ b/components/camel-lumberjack/src/main/docs/lumberjack-component.adoc
@@ -22,7 +22,7 @@ Maven users will need to add the following dependency to their `pom.xml` for thi
 </dependency>
 ------------------------------------------------------------
 
-### URI format
+== URI format
 
 [source,java]
 ------------------------------------
@@ -33,7 +33,7 @@ lumberjack:host:port
 You can append query options to the URI in the following format,
 `?option=value&option=value&...`
 
-### Options
+== Options
 
 
 
@@ -126,13 +126,13 @@ The component supports 4 options, which are listed below.
 
 
 
-### Result
+== Result
 
 The result body is a `Map<String, Object>` object.
 
-### Lumberjack Usage Samples
+== Lumberjack Usage Samples
 
-#### Example 1: Streaming the log messages
+=== Example 1: Streaming the log messages
 
 [source,java]
 ------------------------------------------------------------------------------------
diff --git a/components/camel-mail/src/main/docs/mime-multipart-dataformat.adoc b/components/camel-mail/src/main/docs/mime-multipart-dataformat.adoc
index 73a447a..d0695e7 100644
--- a/components/camel-mail/src/main/docs/mime-multipart-dataformat.adoc
+++ b/components/camel-mail/src/main/docs/mime-multipart-dataformat.adoc
@@ -42,7 +42,7 @@ empty message. Up to Camel version 2.17.1 this will happen all message
 bodies that do not contain a MIME multipart message regardless of body
 type and stream cache setting.
 
-### Options
+== Options
 
 // dataformat options: START
 The MIME Multipart dataformat supports 6 options, which are listed below.
@@ -61,7 +61,7 @@ The MIME Multipart dataformat supports 6 options, which are listed below.
 |===
 // dataformat options: END
 
-### Message Headers (marshal)
+== Message Headers (marshal)
 
 [width="100%",cols="20%,20%,60%",options="header",]
 |=======================================================================
@@ -85,7 +85,7 @@ body part. Furthermore the given charset is applied for text to binary
 conversions.
 |=======================================================================
 
-### Message Headers (unmarshal)
+== Message Headers (unmarshal)
 
 [width="100%",cols="20%,20%,60%",options="header",]
 |=======================================================================
@@ -105,7 +105,7 @@ from MIME endoding descriptor to Java encoding descriptor)
 MIME multipart. The header is removed afterwards
 |=======================================================================
 
-### Examples
+== Examples
 
 [source,java]
 -----------------------------------
@@ -180,7 +180,7 @@ Content-Disposition: attachment; filename="Attachment File Name"
 ------=_Part_0_1134128170.1447659361365
 ----------------------------------------------------------------
 
-### Dependencies
+== Dependencies
 
 To use MIME-Multipart in your Camel routes you need to add a dependency
 on *camel-mail* which implements this data format.
diff --git a/components/camel-master/src/main/docs/master-component.adoc b/components/camel-master/src/main/docs/master-component.adoc
index f3bdc13..ce4816c 100644
--- a/components/camel-master/src/main/docs/master-component.adoc
+++ b/components/camel-master/src/main/docs/master-component.adoc
@@ -10,7 +10,7 @@ with automatic failover if that JVM dies.
 This can be very useful if you need to consume from some legacy back end which either doesn't support concurrent
 consumption or due to commercial or stability reasons you can only have a single connection at any point in time.
 
-### Using the master endpoint
+== Using the master endpoint
 
 Just prefix any camel endpoint with **master:someName:** where _someName_ is a logical name and is
 used to acquire the master lock. e.g.
@@ -22,7 +22,7 @@ The above simulates the [Exclusive Consumers](http://activemq.apache.org/exclusi
 ActiveMQ; but on any third party JMS provider which maybe doesn't support exclusive consumers.
 
 
-### URI format
+== URI format
 
 [source]
 ----
@@ -32,7 +32,7 @@ master:namespace:endpoint[?options]
 Where endpoint is any Camel endpoint you want to run in master/slave mode.
 
 
-### Options
+== Options
 
 // component options: START
 The Master component supports 3 options, which are listed below.
@@ -111,7 +111,7 @@ The component supports 4 options, which are listed below.
 // spring-boot-auto-configure options: END
 
 
-### Example
+== Example
 
 You can protect a clustered Camel application to only consume files from one active node.
 
@@ -180,7 +180,7 @@ camel.component.zookeeper.cluster.service.base-path = /camel/cluster
 camel.component.zookeeper.cluster.service.nodes     = myzk:2181
 ----
 
-### Implementations
+== Implementations
 
 Camel provide the following ClusterService implementations:
 
diff --git a/components/camel-metrics/src/main/docs/metrics-component.adoc b/components/camel-metrics/src/main/docs/metrics-component.adoc
index f75914b..bdf775b 100644
--- a/components/camel-metrics/src/main/docs/metrics-component.adoc
+++ b/components/camel-metrics/src/main/docs/metrics-component.adoc
@@ -12,7 +12,7 @@ ifdef::env-github[]
 :warning-caption: :warning:
 endif::[]
 
-### Metrics Component
+== Metrics Component
 
 The **metrics:** component allows to collect various metrics directly
 from Camel routes. Supported metric types
@@ -37,14 +37,14 @@ for this component:
 </dependency>
 ----
 
-### URI format
+== URI format
 
 [source]
 ----
 metrics:[ meter | counter | histogram | timer | gauge ]:metricname[?options]
 ----
 
-### Options
+== Options
 
 // component options: START
 The Metrics component supports 2 options, which are listed below.
@@ -127,7 +127,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### [[MetricsComponent-registry]]Metric Registry
+== [[MetricsComponent-registry]]Metric Registry
 
 Camel Metrics component uses by default a `MetricRegistry` instance with
 a `Slf4jReporter` that has a 60 second reporting interval.
@@ -184,7 +184,7 @@ class MyBean extends RouteBuilder {
 }
 ----
 
-### Usage
+== Usage
 
 Each metric has type and name. Supported types are
 link:#MetricsComponent-counter[counter],
@@ -192,7 +192,7 @@ link:#MetricsComponent-histogram[histogram], link:#MetricsComponent-meter[meter
 link:#MetricsComponent-timer[timer] and link:#MetricsComponent-gauge[gauge].
 Metric name is simple string. If metric type is not provided then type meter is used by default.
 
-#### Headers
+=== Headers
 
 Metric name defined in URI can be overridden by using header with name
 `CamelMetricsName`.
@@ -214,14 +214,14 @@ endpoint finishes processing of exchange. While processing exchange
 Metrics endpoint will catch all exceptions and write log entry using
 level `warn`.
 
-### [[MetricsComponent-counter]]Metrics type counter
+== [[MetricsComponent-counter]]Metrics type counter
 
 [source]
 ----
 metrics:counter:metricname[?options]
 ----
 
-#### Options
+=== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=====================================================
@@ -258,7 +258,7 @@ from("direct:in")
     .to("direct:out");
 ----
 
-#### Headers
+=== Headers
 
 Message headers can be used to override `increment` and `decrement`
 values specified in Metrics component URI.
@@ -289,14 +289,14 @@ from("direct:in")
 
 ----
 
-### [[MetricsComponent-histogram]]Metric type histogram
+== [[MetricsComponent-histogram]]Metric type histogram
 
 [source]
 ----
 metrics:histogram:metricname[?options]
 ----
 
-#### Options
+=== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |===================================
@@ -324,7 +324,7 @@ from("direct:in")
 
 ----
 
-#### Headers
+=== Headers
 
 Message header can be used to override value specified in Metrics
 component URI.
@@ -345,14 +345,14 @@ from("direct:in")
 
 ----
 
-### [[MetricsComponent-meter]]Metric type meter
+== [[MetricsComponent-meter]]Metric type meter
 
 [source]
 ----
 metrics:meter:metricname[?options]
 ----
 
-#### Options
+=== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |===================================
@@ -378,7 +378,7 @@ from("direct:in")
     .to("direct:out");
 ----
 
-#### Headers
+=== Headers
 
 Message header can be used to override `mark` value specified in Metrics
 component URI.
@@ -398,14 +398,14 @@ from("direct:in")
     .to("direct:out");
 ----
 
-### [[MetricsComponent-timer]]Metrics type timer
+== [[MetricsComponent-timer]]Metrics type timer
 
 [source]
 ----
 metrics:timer:metricname[?options]
 ----
 
-#### Options
+=== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |==========================
@@ -430,7 +430,7 @@ from("direct:in")
 `TimerContext` objects are stored as Exchange properties between
 different Metrics component calls.
 
-#### Headers
+=== Headers
 
 Message header can be used to override action value specified in Metrics
 component URI.
@@ -451,14 +451,14 @@ from("direct:in")
     .to("direct:out");
 ----
 
-### [[MetricsComponent-gauge]]Metric type gauge
+== [[MetricsComponent-gauge]]Metric type gauge
 
 [source]
 ----
 metrics:gauge:metricname[?options]
 ----
 
-#### Options
+=== Options
 
 [width="100%",cols="10%,10%,80%",options="header",]
 |=====================================================
@@ -476,7 +476,7 @@ from("direct:in")
     .to("direct:out");
 ----
 
-#### Headers
+=== Headers
 
 Message headers can be used to override `subject` values specified in Metrics component URI.
 Note: if `CamelMetricsName` header is specified, then new gauge is registered in addition to
@@ -497,7 +497,7 @@ from("direct:in")
     .to("direct:out");
 ----
 
-### MetricsRoutePolicyFactory
+== MetricsRoutePolicyFactory
 
 This factory allows to add a RoutePolicy for each
 route which exposes route utilization statistics using Dropwizard metrics.
@@ -575,7 +575,7 @@ if (registryService != null) {
 }
 ----
 
-### MetricsMessageHistoryFactory
+== MetricsMessageHistoryFactory
 
 *Available as of Camel 2.17*
 
@@ -651,7 +651,7 @@ String json = service.dumpStatisticsAsJson();
 And the JMX API the MBean is registered in the `type=services` tree
 with `name=MetricsMessageHistoryService`.
 
-### InstrumentedThreadPoolFactory
+== InstrumentedThreadPoolFactory
 
 *Available as of Camel 2.18*
 
diff --git a/components/camel-micrometer/src/main/docs/micrometer-component.adoc b/components/camel-micrometer/src/main/docs/micrometer-component.adoc
index cfab59f..26f5115 100644
--- a/components/camel-micrometer/src/main/docs/micrometer-component.adoc
+++ b/components/camel-micrometer/src/main/docs/micrometer-component.adoc
@@ -12,7 +12,7 @@ ifdef::env-github[]
 :warning-caption: :warning:
 endif::[]
 
-### Micrometer Component
+== Micrometer Component
 
 The **micrometer:** component allows to collect various metrics directly
 from Camel routes. Supported metric types
@@ -40,14 +40,14 @@ for this component:
 </dependency>
 ----
 
-### URI format
+== URI format
 
 [source]
 ----
 micrometer:[ counter | summary | timer ]:metricname[?options]
 ----
 
-### Options
+== Options
 
 // component options: START
 The Micrometer component supports 2 options, which are listed below.
@@ -129,7 +129,7 @@ The component supports 3 options, which are listed below.
 
 
 
-### [[MicrometerComponent-registry]]Meter Registry
+== [[MicrometerComponent-registry]]Meter Registry
 
... 23142 lines suppressed ...