This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 05bcf03 Polish and cleanup documentation
05bcf03 is described below
commit 05bcf03b8e8b6135531f2c21a849613786c78804
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Aug 10 11:52:10 2021 +0200
Polish and cleanup documentation
---
.../ROOT/pages/camel-configuration-utilities.adoc | 2 +-
.../ROOT/pages/cronscheduledroutepolicy.adoc | 56 ++++++---------
.../modules/ROOT/pages/data-format.adoc | 83 ++++------------------
3 files changed, 35 insertions(+), 106 deletions(-)
diff --git
a/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc
b/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc
index 251fc90..b80147c 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-configuration-utilities.adoc
@@ -35,7 +35,7 @@
http://download.oracle.com/javase/8/docs/technotes/guides/security/jsse/JSSERefG
that is used by non-blocking IO to support TLS.
The JSSE configuration
-utility provides an easy to use builder for configuring these JSSE
+utility provides an easy-to-use builder for configuring these JSSE
components, among others, in a manner that allows you to provide all
configuration options up front during the initialization of your
application such that you don't have to customize library code or dig
diff --git a/docs/user-manual/modules/ROOT/pages/cronscheduledroutepolicy.adoc
b/docs/user-manual/modules/ROOT/pages/cronscheduledroutepolicy.adoc
index 3551f51..bfeae23 100644
--- a/docs/user-manual/modules/ROOT/pages/cronscheduledroutepolicy.adoc
+++ b/docs/user-manual/modules/ROOT/pages/cronscheduledroutepolicy.adoc
@@ -1,6 +1,6 @@
= CronScheduledRoutePolicy
-CronScheduledRoutePolicy is a
+`CronScheduledRoutePolicy` is a
xref:scheduledroutepolicy.adoc[ScheduledRoutePolicy] that facilitates
route activation, de-activation, suspension and resumption of routes
based on a xref:components::quartz-component.adoc[Quartz] `CronTrigger`.
@@ -20,42 +20,24 @@ Maven users will need to add a camel-quartz dependency to
their
[TIP]
====
- **Relationship to the [Quartz] component**
+.Relationship to the Quartz component
All Scheduled route policies share the scheduler created by the Quartz
component. In this way, scheduler, jobs and triggers can be managed in a
common and consistent way.
-
====
-**Relationship to the [Quartz] component**
-
-From Camel 2.12.2 onwards you can also make use of the
-xref:components::quartz-component.adoc[Quartz] based implementation of this
route policy.
-
-[source,xml]
-----
-<bean id="myStartPolicy"
class="org.apache.camel.routepolicy.quartz.CronScheduledRoutePolicy">
- <!-- start every 5min from monday to saturday -->
- <property name="routeStartTime" value="0 0/5 * ? * 1-6 *" />
-</bean>
-----
-
-See xref:cronscheduledroutepolicy.adoc[CronScheduledRoutePolicy
-description].
-
-== How it works
+== Using cron scheduled route policy
-In order to use a
-xref:cronscheduledroutepolicy.adoc[CronScheduledRoutePolicy] it is
+In order to use a `CronScheduledRoutePolicy` it is
necessary to instantiate an object of the type
`org.apache.camel.routepolicy.quartz.CronScheduledRoutePolicy`.
In order to perform a route operation at a given time the following
information must be provided.
-* Starting a route
-+
+=== Starting a route
+
[width="100%",cols="25%,25%,25%,25%",options="header",]
|=======================================================================
|Parameter Name |Type |Default Value |Description
@@ -63,8 +45,8 @@ information must be provided.
Cron Expression for route start
|=======================================================================
-* Stopping a route
-+
+=== Stopping a route
+
[width="100%",cols="25%,25%,25%,25%",options="header",]
|=======================================================================
|Parameter Name |Type |Default Value |Description
@@ -78,8 +60,8 @@ initiating graceful route stop
grace period expressed as java.util.concurrent.TimeUnit
|=======================================================================
-* Suspending a route
-+
+=== Suspending a route
+
[width="100%",cols="25%,25%,25%,25%",options="header",]
|=======================================================================
|Parameter Name |Type |Default Value |Description
@@ -87,8 +69,8 @@ grace period expressed as java.util.concurrent.TimeUnit
Cron Expression for route suspension
|=======================================================================
-* Resuming a route
-+
+=== Resuming a route
+
[width="100%",cols="25%,25%,25%,25%",options="header",]
|=======================================================================
|Parameter Name |Type |Default Value |Description
@@ -96,16 +78,15 @@ Cron Expression for route suspension
Cron Expression for route resumption
|=======================================================================
-Once the `org.apache.camel.routepolicy.quartz.CronScheduledRoutePolicy`
-is created it can be wired into the camel route as follows
-
== Configuring the policy
-* In Java
+Once the `org.apache.camel.routepolicy.quartz.CronScheduledRoutePolicy`
+is created it can be wired into the camel route as follows:
+
+In Java:
[source,java]
----
-
CronScheduledRoutePolicy startPolicy = new CronScheduledRoutePolicy();
startPolicy.setRouteStartTime("*/3 * * * * ?");
@@ -114,7 +95,7 @@ from("direct:start")
.to("mock:success");
----
-* Using Spring
+And with Spring XML:
[source,xml]
----
@@ -130,3 +111,6 @@ from("direct:start")
</camelContext>
----
+IMPORTANT: Notice how the route to be scheduled *MUST* be configured to not
+xref:configuring-route-startup-ordering-and-autostartup.adoc[autostartup], to
let
+the route scheduler take control of starting and stopping the route
accordingly.
\ No newline at end of file
diff --git a/docs/user-manual/modules/ROOT/pages/data-format.adoc
b/docs/user-manual/modules/ROOT/pages/data-format.adoc
index 50700a2..c274a6f 100644
--- a/docs/user-manual/modules/ROOT/pages/data-format.adoc
+++ b/docs/user-manual/modules/ROOT/pages/data-format.adoc
@@ -1,60 +1,15 @@
[[DataFormat-DataFormat]]
= Data Format
-Camel supports a pluggable DataFormat to allow messages to be marshalled
+Camel supports a pluggable `DataFormat` to allow messages to be marshalled
to and from binary or text formats to support a kind of
xref:{eip-vc}:eips:message-translator.adoc[Message Translator].
-The following data formats are currently supported:
-
-* Object marshalling
-** xref:components:dataformats:avro-dataformat.adoc[Avro]
-** xref:json.adoc[JSON]
-** xref:components:dataformats:protobuf-dataformat.adoc[Protobuf]
-** xref:components:dataformats:yaml-snakeyaml-dataformat.adoc[YAML]
-
-* Object/XML marshalling
-** xref:components:dataformats:jaxb-dataformat.adoc[JAXB]
-** xref:components:dataformats:xstream-dataformat.adoc[XStream]
-** xref:components:dataformats:jacksonxml-dataformat.adoc[Jackson XML]
-
-* Flat data structure marshalling
-** xref:components:dataformats:beanio-dataformat.adoc[BeanIO]
-** xref:components:dataformats:bindy-dataformat.adoc[Bindy]
-** xref:components:dataformats:csv-dataformat.adoc[CSV]
-** xref:components:dataformats:flatpack-dataformat.adoc[Flatpack DataFormat]
-** uniVocity DataFormats
xref:components:dataformats:univocity-csv-dataformat.adoc[CSV] /
xref:components:dataformats:univocity-tsv-dataformat.adoc[TSV] /
xref:components:dataformats:univocity-fixed-dataformat.adoc[Fixed Length]
-
-* Domain specific marshalling
-** xref:components:dataformats:hl7-dataformat.adoc[HL7 DataFormat]
-
-* Compression
-** xref:components:dataformats:zipfile-dataformat.adoc[Zip File DataFormat]
-** xref:components:dataformats:lzf-dataformat.adoc[LZF Data Format]
-
-* Security
-** xref:components::crypto-component.adoc[Crypto]
-** xref:components::crypto-component.adoc[PGP]
-** xref:components:dataformats:secureXML-dataformat.adoc[XMLSecurity
DataFormat]
-
-* Misc.
-** xref:components:dataformats:base64-dataformat.adoc[Base64]
-** xref:components:dataformats:mime-multipart-dataformat.adoc[MIME-Multipart]
-** xref:components:dataformats:rss-dataformat.adoc[RSS]
-** xref:components:dataformats:syslog-dataformat.adoc[Syslog]
-** xref:components:dataformats:ical-dataformat.adoc[ICal]
-** xref:components:dataformats:barcode-dataformat.adoc[Barcode] -- to read and
generate barcodes
-(QR-Code, PDF417, ...)
-
-And related is the following:
-
-* xref:components::dataformat-component.adoc[DataFormat Component] for working
with
- Data Formats as if it was a regular xref:component.adoc[Component]
- supporting xref:endpoint.adoc[Endpoints] and xref:uris.adoc[URIs].
-* xref:dozer-type-conversion.adoc[Dozer Type Conversion] using Dozer for
- type converting POJOs
-
-[[DataFormat-Unmarshalling]]
+== Supported data formats
+
+There are more than 40 different
xref:latest@components:dataformats:index.adoc[Data Formats] that
+supports formats such as XML, CSV, JSon, YAML, Avro, Protobuf, and many more.
+
== Unmarshalling
If you receive a message from one of the Camel
@@ -83,18 +38,6 @@ reference to a data format which can then be defined in your
xref:registry.adoc[Registry] such as via your xref:spring.adoc[Spring]
XML file.
-You can also use the DSL itself to define the data format as you use it.
-For example the following uses Java serialization to unmarshal a binary
-file then send it as an ObjectMessage to
xref:components::activemq-component.adoc[ActiveMQ]
-
-[source,java]
-----
-from("file://foo/bar").
- unmarshal().serialization().
- to("activemq:Some.Queue");
-----
-
-[[DataFormat-Marshalling]]
== Marshalling
Marshalling is the opposite of unmarshalling, where a bean is marshalled
@@ -105,20 +48,18 @@ DataFormat instance, you can configure the DataFormat
dynamically using
the DSL or you can refer to a named instance of the format in the
xref:registry.adoc[Registry].
-The following example unmarshals via serialization then marshals using a
+The following example marshals using a
named JAXB data format to perform a kind of
xref:{eip-vc}:eips:message-translator.adoc[Message Translator]:
[source,java]
----
from("file://foo/bar").
- unmarshal().serialization().
marshal("jaxb").
to("activemq:Some.Queue");
----
-[[DataFormat-UsingSpringXML]]
-== Using Spring XML
+== Example using Spring XML
This example shows how to configure the data type just once and reuse it
on multiple routes:
@@ -132,12 +73,16 @@ on multiple routes:
<route>
<from uri="direct:start"/>
- <marshal ref="myJaxb"/>
+ <marshal>
+ <custom ref="myJaxb"/>
+ </marshal>
<to uri="direct:marshalled"/>
</route>
<route>
<from uri="direct:marshalled"/>
- <unmarshal ref="myJaxb"/>
+ <unmarshal>
+ <custom ref="myJaxb"/>
+ </unmarshal>
<to uri="mock:result"/>
</route>