http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/properties-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/properties-component.adoc b/camel-core/src/main/docs/properties-component.adoc index f5ef239..78b22c7 100644 --- a/camel-core/src/main/docs/properties-component.adoc +++ b/camel-core/src/main/docs/properties-component.adoc @@ -1,10 +1,8 @@ -# Properties Component +## Properties Component *Available as of Camel 2.3* -[[Properties-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source] ---- @@ -13,9 +11,7 @@ properties:key[?options] Where *key* is the key for the property to lookup -[[Properties-Options]] -Options -^^^^^^^ +### Options // component options: START The Properties component supports 16 options which are listed below. @@ -71,9 +67,7 @@ The Properties component supports 7 endpoint options which are listed below: You can use the method `resolvePropertyPlaceholders` on the `CamelContext` to resolve a property from any Java code. -[[Properties-UsingPropertyPlaceholder]] -Using PropertyPlaceholder -~~~~~~~~~~~~~~~~~~~~~~~~~ +### Using PropertyPlaceholder *Available as of Camel 2.3* @@ -108,9 +102,7 @@ service idiom. * *Camel 2.14.1* Using custom functions, which can be plugged into the property component. -[[Properties-Syntax]] -Syntax -^^^^^^ +### Syntax The syntax to use Camel's property placeholder is to use `{{key}}` for example `{{file.uri}}` where `file.uri` is the property key. @@ -126,9 +118,7 @@ NOTE: Do not use colon in the property key. The colon is used as a separator token when you are providing a default value, which is supported from *Camel 2.14.1* onwards. -[[Properties-PropertyResolver]] -PropertyResolver -^^^^^^^^^^^^^^^^ +### PropertyResolver Camel provides a pluggable mechanism which allows 3rd part to provide their own resolver to lookup properties. Camel provides a default @@ -144,9 +134,7 @@ prefix is provided) * `blueprint:` *Camel 2.7:* to use a specific OSGi blueprint placeholder service -[[Properties-Defininglocation]] -Defining location -^^^^^^^^^^^^^^^^^ +### Defining location The `PropertiesResolver` need to know a location(s) where to resolve the properties. You can define 1 to many locations. If you define the @@ -169,9 +157,7 @@ pc.setLocations( "com/mycompany/defaults.properties"); ---- -[[Properties-Usingsystemandenvironmentvariablesinlocations]] -Using system and environment variables in locations -+++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Using system and environment variables in locations *Available as of Camel 2.7* @@ -205,9 +191,7 @@ You can have multiple placeholders in the same location, such as: location=file:${env:APP_HOME}/etc/${prop.name}.properties ---- -[[Properties-Usingsystemandenvironmentvariablestoconfigurepropertyprefixesandsuffixes]] -Using system and environment variables to configure property prefixes and suffixes -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Using system and environment variables to configure property prefixes and suffixes *Available as of Camel 2.12.5, 2.13.3, 2.14.0* @@ -244,9 +228,7 @@ property `stage` either to `dev` (the message will be routed to `mock:result1`) or `test` (the message will be routed to `mock:result2`). -[[Properties-ConfiguringinJavaDSL]] -Configuring in Java DSL -^^^^^^^^^^^^^^^^^^^^^^^ +### Configuring in Java DSL You have to create and register the `PropertiesComponent` under the name `properties` such as: @@ -258,9 +240,7 @@ pc.setLocation("classpath:com/mycompany/myprop.properties"); context.addComponent("properties", pc); ---- -[[Properties-ConfiguringinSpringXML]] -Configuring in Spring XML -^^^^^^^^^^^^^^^^^^^^^^^^^ +### Configuring in Spring XML Spring XML offers two variations to configure. You can define a spring bean as a `PropertiesComponent` which resembles the way done in Java @@ -310,9 +290,7 @@ Setting the properties location through the location tag works just fine but som Camel 2.10 onwards supports specifying a value for the cache option both inside the Spring as well as the Blueprint XML. -[[Properties-UsingaPropertiesfromthe]] -Using a Properties from the link:registry.html[Registry] -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using a Properties from the link:registry.html[Registry] *Available as of Camel 2.4* + For example in OSGi you may want to expose a service which returns the @@ -330,9 +308,7 @@ Where `myProperties` is the id to use for lookup in the OSGi registry. Notice we use the `ref:` prefix to tell Camel that it should lookup the properties for the link:registry.html[Registry]. -[[Properties-Examplesusingpropertiescomponent]] -Examples using properties component -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Examples using properties component When using property placeholders in the endpoint URIs you can either use the `properties:` component or define the placeholders directly in the @@ -382,9 +358,7 @@ location in the given uri using the `locations` option: from("direct:start").to("properties:bar.end?locations=com/mycompany/bar.properties"); ---- -[[Properties-Examples]] -Examples -^^^^^^^^ +### Examples You can also use property placeholders directly in the endpoint uris without having to use `properties:`. @@ -421,9 +395,7 @@ link:producertemplate.html[ProducerTemplate] for example: template.sendBody("{{cool.start}}", "Hello World"); ---- -[[Properties-Examplewithlanguage]] -Example with link:simple.html[Simple] language -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Example with link:simple.html[Simple] language The link:simple.html[Simple] language now also support using property placeholders, for example in the route below: @@ -451,9 +423,7 @@ from("direct:start") .transform().simple("Hi ${body}. ${properties:com/mycompany/bar.properties:bar.quote}."); ---- -[[Properties-AdditionalpropertyplaceholdersupportedinSpringXML]] -Additional property placeholder supported in Spring XML -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Additional property placeholder supported in Spring XML The property placeholders is also supported in many of the Camel Spring XML tags such as @@ -465,9 +435,7 @@ The example below has property placeholder in the `<jmxAgent>` tag: You can also define property placeholders in the various attributes on the `<camelContext>` tag such as `trace` as shown here: -[[Properties-OverridingapropertysettingusingaJVMSystemProperty]] -Overriding a property setting using a JVM System Property -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Overriding a property setting using a JVM System Property *Available as of Camel 2.5* + It is possible to override a property value at runtime using a JVM @@ -504,9 +472,7 @@ System.clearProperty("cool.result"); assertMockEndpointsSatisfied(); ---- -[[Properties-UsingpropertyplaceholdersforanykindofattributeintheXMLDSL]] -Using property placeholders for any kind of attribute in the XML DSL -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using property placeholders for any kind of attribute in the XML DSL *Available as of Camel 2.7* @@ -533,9 +499,7 @@ In our properties file we have the value defined as stop=true ---- -[[Properties-UsingpropertyplaceholderintheJavaDSL]] -Using property placeholder in the Java DSL -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using property placeholder in the Java DSL *Available as of Camel 2.7* @@ -543,9 +507,7 @@ Likewise we have added support for defining placeholders in the Java DSL using the new `placeholder` DSL as shown in the following equivalent example: -[[Properties-UsingBlueprintpropertyplaceholderwithCamelroutes]] -Using Blueprint property placeholder with Camel routes -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using Blueprint property placeholder with Camel routes *Available as of Camel 2.7* @@ -658,9 +620,7 @@ location="blueprint:myblueprint.placeholder,classpath:myproperties.properties" Each location is separated by comma. -[[Properties-OverridingBlueprintpropertyplaceholdersoutsideCamelContext]] -Overriding Blueprint property placeholders outside CamelContext -+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Overriding Blueprint property placeholders outside CamelContext *Available as of Camel 2.10.4* @@ -680,9 +640,7 @@ return value *must* be the `persistence-id` of the `<cm:property-placeholder>` tag, which you define in the blueprint XML file. -[[Properties-Using.cfgor.propertiesfileforBlueprintpropertyplaceholders]] -Using .cfg or .properties file for Blueprint property placeholders -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Using .cfg or .properties file for Blueprint property placeholders *Available as of Camel 2.10.4* @@ -714,9 +672,7 @@ placeholders such as: greeting=Bye ---- -[[Properties-Using.cfgfileandoverridingpropertiesforBlueprintpropertyplaceholders]] -Using .cfg file and overriding properties for Blueprint property placeholders -+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Using .cfg file and overriding properties for Blueprint property placeholders You can do both as well. Here is a complete example. First we have the Blueprint XML file: @@ -732,9 +688,7 @@ echo=Yay destination=mock:result ---- -[[Properties-BridgingSpringandCamelpropertyplaceholders]] -Bridging Spring and Camel property placeholders -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Bridging Spring and Camel property placeholders *Available as of Camel 2.10* @@ -764,9 +718,7 @@ Notice how the hello bean is using pure Spring property placeholders using the `${ }` notation. And in the Camel routes we use the Camel placeholder notation with `{{` and `}}`. -[[Properties-ClashingSpringpropertyplaceholderswithCamelslanguage]] -Clashing Spring property placeholders with Camels link:simple.html[Simple] language -+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Clashing Spring property placeholders with Camels link:simple.html[Simple] language Take notice when using Spring bridging placeholder then the spring `${ }` syntax clashes with the link:simple.html[Simple] in Camel, and therefore @@ -792,9 +744,7 @@ to indicate using the link:simple.html[Simple] language in Camel. An alternative is to configure the `PropertyPlaceholderConfigurer` with `ignoreUnresolvablePlaceholders` option to `true`. -[[Properties-OverridingpropertiesfromCameltestkit]] -Overriding properties from Camel test kit -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Overriding properties from Camel test kit *Available as of Camel 2.10* @@ -823,9 +773,7 @@ instruct Camel to ignore any locations which was not discoverable, for example if you run the unit test, in an environment that does not have access to the location of the properties. -[[Properties-UsingPropertyInject]] -Using @PropertyInject -^^^^^^^^^^^^^^^^^^^^^ +### Using @PropertyInject *Available as of Camel 2.12* @@ -876,9 +824,7 @@ You can also add a default value if the key does not exists, such as: private int timeout; ---- -[[Properties-Usingoutoftheboxfunctions]] -Using out of the box functions -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using out of the box functions *Available as of Camel 2.14.1* @@ -981,9 +927,7 @@ example to call a service on localhost, maybe for unit testing etc </camelContext> ---- -[[Properties-Usingcustomfunctions]] -Using custom functions -^^^^^^^^^^^^^^^^^^^^^^ +### Using custom functions *Available as of Camel 2.14.1* @@ -1054,15 +998,11 @@ To register a custom function from Java code is as shown below:  -[[Properties-SeeAlso]] -See Also -~~~~~~~~ +### See Also * link:properties.html[Properties] component -[[Properties-SeeAlso.1]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -1070,4 +1010,4 @@ See Also * link:getting-started.html[Getting Started] * link:jasypt.html[Jasypt] for using encrypted values (eg passwords) in -the properties +the properties \ No newline at end of file
http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/ref-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/ref-component.adoc b/camel-core/src/main/docs/ref-component.adoc index 4bc2125..d6e9d36 100644 --- a/camel-core/src/main/docs/ref-component.adoc +++ b/camel-core/src/main/docs/ref-component.adoc @@ -1,11 +1,9 @@ -# Ref Component +## Ref Component The *ref:* component is used for lookup of existing endpoints bound in the link:registry.html[Registry]. -[[Ref-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ---------------------- @@ -17,9 +15,7 @@ link:registry.html[Registry] (usually, but not always, the Spring registry). If you are using the Spring registry, `someName` would be the bean ID of an endpoint in the Spring registry. -[[Ref-Options]] -Ref Options -^^^^^^^^^^^ +### Ref Options // component options: START The Ref component has no options. @@ -43,9 +39,7 @@ The Ref component supports 5 endpoint options which are listed below: // endpoint options: END -[[Ref-Runtimelookup]] -Runtime lookup -^^^^^^^^^^^^^^ +### Runtime lookup This component can be used when you need dynamic discovery of endpoints in the link:registry.html[Registry] where you can compute the URI at @@ -77,9 +71,7 @@ link:registry.html[Registry] such as: </camelContext> ---------------------------------------------------------------------------------- -[[Ref-Sample]] -Sample -^^^^^^ +### Sample In the sample below we use the `ref:` in the URI to reference the endpoint with the spring ID, `endpoint2`: @@ -93,12 +85,9 @@ You could, of course, have used the `ref` attribute instead: Which is the more common way to write it. -[[Ref-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] -* link:getting-started.html[Getting Started] - +* link:getting-started.html[Getting Started] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/ref-language.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/ref-language.adoc b/camel-core/src/main/docs/ref-language.adoc index bc6c176..2908142 100644 --- a/camel-core/src/main/docs/ref-language.adoc +++ b/camel-core/src/main/docs/ref-language.adoc @@ -1,4 +1,4 @@ -# Ref Language +## Ref Language *Available as of Camel 2.8* @@ -7,9 +7,7 @@ link:expression.html[Expression] or link:predicate.html[Predicate] from the link This is particular useable in XML DSLs. -[[RefLanguage-Options]] -Ref Language options -^^^^^^^^^^^^^^^^^^^^ +### Ref Language options // language options: START The Ref language supports 1 options which are listed below. @@ -25,9 +23,7 @@ The Ref language supports 1 options which are listed below. {% endraw %} // language options: END -[[RefLanguage-Exampleusage]] -Example usage -^^^^^^^^^^^^^ +### Example usage The link:splitter.html[Splitter] in XML DSL can utilize a custom expression using `<ref>` like: @@ -59,8 +55,6 @@ And the same example using Java DSL: from("seda:a").split().ref("myExpression").to("seda:b"); -------------------------------------------------------- -[[RefLanguage-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies -The Ref language is part of *camel-core*. +The Ref language is part of *camel-core*. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/rest-api-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/rest-api-component.adoc b/camel-core/src/main/docs/rest-api-component.adoc index f575373..6857be5 100644 --- a/camel-core/src/main/docs/rest-api-component.adoc +++ b/camel-core/src/main/docs/rest-api-component.adoc @@ -1,4 +1,4 @@ -# REST API Component +## REST API Component *Available as of Camel 2.14* @@ -6,9 +6,7 @@ Apache Camel offers a REST styled DSL which can be used with Java or XML. The intention is to allow end users to define REST services using a REST style with verbs such as get, post, delete etc. -[[RestDSL-Howitworks]] -How it works -++++++++++++ +#### How it works The Rest DSL is a facade that builds link:rest.html[Rest] endpoints as consumers for Camel routes. The actual REST transport is leveraged by @@ -16,9 +14,7 @@ using Camel REST components such as link:restlet.html[Restlet], link:spark-rest.html[Spark-rest], and others that has native REST integration. -[[RestDSL-ComponentssupportingRestDSL]] -Components supporting Rest DSL -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Components supporting Rest DSL The following Camel components supports the Rest DSL. See the bottom of this page for how to integrate a component with the Rest DSL. @@ -39,9 +35,7 @@ supports link:swagger-java.html[Swagger Java] from Camel 2.17 onwards) * link:undertow.html[camel-undertow] (also supports link:swagger-java.html[Swagger Java] from Camel 2.17 onwards) -[[RestDSL-RestDSLwithJava]] -Rest DSL with Java -^^^^^^^^^^^^^^^^^^ +### Rest DSL with Java To use the Rest DSL in Java then just do as with regular Camel routes by extending the `RouteBuilder` and define the routes in the `configure` @@ -91,9 +85,7 @@ routing directly to an endpoint using to(). An alternative is to embed a Camel route directly using route() - there is such an example further below. -[[RestDSL-RestDSLwithXML]] -Rest DSL with XML -^^^^^^^^^^^^^^^^^ +### Rest DSL with XML The REST DSL supports the XML DSL also using either Spring or Blueprint. The example above can be define in XML as shown below: @@ -129,9 +121,7 @@ The example above can be define in XML as shown below:  -[[RestDSL-Usingbasepath]] -Using base path -^^^^^^^^^^^^^^^ +### Using base path The REST DSL allows to define base path to make the DSL a bit more DRY. For example to define a customer path, we can set the base path in @@ -189,9 +179,7 @@ only. The example above can be defined as: </rest> ------------------------------------------- -[[RestDSL-UsingDynamicTo]] -Using Dynamic To -^^^^^^^^^^^^^^^^ +### Using Dynamic To *Available as of Camel 2.16* @@ -207,9 +195,7 @@ over link:jms.html[JMS] where the queue name is dynamic defined } ------------------------------------------------------------------------- -[[RestDSL-AndinXMLDSL]] -And in XML DSL -^^^^^^^^^^^^^^ +### And in XML DSL [source,xml] --------------------------------------------------- @@ -226,9 +212,7 @@ See more details at link:message-endpoint.html[Message Endpoint] about the dynamic to, and what syntax it supports. By default it uses the link:simple.html[Simple] language, but it has more power than so. -[[RestDSL-EmbeddingCamelroutes]] -Embedding Camel routes -^^^^^^^^^^^^^^^^^^^^^^ +### Embedding Camel routes Each of the rest service becomes a Camel route, so in the first example we have 2 x get and 1 x post REST service, which each become a Camel @@ -275,9 +259,7 @@ today. --------------------------------------------------------------------------------------------- -[[RestDSL-ManagingRestservices]] -Managing Rest services -^^^^^^^^^^^^^^^^^^^^^^ +### Managing Rest services Each of the rest service becomes a Camel route, so in the first example we have 2 x get and 1 x post REST service, which each become a Camel @@ -292,9 +274,7 @@ performance statistics. There is also a Rest Registry JMX MBean that contains a registry of all REST services which has been defined. -[[RestDSL-BindingtoPOJOsusing]] -Binding to POJOs using -^^^^^^^^^^^^^^^^^^^^^^ +### Binding to POJOs using The Rest DSL supports automatic binding json/xml contents to/from POJOs using Camels link:data-format.html[Data Format]. By default the binding @@ -481,9 +461,7 @@ public class UserPojo { By having the JAXB annotations the POJO supports both json and xml bindings. -[[RestDSL-ConfiguringRestDSL]] -Configuring Rest DSL -^^^^^^^^^^^^^^^^^^^^ +### Configuring Rest DSL // component options: START @@ -532,9 +510,7 @@ example configure 2 component options, and 3 endpoint options etc.  -[[RestDSL-EnablingordisablingJacksonJSONfeatures]] -Enabling or disabling Jackson JSON features -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Enabling or disabling Jackson JSON features *Available as of Camel 2.15* @@ -588,9 +564,7 @@ The rest configuration is of course also possible using XML DSL  -[[RestDSL-DefaultCORSheaders]] -Default CORS headers -^^^^^^^^^^^^^^^^^^^^ +### Default CORS headers *Available as of Camel 2.14.1* @@ -612,9 +586,7 @@ Access-Control-Request-Method, Access-Control-Request-Headers |Access-Control-Max-Age |3600 |=======================================================================  -[[RestDSL-Definingacustomerrormessageas-is]] -Defining a custom error message as-is -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Defining a custom error message as-is If you want to define custom error messages to be sent back to the client with a HTTP error code (eg such as 400, 404 etc.) then @@ -658,9 +630,7 @@ the HTTP error code to 400. This is important, as that tells rest-dsl that this is a custom error message, and the message should not use the output pojo binding (eg would otherwise bind to CountryPojo). -[[RestDSL-CatchingJsonParserExceptionandreturningacustomerrormessage]] -Catching JsonParserException and returning a custom error message -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Catching JsonParserException and returning a custom error message From *Camel 2.14.1* onwards you return a custom message as-is (see previous section). So we can leverage this with Camel error handler to @@ -679,9 +649,7 @@ onException(JsonParseException.class)  -[[RestDSL-ParameterdefaultValues]] -Parameter default Values -^^^^^^^^^^^^^^^^^^^^^^^^ +### Parameter default Values You can specify default values for parameters in the rest-dsl, such as the verbose parameter below: @@ -703,9 +671,7 @@ key `verbose` then Camel will now include a header with key `verbose` and the value `false` because it was declared as the default value. This functionality is only applicable for query parameters. -[[RestDSL-IntegratingaCamelcomponentwithRestDSL]] -Integrating a Camel component with Rest DSL -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Integrating a Camel component with Rest DSL Any Apache Camel component can integrate with the Rest DSL if they can be used as a REST service (eg as a REST consumer in Camel lingo). To @@ -717,9 +683,7 @@ Camel consumer that exposes the REST services based on the given parameters, such as path, verb, and other options. For example see the source code for camel-restlet, camel-spark-rest. -[[RestDSL-SwaggerAPI]] -Swagger API -^^^^^^^^^^^ +### Swagger API The Rest DSL supports link:swagger-java.html[Swagger Java] by the `camel-swagger-java` module. See more details at @@ -777,14 +741,11 @@ And in Java DSL For an example see the `examples/camel-example-servlet-rest-tomcat` of the Apache Camel distribution. -[[RestDSL-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:dsl.html[DSL] * link:rest.html[Rest] * link:swagger-java.html[Swagger Java] * link:spark-rest.html[Spark-rest] * link:how-do-i-import-rests-from-other-xml-files.html[How do I import -rests from other XML files] - +rests from other XML files] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/rest-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/rest-component.adoc b/camel-core/src/main/docs/rest-component.adoc index 6a3e54a..054c36d 100644 --- a/camel-core/src/main/docs/rest-component.adoc +++ b/camel-core/src/main/docs/rest-component.adoc @@ -1,4 +1,4 @@ -# REST Component +## REST Component *Available as of Camel 2.14* @@ -8,18 +8,14 @@ REST transport. From Camel 2.18 onwards the rest component can also be used as a client (producer) to call REST services. -[[Rest-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] -------------------------------------------- rest://method:path[:uriTemplate]?[options] -------------------------------------------- -[[Rest-URIOptions]] -URI Options -^^^^^^^^^^^ +### URI Options // component options: START The REST component supports 3 options which are listed below. @@ -65,9 +61,7 @@ The REST component supports 17 endpoint options which are listed below: {% endraw %} // endpoint options: END -[[Components-Supported]] -Supported rest components -^^^^^^^^^^^^^^^^^^^^^^^^^ +### Supported rest components The following components support rest consumer (link:rest-dsl.html[Rest DSL]): @@ -89,9 +83,7 @@ The following components support rest producer: * camel-restlet * camel-undertow -[[Rest-PathanduriTemplatesyntax]] -Path and uriTemplate syntax -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Path and uriTemplate syntax The path and uriTemplate option is defined using a REST syntax where you define the REST context path using support for parameters. @@ -130,9 +122,7 @@ have two REST services configured using uriTemplates. .transform().simple("Bonjour ${header.me}"); ------------------------------------------------ -[[Rest-Producer]] -Rest producer examples -^^^^^^^^^^^^^^^^^^^^^^ +### Rest producer examples You can use the rest component to call REST services like any other Camel component. @@ -183,9 +173,7 @@ to use http4 you can do: -------------------------------------------- -[[Rest-Producer-Binding]] -Rest producer binding -^^^^^^^^^^^^^^^^^^^^^ +### Rest producer binding The REST producer supports binding using JSon or XML like the rest-dsl does. @@ -229,9 +217,7 @@ For example if the REST service returns a JSon payload that binds to `com.foo.My IMPORTANT: You must configure `outType` option if you want POJO binding to happen for the response messages received from calling the REST service. -[[Rest-Moreexamples]] -More examples -^^^^^^^^^^^^^ +### More examples See link:rest-dsl.html[Rest DSL] which offers more examples and how you can use the Rest DSL to define those in a nicer RESTful way. @@ -242,9 +228,7 @@ link:rest-dsl.html[Rest DSL] with link:servlet.html[SERVLET] as transport that can be deployed on Apache Tomcat, or similar web containers. -[[Rest-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -252,5 +236,4 @@ See Also * link:getting-started.html[Getting Started] * link:rest-dsl.html[Rest DSL] -* link:servlet.html[SERVLET] - +* link:servlet.html[SERVLET] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/scheduler-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/scheduler-component.adoc b/camel-core/src/main/docs/scheduler-component.adoc index 98a498a..a942f1a 100644 --- a/camel-core/src/main/docs/scheduler-component.adoc +++ b/camel-core/src/main/docs/scheduler-component.adoc @@ -1,4 +1,4 @@ -# Scheduler Component +## Scheduler Component *Available as of Camel 2.15* @@ -10,9 +10,7 @@ JDK `ScheduledExecutorService`. Where as the timer uses a JDK `Timer`. You can only consume events from this endpoint. -[[Scheduler-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ------------------------ @@ -30,9 +28,7 @@ You can append query options to the URI in the following format, *Note:* The IN body of the generated exchange is `null`. So `exchange.getIn().getBody()` returns `null`. -[[Scheduler-Options]] -Options -^^^^^^^ +### Options // component options: START The Scheduler component supports 1 options which are listed below. @@ -82,9 +78,7 @@ The Scheduler component supports 21 endpoint options which are listed below: // endpoint options: END -[[Scheduler-Moreinformation]] -More information -^^^^^^^^^^^^^^^^ +### More information This component is a scheduler http://camel.apache.org/polling-consumer.html[Polling Consumer] where @@ -92,9 +86,7 @@ you can find more information about the options above, and examples at the http://camel.apache.org/polling-consumer.html[Polling Consumer] page. -[[Scheduler-ExchangeProperties]] -Exchange Properties -^^^^^^^^^^^^^^^^^^^ +### Exchange Properties When the timer is fired, it adds the following information as properties to the `Exchange`: @@ -108,9 +100,7 @@ to the `Exchange`: |`Exchange.TIMER_FIRED_TIME` |`Date` |The time when the consumer fired. |======================================================================= -[[Scheduler-Sample]] -Sample -^^^^^^ +### Sample To set up a route that generates an event every 60 seconds: @@ -137,17 +127,13 @@ And the route in Spring DSL:  -[[Scheduler-Forcingtheschedulertotriggerimmediatelywhencompleted]] -Forcing the scheduler to trigger immediately when completed -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Forcing the scheduler to trigger immediately when completed To let the scheduler trigger as soon as the previous task is complete, you can set the option greedy=true. But beware then the scheduler will keep firing all the time. So use this with caution. -[[Scheduler-Forcingtheschedulertobeidle]] -Forcing the scheduler to be idle -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Forcing the scheduler to be idle There can be use cases where you want the scheduler to trigger and be greedy. But sometimes you want "tell the scheduler" that there was no @@ -163,9 +149,7 @@ exchange.  -[[Scheduler-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -173,5 +157,4 @@ See Also * link:getting-started.html[Getting Started] * link:timer.html[Timer] -* link:quartz.html[Quartz] - +* link:quartz.html[Quartz] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/seda-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/seda-component.adoc b/camel-core/src/main/docs/seda-component.adoc index 7fb7d10..9c0bb25 100644 --- a/camel-core/src/main/docs/seda-component.adoc +++ b/camel-core/src/main/docs/seda-component.adoc @@ -1,4 +1,4 @@ -# SEDA Component +## SEDA Component The *seda:* component provides asynchronous http://www.eecs.harvard.edu/~mdw/proj/seda/[SEDA] behavior, so that @@ -20,9 +20,7 @@ TIP:*Synchronous* The link:direct.html[Direct] component provides synchronous invocation of any consumers when a producer sends a message exchange. -[[SEDA-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ----------------------- @@ -35,9 +33,7 @@ within the current link:camelcontext.html[CamelContext]. You can append query options to the URI in the following format: `?option=value&option=value&â¦` -[[SEDA-Options]] -Options -^^^^^^^ +### Options // component options: START The SEDA component supports 3 options which are listed below. @@ -85,9 +81,7 @@ The SEDA component supports 17 endpoint options which are listed below: // endpoint options: END -[[SEDA-ChoosingBlockingQueueimplementation]] -Choosing BlockingQueue implementation -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Choosing BlockingQueue implementation *Available as of Camel 2.12* @@ -120,9 +114,7 @@ ArrayBlockingQueueFactory and PriorityBlockingQueueFactory: <from>seda:priority?queueFactory=#priorityQueueFactory&size=100</from> ----------------------------------------------------------------------------------------------------- -[[SEDA-UseofRequestReply]] -Use of Request Reply -^^^^^^^^^^^^^^^^^^^^ +### Use of Request Reply The link:seda.html[SEDA] component supports using link:request-reply.html[Request Reply], where the caller will wait for @@ -151,9 +143,7 @@ between the waiting threads properly. This has been improved in *Camel 2.3* onwards, which allows you to chain as many endpoints as you like. -[[SEDA-Concurrentconsumers]] -Concurrent consumers -^^^^^^^^^^^^^^^^^^^^ +### Concurrent consumers By default, the SEDA endpoint uses a single consumer thread, but you can configure it to use concurrent consumer threads. So instead of thread @@ -168,9 +158,7 @@ As for the difference between the two, note a _thread pool_ can increase/shrink dynamically at runtime depending on load, whereas the number of concurrent consumers is always fixed. -[[SEDA-Threadpools]] -Thread pools -^^^^^^^^^^^^ +### Thread pools Be aware that adding a thread pool to a SEDA endpoint by doing something like: @@ -194,9 +182,7 @@ from("direct:stageName").thread(5).process(...) You can also directly configure number of threads that process messages on a SEDA endpoint using the `concurrentConsumers` option. -[[SEDA-Sample]] -Sample -^^^^^^ +### Sample In the route below we use the SEDA queue to send the request to this async queue to be able to send a fire-and-forget message for further @@ -210,9 +196,7 @@ another thread for further processing. Since this is from a unit test, it will be sent to a `mock` endpoint where we can do assertions in the unit test. -[[SEDA-UsingmultipleConsumers]] -Using multipleConsumers -^^^^^^^^^^^^^^^^^^^^^^^ +### Using multipleConsumers *Available as of Camel 2.2* @@ -227,9 +211,7 @@ As the beans are part of an unit test they simply send the message to a mock endpoint, but notice how we can use @Consume to consume from the seda queue. -[[SEDA-Extractingqueueinformation.]] -Extracting queue information. -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Extracting queue information. If needed, information such as queue size, etc. can be obtained without using JMX in this fashion: @@ -240,9 +222,7 @@ SedaEndpoint seda = context.getEndpoint("seda:xxxx"); int size = seda.getExchanges().size(); ----------------------------------------------------- -[[SEDA-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -252,5 +232,4 @@ See Also * link:vm.html[VM] * link:disruptor.html[Disruptor] * link:direct.html[Direct] -* link:async.html[Async] - +* link:async.html[Async] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/serialization-dataformat.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/serialization-dataformat.adoc b/camel-core/src/main/docs/serialization-dataformat.adoc index 3ee351f..ee81d0f 100644 --- a/camel-core/src/main/docs/serialization-dataformat.adoc +++ b/camel-core/src/main/docs/serialization-dataformat.adoc @@ -1,4 +1,4 @@ -# Java Object Serialization DataFormat +## Java Object Serialization DataFormat Serialization is a link:data-format.html[Data Format] which uses the standard Java Serialization mechanism to unmarshal a binary payload into @@ -13,9 +13,7 @@ from("file://foo/bar"). to("activemq:Some.Queue"); ------------------------------ -[[Serialization-Options]] -Options -^^^^^^^ +### Options // dataformat options: START The Java Object Serialization dataformat supports 1 options which are listed below. @@ -31,9 +29,7 @@ The Java Object Serialization dataformat supports 1 options which are listed bel {% endraw %} // dataformat options: END -[[Serialization-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies This data format is provided in *camel-core* so no additional -dependencies is needed. +dependencies is needed. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/simple-language.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/simple-language.adoc b/camel-core/src/main/docs/simple-language.adoc index b5c6cca..fc54cd6 100644 --- a/camel-core/src/main/docs/simple-language.adoc +++ b/camel-core/src/main/docs/simple-language.adoc @@ -1,4 +1,4 @@ -# Simple Language +## Simple Language The Simple Expression Language was a really simple language when it was created, but has since grown more powerful. It is primarily intended for @@ -76,9 +76,7 @@ You can have multiple functions in the same expression: having another $\{ } placeholder in an existing, is not allowed). + From *Camel 2.9* onwards you can nest functions. -[[SimpleLanguage-Options]] -Simple Language options -^^^^^^^^^^^^^^^^^^^^^^^ +### Simple Language options // language options: START The Simple language supports 2 options which are listed below. @@ -95,9 +93,7 @@ The Simple language supports 2 options which are listed below. {% endraw %} // language options: END -[[Simple-Variables]] -Variables -^^^^^^^^^ +### Variables [width="100%",cols="10%,10%,80%",options="header",] |======================================================================= @@ -289,9 +285,7 @@ includes the route strack-trace). This can be used if you do not want to log sensitive data from the message itself. |======================================================================= -[[Simple-OGNLexpressionsupport]] -OGNL expression support -^^^^^^^^^^^^^^^^^^^^^^^ +### OGNL expression support *Available as of Camel 2.3* @@ -426,9 +420,7 @@ And yes you can combine this with the operator support as shown below: simple("${body.address.zip} > 1000") ------------------------------------ -[[Simple-Operatorsupport]] -Operator support -^^^^^^^^^^^^^^^^ +### Operator support The parser is limited to only support a single operator. @@ -726,9 +718,7 @@ order: </from> ------------------------------------------------------------ -[[Simple-Usingandor]] -Using and / or -++++++++++++++ +#### Using and / or If you have two expressions you can combine them with the `and` or `or` operator. @@ -760,9 +750,7 @@ language expression. This might change in the future. + simple("${in.header.title} contains 'Camel' and ${in.header.type'} == 'gold' and ${in.header.number} range 100..200") --------------------------------------------------------------------------------------------------------------------- -[[Simple-Samples]] -Samples -^^^^^^^ +### Samples In the Spring XML sample below we filter based on a header value: @@ -877,9 +865,7 @@ From Camel 2.9 onwards you can nest functions, such as shown below: </setHeader> -------------------------------------------------- -[[Simple-Referringtoconstantsorenums]] -Referring to constants or enums -+++++++++++++++++++++++++++++++ +#### Referring to constants or enums *Available as of Camel 2.11* @@ -889,9 +875,7 @@ And in a link:content-based-router.html[Content Based Router] we can use the link:simple.html[Simple] language to refer to this enum, to check the message which enum it matches. -[[Simple-UsingnewlinesortabsinXMLDSLs]] -Using new lines or tabs in XML DSLs -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using new lines or tabs in XML DSLs *Available as of Camel 2.9.3* @@ -905,9 +889,7 @@ XML DSLs as you can escape the value now </transform> ------------------------------------------------------- -[[Simple-Leadingandtrailingwhitespacehandling]] -Leading and trailing whitespace handling -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Leading and trailing whitespace handling *Available as of Camel 2.10.0* @@ -923,9 +905,7 @@ whitespace characters. </setBody> --------------------------------------------------------------------------------- -[[Simple-Settingresulttype]] -Setting result type -^^^^^^^^^^^^^^^^^^^ +### Setting result type *Available as of Camel 2.8* @@ -951,9 +931,7 @@ And in XML DSL </setHeader> --------------------------------------------------------------------------------------- -[[Simple-Changingfunctionstartandendtokens]] -Changing function start and end tokens -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Changing function start and end tokens *Available as of Camel 2.9.1* @@ -978,9 +956,7 @@ applications which share the same *camel-core* on their classpath. + For example in an OSGi server this may affect many applications, where as a Web Application as a WAR file it only affects the Web Application. -[[Simple-Loadingscriptfromexternalresource]] -Loading script from external resource -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Loading script from external resource *Available as of Camel 2.11* @@ -994,9 +970,7 @@ eg to refer to a file on the classpath you can do: .setHeader("myHeader").simple("resource:classpath:mysimple.txt") ---------------------------------------------------------------- -[[Simple-SettingSpringbeanstoExchangeproperties]] -Setting Spring beans to Exchange properties -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Setting Spring beans to Exchange properties *Available as of Camel 2.6* @@ -1015,8 +989,6 @@ You can set a spring bean into an exchange property as shown below: </route> ------------------------------------------------------- -[[Simple-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies -The link:simple.html[Simple] language is part of *camel-core*. +The link:simple.html[Simple] language is part of *camel-core*. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/string-dataformat.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/string-dataformat.adoc b/camel-core/src/main/docs/string-dataformat.adoc index b43199b..0a6c72a 100644 --- a/camel-core/src/main/docs/string-dataformat.adoc +++ b/camel-core/src/main/docs/string-dataformat.adoc @@ -1,11 +1,9 @@ -# String Encoding DataFormat +## String Encoding DataFormat The String link:data-format.html[Data Format] is a textual based format that supports encoding. -[[String-Options]] -Options -^^^^^^^ +### Options // dataformat options: START The String Encoding dataformat supports 2 options which are listed below. @@ -22,9 +20,7 @@ The String Encoding dataformat supports 2 options which are listed below. {% endraw %} // dataformat options: END -[[String-Marshal]] -Marshal -^^^^^^^ +### Marshal In this example we marshal the file content to String object in UTF-8 encoding. @@ -34,9 +30,7 @@ encoding. from("file://data.csv").marshal().string("UTF-8").to("jms://myqueue"); ---------------------------------------------------------------------- -[[String-Unmarshal]] -Unmarshal -^^^^^^^^^ +### Unmarshal In this example we unmarshal the payload from the JMS queue to a String object using UTF-8 encoding, before its processed by the newOrder @@ -47,9 +41,7 @@ processor. from("jms://queue/order").unmarshal().string("UTF-8").processRef("newOrder"); ----------------------------------------------------------------------------- -[[String-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies This data format is provided in *camel-core* so no additional -dependencies is needed. +dependencies is needed. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/stub-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/stub-component.adoc b/camel-core/src/main/docs/stub-component.adoc index a10370d..8b255dd 100644 --- a/camel-core/src/main/docs/stub-component.adoc +++ b/camel-core/src/main/docs/stub-component.adoc @@ -1,4 +1,4 @@ -# Stub Component +## Stub Component *Available as of Camel 2.10* @@ -16,9 +16,7 @@ usually fail. Stub won't though, as it basically ignores all query parameters to let you quickly stub out one or more endpoints in your route temporarily. -[[Stub-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ------------ @@ -27,9 +25,7 @@ stub:someUri Where *`someUri`* can be any URI with any query parameters. -[[Stub-Options]] -Options -^^^^^^^ +### Options // component options: START The Stub component supports 3 options which are listed below. @@ -77,9 +73,7 @@ The Stub component supports 17 endpoint options which are listed below: // endpoint options: END -[[Stub-Examples]] -Examples -^^^^^^^^ +### Examples Here are a few samples: @@ -87,12 +81,9 @@ Here are a few samples: * stub:http://somehost.bar.com/something[http://somehost.bar.com/something] -[[Stub-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] -* link:getting-started.html[Getting Started] - +* link:getting-started.html[Getting Started] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/test-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/test-component.adoc b/camel-core/src/main/docs/test-component.adoc index 39a5050..51e9232 100644 --- a/camel-core/src/main/docs/test-component.adoc +++ b/camel-core/src/main/docs/test-component.adoc @@ -1,4 +1,4 @@ -# Test Component +## Test Component link:testing.html[Testing] of distributed and asynchronous processing is notoriously difficult. The link:mock.html[Mock], link:test.html[Test] @@ -37,9 +37,7 @@ for this component when using *Camel 2.8* or older: From Camel 2.9 onwards the link:test.html[Test] component is provided directly in the camel-core. -[[Test-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] -------------------------------- @@ -50,9 +48,7 @@ Where *expectedMessagesEndpointUri* refers to some other link:component.html[Component] URI that the expected message bodies are pulled from before starting the test. -[[Test-URIOptions]] -URI Options -^^^^^^^^^^^ +### URI Options // component options: START The Test component has no options. @@ -86,9 +82,7 @@ The Test component supports 15 endpoint options which are listed below: // endpoint options: END -[[Test-Example]] -Example -^^^^^^^ +### Example For example, you could write a test case as follows: @@ -105,14 +99,11 @@ method], your test case will perform the necessary assertions. To see how you can set other expectations on the test endpoint, see the link:mock.html[Mock] component. -[[Test-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] * link:getting-started.html[Getting Started] -* link:spring-testing.html[Spring Testing] - +* link:spring-testing.html[Spring Testing] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/timer-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/timer-component.adoc b/camel-core/src/main/docs/timer-component.adoc index 5eb25eb..e8eb075 100644 --- a/camel-core/src/main/docs/timer-component.adoc +++ b/camel-core/src/main/docs/timer-component.adoc @@ -1,11 +1,9 @@ -# Timer Component +## Timer Component The *timer:* component is used to generate message exchanges when a timer fires You can only consume events from this endpoint. -[[Timer-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] -------------------- @@ -32,9 +30,7 @@ link:how-do-i-specify-time-period-in-a-human-friendly-syntax.html[human friendly syntax]. -[[Timer-Options]] -Options -^^^^^^^ +### Options // component options: START The Timer component has no options. @@ -66,9 +62,7 @@ The Timer component supports 13 endpoint options which are listed below: // endpoint options: END -[[Timer-ExchangeProperties]] -Exchange Properties -^^^^^^^^^^^^^^^^^^^ +### Exchange Properties When the timer is fired, it adds the following information as properties to the `Exchange`: @@ -88,9 +82,7 @@ to the `Exchange`: |`Exchange.TIMER_COUNTER` |`Long` |*Camel 2.8:* The current fire counter. Starts from 1. |======================================================================= -[[Timer-Sample]] -Sample -^^^^^^ +### Sample To set up a route that generates an event every 60 seconds: @@ -115,13 +107,9 @@ And the route in Spring DSL: </route> ------------------------------------------------------------- -[[Timer-Firingassoonaspossible]] -Firing as soon as possible -++++++++++++++++++++++++++ +#### Firing as soon as possible -[[Timer-AvailableasofCamel2.17]] -Available as of Camel 2.17 -++++++++++++++++++++++++++ +#### Available as of Camel 2.17 You may want to fire messages in a Camel route as soon as possible you can use a negative delay: @@ -143,9 +131,7 @@ reached. If you don't specify a repeatCount then the timer will continue firing messages until the route will be stopped. -[[Timer-Firingonlyonce]] -Firing only once -++++++++++++++++ +#### Firing only once *Available as of Camel 2.8* @@ -160,14 +146,11 @@ starting the route. To do that you use the repeatCount option as shown: </route> ------------------------------------------------- -[[Timer-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] * link:getting-started.html[Getting Started] -* link:quartz.html[Quartz] - +* link:quartz.html[Quartz] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/tokenize-language.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/tokenize-language.adoc b/camel-core/src/main/docs/tokenize-language.adoc index ee82fdf..a93b725 100644 --- a/camel-core/src/main/docs/tokenize-language.adoc +++ b/camel-core/src/main/docs/tokenize-language.adoc @@ -1,4 +1,4 @@ -# Tokenize Language +## Tokenize Language The tokenizer language is a built-in language in camel-core, which is most often used only with the link:splitter.html[Splitter] EIP to split @@ -11,9 +11,7 @@ language is recommended as it offers a faster, more efficient tokenization specifically for XML documents. For more details see link:splitter.html[Splitter]. -[[Tokenize-Options]] -Tokenize Options -^^^^^^^^^^^^^^^^ +### Tokenize Options // language options: START The Tokenize language supports 10 options which are listed below. @@ -36,4 +34,4 @@ The Tokenize language supports 10 options which are listed below. | trim | true | Boolean | Whether to trim the value to remove leading and trailing whitespaces and line breaks |======================================================================= {% endraw %} -// language options: END +// language options: END \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/validator-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/validator-component.adoc b/camel-core/src/main/docs/validator-component.adoc index 1ba29d0..70af5af 100644 --- a/camel-core/src/main/docs/validator-component.adoc +++ b/camel-core/src/main/docs/validator-component.adoc @@ -1,4 +1,4 @@ -# Validator Component +## Validator Component The Validation component performs XML validation of the message body using the JAXP Validation API and based on any of the supported XML @@ -15,9 +15,7 @@ Syntax] The link:msv.html[MSV] component also supports http://relaxng.org/[RelaxNG XML Syntax]. -[[Validation-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ----------------------------------- @@ -49,9 +47,7 @@ for this component when using *Camel 2.8* or older: From Camel 2.9 onwards the link:validation.html[Validation] component is provided directly in the camel-core. -[[Validation-Options]] -Options -^^^^^^^ +### Options // component options: START The Validator component supports 1 options which are listed below. @@ -92,9 +88,7 @@ The Validator component supports 12 endpoint options which are listed below: // endpoint options: END -[[Validation-Example]] -Example -^^^^^^^ +### Example The following http://svn.apache.org/repos/asf/camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/component/validator/camelContext.xml[example] @@ -103,9 +97,7 @@ goes to one of two endpoints, either *mock:valid* or *mock:invalid* based on whether or not the XML matches the given schema (which is supplied on the classpath). -[[Validation-Advanced:JMXmethodclearCachedSchema]] -Advanced: JMX method clearCachedSchema -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Advanced: JMX method clearCachedSchema Since *Camel 2.17*, you can force that the cached schema in the validator endpoint is cleared and reread with the next process call with @@ -113,12 +105,9 @@ the JMX operation `clearCachedSchema. `You can also use this method to programmatically clear the cache. This method is available on the `ValidatorEndpoint `class`.` -[[Validation-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] -* link:getting-started.html[Getting Started] - +* link:getting-started.html[Getting Started] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/vm-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/vm-component.adoc b/camel-core/src/main/docs/vm-component.adoc index 61bc85e..af20a7a 100644 --- a/camel-core/src/main/docs/vm-component.adoc +++ b/camel-core/src/main/docs/vm-component.adoc @@ -1,4 +1,4 @@ -# VM Component +## VM Component The *vm:* component provides asynchronous http://www.eecs.harvard.edu/~mdw/proj/seda/[SEDA] behavior, exchanging @@ -13,9 +13,7 @@ this mechanism to communicate across web applications (provided that VM is an extension to the link:seda.html[Seda] component. -[[VM-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] ---------------------- @@ -58,9 +56,7 @@ from("direct:foo").to("vm:bar"); from("vm:bar?concurrentConsumers=5").to("file://output"); --------------------------------------------------------- -[[VM-Options]] -Options -^^^^^^^ +### Options // component options: START The VM component supports 3 options which are listed below. @@ -111,9 +107,7 @@ The VM component supports 17 endpoint options which are listed below: See the link:seda.html[Seda] component for options and other important usage details as the same rules apply to the link:vm.html[Vm] component. -[[VM-Samples]] -Samples -^^^^^^^ +### Samples In the route below we send exchanges across CamelContext instances to a VM queue named `order.email`: @@ -131,13 +125,10 @@ deployed in another `.war` application): from("vm:order.email").bean(MyOrderEmailSender.class); ------------------------------------------------------ -[[VM-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] * link:getting-started.html[Getting Started] -* link:seda.html[Seda] - +* link:seda.html[Seda] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/xpath-language.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/xpath-language.adoc b/camel-core/src/main/docs/xpath-language.adoc index bf86be9..20e0cd3 100644 --- a/camel-core/src/main/docs/xpath-language.adoc +++ b/camel-core/src/main/docs/xpath-language.adoc @@ -1,4 +1,4 @@ -# XPath Language +## XPath Language Camel supports http://www.w3.org/TR/xpath[XPath] to allow an link:expression.html[Expression] or link:predicate.html[Predicate] to be @@ -33,9 +33,7 @@ from("queue:foo"). otherwise().to("queue:others"); ------------------------------------------- -[[XPath-Options]] -XPath Language options -^^^^^^^^^^^^^^^^^^^^^^ +### XPath Language options // language options: START The XPath language supports 8 options which are listed below. @@ -58,16 +56,12 @@ The XPath language supports 8 options which are listed below. {% endraw %} // language options: END -[[XPath-Namespaces]] -Namespaces -^^^^^^^^^^ +### Namespaces You can easily use namespaces with XPath expressions using the Namespaces helper class. -[[XPath-Variables]] -Variables -^^^^^^^^^ +### Variables Variables in XPath is defined in different namespaces. The default namespace is `http://camel.apache.org/schema/spring`. @@ -94,18 +88,14 @@ Camel will resolve variables according to either: * namespace given * no namespace given -[[XPath-Namespacegiven]] -Namespace given -+++++++++++++++ +#### Namespace given If the namespace is given then Camel is instructed exactly what to return. However when resolving either *in* or *out* Camel will try to resolve a header with the given local part first, and return it. If the local part has the value *body* then the body is returned instead. -[[XPath-Nonamespacegiven]] -No namespace given -++++++++++++++++++ +#### No namespace given If there is no namespace given then Camel resolves only based on the local part. Camel will try to resolve a variable in the following steps: @@ -115,9 +105,7 @@ fluent builder * from message.in.header if there is a header with the given key * from exchange.properties if there is a property with the given key -[[XPath-Functions]] -Functions -^^^^^^^^^ +### Functions Camel adds the following XPath functions that can be used to access the exchange: @@ -148,9 +136,7 @@ Here's an example showing some of these functions in use. And the new functions introduced in Camel 2.5: -[[XPath-UsingXMLconfiguration]] -Using XML configuration -^^^^^^^^^^^^^^^^^^^^^^^ +### Using XML configuration If you prefer to configure your routes in your link:spring.html[Spring] XML file then you can use XPath expressions as follows @@ -182,9 +168,7 @@ See also this http://camel.465427.n5.nabble.com/fail-filter-XPATH-camel-td476424.html[discussion on the mailinglist] about using your own namespaces with xpath -[[XPath-Settingresulttype]] -Setting result type -^^^^^^^^^^^^^^^^^^^ +### Setting result type The link:xpath.html[XPath] expression will return a result type using native XML objects such as `org.w3c.dom.NodeList`. But many times you @@ -218,9 +202,7 @@ Where we use the xpath function concat to prefix the order name with `foo-`. In this case we have to specify that we want a String as result type so the concat function works. -[[XPath-UsingXPathonHeaders]] -Using XPath on Headers -^^^^^^^^^^^^^^^^^^^^^^ +### Using XPath on Headers *Available as of Camel 2.11* @@ -237,9 +219,7 @@ shown: xpath("/invoice/@orderType = 'premium'", "invoiceDetails") ------------------------------------------------------------ -[[XPath-Examples]] -Examples -^^^^^^^^ +### Examples Here is a simple http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/XPathFilterTest.java[example] @@ -260,9 +240,7 @@ which values is *Kong*. + And the spring XML equivalent of the route: -[[XPath-XPathinjection]] -XPath injection -~~~~~~~~~~~~~~~ +### XPath injection You can use link:bean-integration.html[Bean Integration] to invoke a method on a bean and use various languages such as XPath to extract a @@ -293,9 +271,7 @@ public class Foo { } ---------------------------------------------------------------------------------------------------------- -[[XPath-UsingXPathBuilderwithoutanExchange]] -Using XPathBuilder without an Exchange -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using XPathBuilder without an Exchange *Available as of Camel 2.3* @@ -335,9 +311,7 @@ do it a bit simpler: String name = XPathBuilder.xpath("foo/bar").evaluate(context, "<foo><bar>cheese</bar></foo>"); -------------------------------------------------------------------------------------------------- -[[XPath-UsingSaxonwithXPathBuilder]] -Using Saxon with XPathBuilder -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using Saxon with XPathBuilder *Available as of Camel 2.3* @@ -353,9 +327,7 @@ Using ObjectModel The easy one -[[XPath-SettingacustomXPathFactoryusingSystemProperty]] -Setting a custom XPathFactory using System Property -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Setting a custom XPathFactory using System Property *Available as of Camel 2.3* @@ -382,9 +354,7 @@ To use Apache Xerces you can configure the system property -Djavax.xml.xpath.XPathFactory=org.apache.xpath.jaxp.XPathFactoryImpl --------------------------------------------------------------------- -[[XPath-EnablingSaxonfromSpringDSL]] -Enabling Saxon from Spring DSL -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Enabling Saxon from Spring DSL *Available as of Camel 2.10* @@ -412,9 +382,7 @@ Shortcut <xpath saxon="true" resultType="java.lang.String">current-dateTime()</xpath> ---------------------------------------------------------------------------- -[[XPath-Namespaceauditingtoaiddebugging]] -Namespace auditing to aid debugging -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Namespace auditing to aid debugging *Available as of Camel 2.10* @@ -435,9 +403,7 @@ Therefore, the utmost we can do is assist you in debugging such issues by adding two new features to the XPath Expression Language and are thus accesible from both predicates and expressions. -[[XPath-LoggingtheNamespaceContextofyourXPathexpressionpredicate]] -Logging the Namespace Context of your XPath expression/predicate -++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +#### Logging the Namespace Context of your XPath expression/predicate Every time a new XPath expression is created in the internal pool, Camel will log the namespace context of the expression under the @@ -460,9 +426,7 @@ logger such as `org.apache.camel` or the root logger link:xpath.html[Auditing Namespaces], in which case the logging will occur on the INFO level -[[XPath-Auditingnamespaces]] -Auditing namespaces -+++++++++++++++++++ +#### Auditing namespaces Camel is able to discover and dump all namespaces present on every incoming message before evaluating an XPath expression, providing all @@ -512,9 +476,7 @@ the following: xmlns:b=[http://apache.org/camelA, http://apache.org/camelB]} -------------------------------------------------------------------------------------------------- -[[XPath-Loadingscriptfromexternalresource]] -Loading script from external resource -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Loading script from external resource *Available as of Camel 2.11* @@ -528,8 +490,6 @@ eg to refer to a file on the classpath you can do: .setHeader("myHeader").xpath("resource:classpath:myxpath.txt", String.class) ---------------------------------------------------------------------------- -[[XPath-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies -The XPath language is part of camel-core. +The XPath language is part of camel-core. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/xslt-component.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/xslt-component.adoc b/camel-core/src/main/docs/xslt-component.adoc index 30e171d..fb9c48b 100644 --- a/camel-core/src/main/docs/xslt-component.adoc +++ b/camel-core/src/main/docs/xslt-component.adoc @@ -1,12 +1,10 @@ -# XSLT Component +## XSLT Component The *xslt:* component allows you to process a message using an http://www.w3.org/TR/xslt[XSLT] template. This can be ideal when using link:templating.html[Templating] to generate respopnses for requests. -[[XSLT-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] --------------------------- @@ -64,9 +62,7 @@ for this component when using *Camel 2.8* or older: From Camel 2.9 onwards the link:xslt.html[XSLT] component is provided directly in the camel-core. -[[XSLT-Options]] -Options -^^^^^^^ +### Options // component options: START The XSLT component supports 5 options which are listed below. @@ -116,9 +112,7 @@ The XSLT component supports 17 endpoint options which are listed below: // endpoint options: END -[[XSLT-UsingXSLTendpoints]] -Using XSLT endpoints -^^^^^^^^^^^^^^^^^^^^ +### Using XSLT endpoints For example you could use something like @@ -141,9 +135,7 @@ from("activemq:My.Queue"). to("activemq:Another.Queue"); -------------------------------------- -[[XSLT-GettingParametersintotheXSLTtoworkwith]] -Getting Parameters into the XSLT to work with -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Getting Parameters into the XSLT to work with By default, all headers are added as parameters which are available in the XSLT. + @@ -168,9 +160,7 @@ available: <xsl:template ...> ------------------------------ -[[XSLT-SpringXMLversions]] -Spring XML versions -^^^^^^^^^^^^^^^^^^^ +### Spring XML versions To use the above examples in Spring XML you would use something like @@ -191,9 +181,7 @@ case] along with http://svn.apache.org/repos/asf/camel/trunk/components/camel-spring/src/test/resources/org/apache/camel/spring/processor/XsltTest-context.xml[its Spring XML] if you want a concrete example. -[[XSLT-Usingxsl:include]] -Using xsl:include -^^^^^^^^^^^^^^^^^ +### Using xsl:include *Camel 2.2 or older* + If you use xsl:include in your XSL files then in Camel 2.2 or older it @@ -251,9 +239,7 @@ You can also refer back in the paths such as Which then will resolve the xsl file under `org/apache/camel/component`. -[[XSLT-Usingxsl:includeanddefaultprefix]] -Using xsl:include and default prefix -++++++++++++++++++++++++++++++++++++ +#### Using xsl:include and default prefix When using xsl:include such as: @@ -294,9 +280,7 @@ the endpoint was configured with "file:" as prefix. + match. And have both file and classpath loading. But that would be unusual, as most people either use file or classpath based resources. -[[XSLT-UsingSaxonextensionfunctions]] -Using Saxon extension functions -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Using Saxon extension functions Since Saxon 9.2, writing extension functions has been supplemented by a new mechanism, referred to @@ -345,9 +329,7 @@ Spring example:  -[[XSLT-Dynamicstylesheets]] -Dynamic stylesheets -^^^^^^^^^^^^^^^^^^^ +### Dynamic stylesheets To provide a dynamic stylesheet at runtime you can define a dynamic URI. See link:how-to-use-a-dynamic-uri-in-to.html[How to use a dynamic URI in @@ -358,9 +340,7 @@ to()] for more information. define a stylesheet to use instead of what is configured on the endpoint URI. This allows you to provide a dynamic stylesheet at runtime. -[[XSLT-Accessingwarnings,errorsandfatalErrorsfromXSLTErrorListener]] -Accessing warnings, errors and fatalErrors from XSLT ErrorListener -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Accessing warnings, errors and fatalErrors from XSLT ErrorListener *Available as of Camel 2.14* @@ -396,9 +376,7 @@ that contains the message in the `getMessage()` method on the exception. The exception is stored on the Exchange as a warning with the key `Exchange.XSLT_WARNING.` -[[XSLT-NotesonusingXSLTandJavaVersions]] -Notes on using XSLT and Java Versions -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Notes on using XSLT and Java Versions Here are some observations from Sameer, a Camel user, which he kindly shared with us: @@ -439,12 +417,9 @@ for the jvm or as specified by the container. Hope this post saves newbie Camel riders some time. ________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ -[[XSLT-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] -* link:getting-started.html[Getting Started] - +* link:getting-started.html[Getting Started] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/xtokenize-language.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/xtokenize-language.adoc b/camel-core/src/main/docs/xtokenize-language.adoc index b1f1761..e27d9b7 100644 --- a/camel-core/src/main/docs/xtokenize-language.adoc +++ b/camel-core/src/main/docs/xtokenize-language.adoc @@ -1,4 +1,4 @@ -# XML Tokenize Language +## XML Tokenize Language The xml tokenizer language is a built-in language in camel-core, which is a truly XML-aware tokenizer that can be used with the Splitter as the @@ -10,9 +10,7 @@ Tokenizer. For more details see link:splitter.html[Splitter]. -[[XMLTokenizer-Options]] -XML Tokenizer Options -^^^^^^^^^^^^^^^^^^^^^ +### XML Tokenizer Options // language options: START The XML Tokenize language supports 4 options which are listed below. @@ -29,4 +27,4 @@ The XML Tokenize language supports 4 options which are listed below. | trim | true | Boolean | Whether to trim the value to remove leading and trailing whitespaces and line breaks |======================================================================= {% endraw %} -// language options: END +// language options: END \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/camel-core/src/main/docs/zip-dataformat.adoc ---------------------------------------------------------------------- diff --git a/camel-core/src/main/docs/zip-dataformat.adoc b/camel-core/src/main/docs/zip-dataformat.adoc index 9a400ca..ba85881 100644 --- a/camel-core/src/main/docs/zip-dataformat.adoc +++ b/camel-core/src/main/docs/zip-dataformat.adoc @@ -1,4 +1,4 @@ -# Zip Deflate Compression DataFormat +## Zip Deflate Compression DataFormat The Zip link:data-format.html[Data Format] is a message compression and de-compression format. Messages marshalled using Zip compression can be @@ -14,9 +14,7 @@ Which means that when using big files, the entire file content is loaded into memory. This is subject to change in the future, to allow a streaming based solution to have a low memory footprint. -[[ZipDataFormat-Options]] -Options -^^^^^^^ +### Options // dataformat options: START The Zip Deflate Compression dataformat supports 2 options which are listed below. @@ -33,9 +31,7 @@ The Zip Deflate Compression dataformat supports 2 options which are listed below {% endraw %} // dataformat options: END -[[ZipDataFormat-Marshal]] -Marshal -^^^^^^^ +### Marshal In this example we marshal a regular text/XML payload to a compressed payload employing zip compression `Deflater.BEST_COMPRESSION` and send @@ -54,9 +50,7 @@ send it as from("direct:start").marshal().zip().to("activemq:queue:MY_QUEUE"); ------------------------------------------------------------------- -[[ZipDataFormat-Unmarshal]] -Unmarshal -^^^^^^^^^ +### Unmarshal In this example we unmarshal a zipped payload from an ActiveMQ queue called MY_QUEUE to its original format, and forward it for processing to @@ -69,9 +63,7 @@ unmarshalling to avoid errors. from("activemq:queue:MY_QUEUE").unmarshal().zip().process(new UnZippedMessageProcessor()); ------------------------------------------------------------------------------------------- -[[ZipDataFormat-Dependencies]] -Dependencies -^^^^^^^^^^^^ +### Dependencies This data format is provided in *camel-core* so no additional -dependencies are needed. +dependencies are needed. \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/components/camel-ahc-ws/src/main/docs/ahc-ws-component.adoc ---------------------------------------------------------------------- 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 c35e7f1..019fa5d 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 @@ -1,4 +1,4 @@ -# AHC Websocket Component +## AHC Websocket Component *Available as of Camel 2.14* @@ -23,9 +23,7 @@ their `pom.xml` for this component: </dependency> ------------------------------------------------------------ -[[AHC-WS-URIFormat]] -URI Format -^^^^^^^^^^ +### URI Format [source,java] ------------------------------------------------- @@ -35,9 +33,7 @@ ahc-wss://hostname[:port][/resourceUri][?options] Will by default use port 80 for ahc-ws and 443 for ahc-wss. -[[AHC-WS-AHC-WSOptions]] -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. @@ -97,17 +93,13 @@ The AHC Websocket component supports 19 endpoint options which are listed below: // endpoint options: END -[[AHC-WS-WritingandReadingDataoverWebsocket]] -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. -[[AHC-WS-ConfiguringURItoWriteorReadData]] -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. @@ -153,9 +145,7 @@ And the equivalent Spring sample:  -[[AHC-WS-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -163,5 +153,4 @@ See Also * link:getting-started.html[Getting Started] * link:../../../../camel-ahc/src/main/docs/readme.html[AHC] -* link:atmosphere-websocket.html[Atmosphere-Websocket] - +* link:atmosphere-websocket.html[Atmosphere-Websocket] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/components/camel-ahc/src/main/docs/ahc-component.adoc ---------------------------------------------------------------------- diff --git a/components/camel-ahc/src/main/docs/ahc-component.adoc b/components/camel-ahc/src/main/docs/ahc-component.adoc index e9e97d7..72369c9 100644 --- a/components/camel-ahc/src/main/docs/ahc-component.adoc +++ b/components/camel-ahc/src/main/docs/ahc-component.adoc @@ -1,4 +1,4 @@ -# AHC Component +## AHC Component *Available as of Camel 2.8* @@ -22,9 +22,7 @@ for this component: </dependency> ------------------------------------------------------------ -[[AHC-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] --------------------------------------------------- @@ -37,9 +35,7 @@ Will by default use port 80 for HTTP and 443 for HTTPS. You can append query options to the URI in the following format, `?option=value&option=value&...` -[[AHC-AhcEndpointOptions]] -AhcEndpoint Options -^^^^^^^^^^^^^^^^^^^ +### AhcEndpoint Options @@ -79,9 +75,7 @@ The AHC component supports 14 endpoint options which are listed below: -[[AHC-AhcComponentOptions]] -AhcComponent Options -^^^^^^^^^^^^^^^^^^^^ +### AhcComponent Options @@ -124,9 +118,7 @@ propagate those options to configure/override a custom option. Options set on endpoints will always take precedence over options from the `AhcComponent`. -[[AHC-MessageHeaders]] -Message Headers -^^^^^^^^^^^^^^^ +### Message Headers [width="100%",cols="10%,10%,80%",options="header",] |======================================================================= @@ -152,18 +144,14 @@ a content type, such as `text/html`. provide a content encoding, such as `gzip`. |======================================================================= -[[AHC-MessageBody]] -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, so headers are preserved during routing. Additionally Camel will add the HTTP response headers as well to the OUT message headers. -[[AHC-Responsecode]] -Response code -^^^^^^^^^^^^^ +### Response code Camel will handle according to the HTTP response code: @@ -181,9 +169,7 @@ The option, `throwExceptionOnFailure`, can be set to `false` to prevent the `AhcOperationFailedException` from being thrown for failed response codes. This allows you to get any response from the remote server. -[[AHC-AhcOperationFailedException]] -AhcOperationFailedException -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### AhcOperationFailedException This exception contains the following information: @@ -193,9 +179,7 @@ This exception contains the following information: * Response body as a `java.lang.String`, if server provided a body as response -[[AHC-CallingusingGETorPOST]] -Calling using GET or POST -^^^^^^^^^^^^^^^^^^^^^^^^^ +### Calling using GET or POST The following algorithm is used to determine if either `GET` or `POST` HTTP method should be used: + @@ -205,9 +189,7 @@ HTTP method should be used: + 4. `POST` if there is data to send (body is not null). + 5. `GET` otherwise. -[[AHC-ConfiguringURItocall]] -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`, @@ -241,9 +223,7 @@ from("direct:start") .to("ahc:http://oldhost"); ------------------------------------------------------------- -[[AHC-ConfiguringURIParameters]] -Configuring URI Parameters -^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Configuring URI Parameters The *ahc* producer supports URI parameters to be sent to the HTTP server. The URI parameters can either be set directly on the endpoint @@ -264,9 +244,7 @@ from("direct:start") .to("ahc:http://oldhost"); ------------------------------------------------------------------------------- -[[AHC-HowtosetthehttpmethodtotheHTTPproducer]] -How to set the http method to the HTTP producer -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### How to set the http method to the HTTP producer The HTTP component provides a way to set the HTTP request method by setting the message header. Here is an example; @@ -295,9 +273,7 @@ And the equivalent Spring sample: </camelContext> --------------------------------------------------------------------- -[[AHC-Configuringcharset]] -Configuring charset -^^^^^^^^^^^^^^^^^^^ +### Configuring charset If you are using `POST` to send data you can configure the `charset` using the `Exchange` property: @@ -307,9 +283,7 @@ using the `Exchange` property: exchange.setProperty(Exchange.CHARSET_NAME, "iso-8859-1"); ---------------------------------------------------------- -[[AHC-URIParametersfromtheendpointURI]] -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 @@ -322,9 +296,7 @@ web browser. Camel does no tricks here. template.sendBody("ahc:http://www.google.com/search?q=Camel", null); -------------------------------------------------------------------- -[[AHC-URIParametersfromtheMessage]] -URI Parameters from the Message -+++++++++++++++++++++++++++++++ +#### URI Parameters from the Message [source,java] --------------------------------------------------------------------- @@ -337,9 +309,7 @@ template.sendBody("ahc:http://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. -[[AHC-GettingtheResponseCode]] -Getting the Response Code -+++++++++++++++++++++++++ +#### Getting the Response Code You can get the HTTP response code from the AHC component by getting the value from the Out message header with `Exchange.HTTP_RESPONSE_CODE`. @@ -355,9 +325,7 @@ Exchange exchange = template.send("ahc:http://www.google.com/search", new Proces int responseCode = out.getHeader(Exchange.HTTP_RESPONSE_CODE, Integer.class); ---------------------------------------------------------------------------------------------- -[[AHC-ConfiguringAsyncHttpClient]] -Configuring AsyncHttpClient -^^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Configuring AsyncHttpClient The `AsyncHttpClient` client uses a `AsyncHttpClientConfig` to configure the client. See the documentation at + @@ -399,9 +367,7 @@ from("direct:start") .to("ahc:http://localhost:8080/foo?clientConfig.maxRequestRetry=3&clientConfig.followRedirects=true") --------------------------------------------------------------------------------------------------------- -[[AHC-SSLSupport]] -SSL Support (HTTPS) -^^^^^^^^^^^^^^^^^^^ +### SSL Support (HTTPS) [[AHC-UsingtheJSSEConfigurationUtility]] Using the JSSE Configuration Utility @@ -453,9 +419,7 @@ Spring DSL based configuration of endpoint ... ---------------------------------------------------------------------------------- -[[AHC-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] @@ -464,5 +428,4 @@ See Also * link:jetty.html[Jetty] * link:http.html[HTTP] -* link:http4.html[HTTP4] - +* link:http4.html[HTTP4] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/components/camel-amqp/src/main/docs/amqp-component.adoc ---------------------------------------------------------------------- diff --git a/components/camel-amqp/src/main/docs/amqp-component.adoc b/components/camel-amqp/src/main/docs/amqp-component.adoc index 5b34c67..ea76541 100644 --- a/components/camel-amqp/src/main/docs/amqp-component.adoc +++ b/components/camel-amqp/src/main/docs/amqp-component.adoc @@ -1,4 +1,4 @@ -# AMQP Component +## AMQP Component The *amqp:* component supports the http://www.amqp.org/[AMQP 1.0 protocol] using the JMS Client API of the http://qpid.apache.org/[Qpid] @@ -20,18 +20,14 @@ for this component: </dependency> ------------------------------------------------------------------------------------------------ -[[AMQP-URIformat]] -URI format -^^^^^^^^^^ +### URI format [source,java] --------------------------------------------- amqp:[queue:|topic:]destinationName[?options] --------------------------------------------- -[[AMQP-AMQPOptions]] -AMQP Options -^^^^^^^^^^^^ +### AMQP Options You can specify all of the various configuration options of the link:../../../../camel-jms/src/main/docs/readme.html[JMS] component after the destination name. @@ -232,9 +228,7 @@ The AMQP component supports 86 endpoint options which are listed below: -[[AMQP-Usage]] -Usage -^^^^^ +### Usage As AMQP component is inherited from JMS component, the usage of the former is almost identical to the latter: @@ -252,9 +246,7 @@ from(...). to("amqp:topic:notify"); ------------------------------------ -[[AMQP-ConfiguringAMQPcomponent]] -Configuring AMQP component -^^^^^^^^^^^^^^^^^^^^^^^^^^ +### Configuring AMQP component Starting from the Camel 2.16.1 you can also use the `AMQPComponent#amqp10Component(String connectionURI)` factory method to @@ -338,9 +330,7 @@ AMQPConnectionDetails amqpConnection() { } ----------------------------------------------- -[[AMQP-Usingtopics]] -Using topics -^^^^^^^^^^^^ +### Using topics To have using topics working with `camel-amqp` you need to configure the component to use `topic://` as topic prefix, as shown below: @@ -361,12 +351,9 @@ Keep in mind that both  `AMQPComponent#amqpComponent()` methods and `AMQPConnectionDetails` pre-configure the component with the topic prefix, so you don't have to configure it explicitly. -[[AMQP-SeeAlso]] -See Also -^^^^^^^^ +### See Also * link:configuring-camel.html[Configuring Camel] * link:component.html[Component] * link:endpoint.html[Endpoint] -* link:getting-started.html[Getting Started] - +* link:getting-started.html[Getting Started] \ No newline at end of file http://git-wip-us.apache.org/repos/asf/camel/blob/28429681/components/camel-apns/src/main/docs/apns-component.adoc ---------------------------------------------------------------------- diff --git a/components/camel-apns/src/main/docs/apns-component.adoc b/components/camel-apns/src/main/docs/apns-component.adoc index 09a1a32..0d9c4b0 100644 --- a/components/camel-apns/src/main/docs/apns-component.adoc +++ b/components/camel-apns/src/main/docs/apns-component.adoc @@ -1,4 +1,4 @@ -# APNS Component +## APNS Component *Available as of Camel 2.8* @@ -30,9 +30,7 @@ for this component: </dependency> ------------------------------------------------------------ -[[APNS-URIformat]] -URI format -^^^^^^^^^^ +### URI format To send notifications: @@ -48,9 +46,7 @@ To consume feedback: apns:consumer[?options] ----------------------- -[[APNS-Options]] -Options -^^^^^^^ +### Options @@ -107,9 +103,7 @@ The APNS component supports 21 endpoint options which are listed below: You can append query options to the URI in the following format, `?option=value&option=value&...` -[[APNS-Component]] -Component -+++++++++ +#### Component The `ApnsComponent` must be configured with a `com.notnoop.apns.ApnsService`. The service can be created and @@ -119,18 +113,14 @@ further below for an example. And as well in the https://svn.apache.org/repos/asf/camel/trunk/components/camel-apns/[test source code]. -[[APNS-Exchangedataformat]] -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. -[[APNS-MessageHeaders]] -Message Headers -^^^^^^^^^^^^^^^ +### Message Headers Camel Apns uses these headers. @@ -145,9 +135,7 @@ onwards APNS_NOTIFICATION is used for sending message body as com.notnoop.apns.ApnsNotification types. |======================================================================= -[[APNS-ApnsServiceFactorybuildercallback]] -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` @@ -172,13 +160,9 @@ ApnsServiceFactory proxiedApnsServiceFactory = new ApnsServiceFactory(){ }; ------------------------------------------------------------------------------------------- -[[APNS-Samples]] -Samples -^^^^^^^ +### Samples -[[APNS-CamelXmlroute]] -Camel Xml route -+++++++++++++++ +#### Camel Xml route [source,xml] -------------------------------------------------------------------------------------------------------------------------------------------------------------------- @@ -234,9 +218,7 @@ Camel Xml route </beans> -------------------------------------------------------------------------------------------------------------------------------------------------------------------- -[[APNS-CamelJavaroute]] -Camel Java route -++++++++++++++++ +#### Camel Java route [[APNS-Createcamelcontextanddeclareapnscomponentprogrammatically]] Create camel context and declare apns component programmatically @@ -301,13 +283,10 @@ from("apns:consumer?initialDelay=10&delay=3600&timeUnit=SECONDS") .to("mock:result"); -------------------------------------------------------------------------- -[[APNS-SeeAlso]] -See Also -^^^^^^^^ +### See Also * http://camel.apache.org/component.html[Component] * http://camel.apache.org/endpoint.html[Endpoint] * http://blog.xebia.fr/2010/09/30/creer-un-composant-apache-camel-de-connexion-a-lapns-1-sur-3/[Blog -about using APNS (in french)] - +about using APNS (in french)] \ No newline at end of file