Author: buildbot
Date: Wed Aug 24 16:20:01 2016
New Revision: 995814

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/ahc.html
    websites/production/camel/content/amqp.html
    websites/production/camel/content/aws-cw.html
    websites/production/camel/content/aws-ddb.html
    websites/production/camel/content/book-component-appendix.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/cache/main.pageCache

Modified: websites/production/camel/content/ahc.html
==============================================================================
--- websites/production/camel/content/ahc.html (original)
+++ websites/production/camel/content/ahc.html Wed Aug 24 16:20:01 2016
@@ -86,7 +86,7 @@
        <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 
id="AHC-AsyncHttpClient(AHC)Component">Async Http Client (AHC) 
Component</h2><p><strong>Available as of Camel 2.8</strong></p><p>The 
<strong>ahc:</strong> component provides HTTP based <a shape="rect" 
href="endpoint.html">endpoints</a> for consuming external HTTP resources (as a 
client to call external servers using HTTP).<br clear="none"> The component 
uses the <a shape="rect" class="external-link" 
href="https://github.com/AsyncHttpClient/async-http-client"; 
rel="nofollow">Async Http Client</a> library.</p><p>Maven users will need to 
add the following dependency to their <code>pom.xml</code> for this 
component:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 
id="AHC-AsyncHttpClient(AHC)Component">Async Http Client (AHC) 
Component</h2><p><strong>Available as of Camel 
2.8</strong></p><p>The&#160;<strong><code>ahc:</code></strong> component 
provides HTTP based <a shape="rect" href="endpoint.html">endpoints</a> for 
consuming external HTTP resources (as a client to call external servers using 
HTTP).<br clear="none"> The component uses the <a shape="rect" 
class="external-link" 
href="https://github.com/AsyncHttpClient/async-http-client"; 
rel="nofollow">Async Http Client</a> library.</p><p>Maven users will need to 
add the following dependency to their <strong><code>pom.xml</code></strong> for 
this component:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-ahc&lt;/artifactId&gt;
@@ -98,9 +98,9 @@
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[ahc:http://hostname[:port][/resourceUri][?options]
 ahc:https://hostname[:port][/resourceUri][?options]
 ]]></script>
-</div></div><p>Will by default use port 80 for HTTP and 443 for 
HTTPS.</p><p>You can append query options to the URI in the following format, 
<code>?option=value&amp;option=value&amp;...</code></p><h3 
id="AHC-AhcEndpointOptions">AhcEndpoint Options</h3><div 
class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>throwExceptionOnFailure</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Option to disable throwing the 
<code>AhcOperationFailedException</code> in case of failed responses from the 
remote server. This allows you to get all responses regardless of the HTTP 
status code.<
 /p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>bridgeEndpoint</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>If the option is true, then the 
Exchange.HTTP_URI header is ignored, and use the endpoint's URI for request. 
You may also set the <strong>throwExcpetionOnFailure</strong> to be false to 
let the AhcProducer send all the fault response back.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>transferException</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>If enabled and an <a shape="rect" 
href="exchange.html">Exchange</a> failed processing on the consumer side, and 
if the caused <code>Exception</code> was send back serialized in the response 
as a <code>application/x-java-serialized-object</code> content type (for 
example using <a sh
 ape="rect" href="jetty.html">Jetty</a> or <a shape="rect" 
href="servlet.html">SERVLET</a> Camel components). On the producer side the 
exception will be deserialized and thrown as is, instead of the 
<code>AhcOperationFailedException</code>. The caused exception is required to 
be serialized.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>client</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>To use a custom 
<code>com.ning.http.client.AsyncHttpClient</code>.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To configure the 
<code>AsyncHttpClient</code> to use a custom 
<code>com.ning.http.client.AsyncHttpClientConfig</code> instance. This instance 
replaces any instance configured at t
 he component level.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig.x</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To configure additional properties of the 
<code>com.ning.http.client.AsyncHttpClientConfig</code> instance used by the 
endpoint. Note that configuration options set using this parameter will be 
merged with those set using the <code>clientConfig</code> parameter or the 
instance set at the component level with properties set using this parameter 
taking priority.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig.realm.x</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> To 
configure realm properties of the 
<code>com.ning.http.client.AsyncHttpClientConfig</code> The options whic
 h can be used are the options from 
<code>com.ning.http.client.Realm.RealmBuilder</code>. eg to set scheme, you can 
configure <code>"clientConfig.realm.scheme=DIGEST"</code></p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>binding</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>org.apache.camel.component.ahc.AhcBinding</code>.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sslContextParameters</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> 
Reference to a <code>org.apache.camel.util.jsse.SSLContextParameters</code> in 
the <a shape="rect" href="registry.html">Registry</a>.&#160; This reference 
overrides any configured SSLContextParameters at the component level.&#160; See 
<a shape="rect" href
 ="#AHC-UsingtheJSSEConfigurationUtility">Using the JSSE Configuration 
Utility</a>.&#160; Note that configuring this option will override any SSL/TLS 
configuration options provided through the clientConfig option at the endpoint 
or component level.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>bufferSize</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>4096</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.3:</strong> The initial 
in-memory buffer size used when transferring data between Camel and AHC 
Client.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>connectionClose</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong><strong>Camel 
2.18:&#160;</strong></strong>If this option is true, the producer will add a 
Connection Close header to HTTP Request</p></td></tr></tbod
 y></table></div></div><h3 id="AHC-AhcComponentOptions">AhcComponent 
Options</h3><div class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>client</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>com.ning.http.client.AsyncHttpClient</code>.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To configure the 
<code>AsyncHttpClient</code> to use a custom <code>com.ning.http.clien
 t.AsyncHttpClientConfig</code>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>binding</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>org.apache.camel.component.ahc.AhcBinding</code>.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sslContextParameters</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> To 
configure custom SSL/TLS configuration options at the component level.&#160; 
See&#160; <a shape="rect" href="#AHC-UsingtheJSSEConfigurationUtility">Using 
the JSSE Configuration Utility</a> for more details.&#160; Note that 
configuring this option will override any SSL/TLS configuration options 
provided through the clientConfig option at the endpoint or component 
level.</p></td></tr></tbody>
 </table></div></div><p>Notice that setting any of the options on the 
<code>AhcComponent</code> will propagate those options to <code>AhcEndpoint}}s 
being created. However the {{AhcEndpoint</code> can also configure/override a 
custom option. Options set on endpoints will always take precedence over 
options from the <code>AhcComponent</code>.</p><h3 
id="AHC-MessageHeaders">Message Headers</h3><div 
class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_URI</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>URI to call. Will override 
existing URI set directly on the endpoint.
 </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_PATH</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Request URI's path, the header will be used 
to build the request URI with the HTTP_URI. If the path is start with "/", http 
producer will try to find the relative path based on the Exchange.HTTP_BASE_URI 
header or the 
<code>exchange.getFromEndpoint().getEndpointUri();</code></p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_QUERY</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11 
onwards:</strong> URI parameters. Will override existing URI parameters set 
directly on the endpoint.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_RESPONSE_CODE</code></p></t
 d><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>int</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The HTTP response code from the external server. Is 200 
for OK.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_CHARACTER_ENCODING</code></p></td><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Character encoding.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>Exchange.CONTENT_TYPE</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content type. Is set 
on both the IN and OUT message to provide a content type, such as 
<code>text/html</code>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.CONTENT_ENCODING</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd
 "><p><code>String</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The HTTP content encoding. Is set on both the IN and 
OUT message to provide a content encoding, such as 
<code>gzip</code>.</p></td></tr></tbody></table></div></div><h3 
id="AHC-MessageBody">Message Body</h3><p>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.</p><h3 id="AHC-Responsecode">Response code</h3><p>Camel will 
handle according to the HTTP response code:</p><ul 
class="alternate"><li>Response code is in the range 100..299, Camel regards it 
as a success response.</li><li>Response code is in the range 300..399, Camel 
regards it as a redirection response and will throw a 
<code>AhcOperationFailedException</code> with the 
information.</li><li><p>Response code is 400+, Camel reg
 ards it as an external server failure and will throw a 
<code>AhcOperationFailedException</code> with the information.</p><div 
class="confluence-information-macro confluence-information-macro-tip"><p 
class="title">throwExceptionOnFailure</p><span class="aui-icon aui-icon-small 
aui-iconfont-approve confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>The option, 
<code>throwExceptionOnFailure</code>, can be set to <code>false</code> to 
prevent the <code>AhcOperationFailedException</code> from being thrown for 
failed response codes. This allows you to get any response from the remote 
server.</p></div></div></li></ul><h3 
id="AHC-AhcOperationFailedException">AhcOperationFailedException</h3><p>This 
exception contains the following information:</p><ul class="alternate"><li>The 
HTTP status code</li><li>The HTTP status line (text of the status 
code)</li><li>Redirect location, if server returned a redirect</li><li>Response 
body as a <code>java.lang.String
 </code>, if server provided a body as response</li></ul><h3 
id="AHC-CallingusingGETorPOST">Calling using GET or POST</h3><p>The following 
algorithm is used to determine if either <code>GET</code> or <code>POST</code> 
HTTP method should be used:<br clear="none"> 1. Use method provided in 
header.<br clear="none"> 2. <code>GET</code> if query string is provided in 
header.<br clear="none"> 3. <code>GET</code> if endpoint is configured with a 
query string.<br clear="none"> 4. <code>POST</code> if there is data to send 
(body is not null).<br clear="none"> 5. <code>GET</code> otherwise.</p><h3 
id="AHC-ConfiguringURItocall">Configuring URI to call</h3><p>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, <code>oldhost</code>, using HTTP.</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div><p>The default ports are 80 for HTTP and 443 for 
HTTPS.</p><p>Query options can be specified on the URI using the following 
format: 
<strong><code>?option=value&amp;option=value&amp;...</code></strong></p><h3 
id="AHC-AhcEndpointOptions">AhcEndpoint Options</h3><div 
class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>throwExceptionOnFailure</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Option to disable throwing the 
<strong><code>AhcOperationFailedException</code></strong> in case of failed 
responses from the remote server. This allows you to get all responses 
 regardless of the HTTP status code.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>bridgeEndpoint</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>If the option is true, then 
the&#160;<strong><code>Exchange.HTTP_URI</code></strong> header is ignored, and 
use the endpoint's URI for request. You may also set the 
<strong><code>throwExcpetionOnFailure</code></strong> to be false to let 
the&#160;<strong><code>AhcProducer</code></strong> send all the fault response 
back.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>transferException</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>If enabled and an <a shape="rect" 
href="exchange.html">Exchange</a> failed processing on the consumer side, and 
if the caused <strong><code>Exception</code></stron
 g> was send back serialized in the response as a 
<strong><code>application/x-java-serialized-object</code></strong> content type 
(for example using <a shape="rect" href="jetty.html">Jetty</a> or <a 
shape="rect" href="servlet.html">SERVLET</a> Camel components). On the producer 
side the exception will be deserialized and thrown as is, instead of the 
<strong><code>AhcOperationFailedException</code></strong>. The caused exception 
is required to be serialized.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>client</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>To use a custom 
<strong><code>com.ning.http.client.AsyncHttpClient</code></strong>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenc
 eTd"><p>To configure the <strong><code>AsyncHttpClient</code></strong> to use 
a custom 
<strong><code>com.ning.http.client.AsyncHttpClientConfig</code></strong> 
instance. This instance replaces any instance configured at the component 
level.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig.x</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To configure additional properties of the 
<strong><code>com.ning.http.client.AsyncHttpClientConfig</code></strong> 
instance used by the endpoint. Note that configuration options set using this 
parameter will be merged with those set using the 
<strong><code>clientConfig</code></strong> parameter or the instance set at the 
component level with properties set using this parameter taking 
priority.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig.realm.x</code></p></td><td colspan="
 1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> To 
configure realm properties of the 
<strong><code>com.ning.http.client.AsyncHttpClientConfig</code></strong> The 
options which can be used are the options from 
<strong><code>com.ning.http.client.Realm.RealmBuilder</code></strong>. e.g., to 
set the scheme, you should configure 
<strong><code>clientConfig.realm.scheme=DIGEST</code></strong></p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>binding</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<strong><code>org.apache.camel.component.ahc.AhcBinding</code></strong>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sslContextParameters</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
 colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> 
Reference to a 
<strong><code>org.apache.camel.util.jsse.SSLContextParameters</code></strong> 
in the <a shape="rect" href="registry.html">Registry</a>.&#160; This reference 
overrides any configured SSLContextParameters at the component level.&#160; See 
<a shape="rect" href="#AHC-UsingtheJSSEConfigurationUtility">Using the JSSE 
Configuration Utility</a>.&#160; Note that configuring this option will 
override any SSL/TLS configuration options provided through 
the&#160;<strong><code>clientConfig</code></strong> option at the endpoint or 
component level.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>bufferSize</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>4096</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.10.3:</strong> The initial 
in-memory buffer size used when transferring data between Camel and AHC 
Client.</p></td></tr
 ><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd"><p><code>connectionClose</code></p></td><td colspan="1" 
 >rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p><strong><strong>Camel 
 >2.18:&#160;</strong></strong>If this option is true, the producer will add a 
 >Connection Close header to HTTP 
 >Request</p></td></tr></tbody></table></div></div><h3 
 >id="AHC-AhcComponentOptions">AhcComponent Options</h3><div 
 >class="confluenceTableSmall"><div class="table-wrap"><table 
 >class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
 >class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
 >class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
 >class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
 >rowspan="1" class="confluenceTd"><p><code>client</code></p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p>To u
 se a custom 
<strong><code>com.ning.http.client.AsyncHttpClient</code>.</strong></p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>clientConfig</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To configure the 
<strong><code>AsyncHttpClient</code></strong> to use a custom 
<strong><code>com.ning.http.client.AsyncHttpClientConfig</code></strong>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>binding</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<strong><code>org.apache.camel.component.ahc.AhcBinding</code></strong>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sslContextParameters</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="
 1" class="confluenceTd"><p><strong>Camel 2.9:</strong> To configure custom 
SSL/TLS configuration options at the component level.&#160; See&#160; <a 
shape="rect" href="#AHC-UsingtheJSSEConfigurationUtility">Using the JSSE 
Configuration Utility</a> for more details.&#160; Note that configuring this 
option will override any SSL/TLS configuration options provided through the 
clientConfig option at the endpoint or component 
level.</p></td></tr></tbody></table></div></div><p>Notice that setting any of 
the options on the&#160;<strong><code>AhcComponent</code></strong> will 
propagate those options to 
the&#160;<strong><code>AhcEndpoint</code></strong>(s) being created. However, 
the&#160;<strong><code>AhcEndpoint</code></strong> can also configure/override 
a custom option. Options set on endpoints will always take precedence over 
options from the <strong><code>AhcComponent</code>.</strong></p><h3 
id="AHC-MessageHeaders">Message Headers</h3><div 
class="confluenceTableSmall"><div class="table-w
 rap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_URI</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>URI to call. Will override 
existing URI set directly on the endpoint.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_PATH</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Request URI's path, the header 
will be used to build the request URI with the 
<strong><code>HTTP_URI</code></strong>. If the path is start with "/", http 
producer will try to find the relative path based o
 n the&#160;<strong><code>Exchange.HTTP_BASE_URI</code></strong> header or the 
<code><strong>exchange.getFromEndpoint().getEndpointUri()</strong>;</code></p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_QUERY</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11 
onwards:</strong> URI parameters. Will override existing URI parameters set 
directly on the endpoint.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_RESPONSE_CODE</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>int</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP response code from the 
external server. Is&#160;<code>200</code> for OK.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Exchange.HTTP_CHARACTER_ENCODING</code></p></td><td
 colspan="1" rowspan="1" c
 lass="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Character encoding.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>Exchange.CONTENT_TYPE</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content type. Is set 
on both the IN and OUT message to provide a content type, such as 
<strong><code>text/html</code></strong>.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>Exchange.CONTENT_ENCODING</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content encoding. Is 
set on both the IN and OUT message to provide a content encoding, such as 
<strong><code>gzip</code></strong>.</p></td></tr></tbody></table></div></div><h3
 id="AHC-MessageBody">Message Body</h3><p>Camel will store th
 e 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.</p><h3 id="AHC-Responsecode">Response code</h3><p>Camel 
will handle according to the HTTP response code:</p><ul 
class="alternate"><li>Response code is in the range <code>100..299</code>, 
Camel regards it as a success response.</li><li>Response code is in the range 
<code>300..399</code>, Camel regards it as a redirection response and will 
throw a <strong><code>AhcOperationFailedException</code></strong> with the 
information.</li><li><p>Response code is <code>400+</code>, Camel regards it as 
an external server failure and will throw a 
<strong><code>AhcOperationFailedException</code></strong> with the 
information.</p><div class="confluence-information-macro 
confluence-information-macro-tip"><p class="title">throwExceptionOnFailure</p>
 <span class="aui-icon aui-icon-small aui-iconfont-approve 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>The option, 
<strong><code>throwExceptionOnFailure</code></strong>, can be set to 
<strong><code>false</code></strong> to prevent the 
<strong><code>AhcOperationFailedException</code></strong> from being thrown for 
failed response codes. This allows you to get any response from the remote 
server.</p></div></div></li></ul><h3 
id="AHC-AhcOperationFailedException">AhcOperationFailedException</h3><p>This 
exception contains the following information:</p><ul class="alternate"><li>The 
HTTP status code.</li><li>The HTTP status line (text of the status 
code).</li><li>Redirect location, if server returned a 
redirect.</li><li>Response body as a 
<strong><code>java.lang.String</code></strong>, if the server provides a 
response body.</li></ul><h3 id="AHC-CallingusingGETorPOST">Calling using GET or 
POST</h3><p>The following algorithm is used to determin
 e if either <strong><code>GET</code></strong> or 
<strong><code>POST</code></strong> HTTP method should be 
used:</p><ol><li>&#160; Use method provided in header.</li><li>&#160; 
<strong><code>GET</code></strong> if query string is provided in 
header.</li><li>&#160; <strong><code>GET</code></strong> if endpoint is 
configured with a query string.</li><li>&#160; 
<strong><code>POST</code></strong> if there is data to send (body is not 
null).</li><li><strong>&#160; <code>GET</code> 
</strong>otherwise<strong>.</strong></li></ol><h3 
id="AHC-ConfiguringURItocall">Configuring URI to call</h3><p>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, <strong><code>oldhost</code></strong>, 
using HTTP.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-           .to(&quot;ahc:http://oldhost&quot;);
+  .to(&quot;ahc:http://oldhost&quot;);
 ]]></script>
 </div></div><p>And the equivalent Spring sample:</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;camelContext 
xmlns=&quot;http://activemq.apache.org/camel/schema/spring&quot;&gt;
@@ -110,25 +110,25 @@ ahc:https://hostname[:port][/resourceUri
   &lt;/route&gt;
 &lt;/camelContext&gt;
 ]]></script>
-</div></div><p>You can override the HTTP endpoint URI by adding a header with 
the key, <code>Exchange.HTTP_URI</code>, on the message.</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>You can override the HTTP endpoint URI by adding a header with 
the key, <strong><code>Exchange.HTTP_URI</code></strong>, on the 
message.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-    .setHeader(Exchange.HTTP_URI, constant(&quot;http://newhost&quot;))
-    .to(&quot;ahc:http://oldhost&quot;);
+  .setHeader(Exchange.HTTP_URI, constant(&quot;http://newhost&quot;))
+  .to(&quot;ahc:http://oldhost&quot;);
 ]]></script>
-</div></div><h3 id="AHC-ConfiguringURIParameters">Configuring URI 
Parameters</h3><p>The <strong>ahc</strong> producer supports URI parameters to 
be sent to the HTTP server. The URI parameters can either be set directly on 
the endpoint URI or as a header with the key <code>Exchange.HTTP_QUERY</code> 
on the message.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</div></div><h3 id="AHC-ConfiguringURIParameters">Configuring URI 
Parameters</h3><p>The&#160;<strong><code>ahc:</code></strong> producer supports 
URI parameters to be sent to the HTTP server. The URI parameters can either be 
set directly on the endpoint URI or as a header with the key 
<strong><code>Exchange.HTTP_QUERY</code></strong> on the message.</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-           .to(&quot;ahc:http://oldhost?order=123&amp;detail=short&quot;);
+  .to(&quot;ahc:http://oldhost?order=123&amp;detail=short&quot;);
 ]]></script>
 </div></div><p>Or options provided in a header:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-            .setHeader(Exchange.HTTP_QUERY, 
constant(&quot;order=123&amp;detail=short&quot;))
-           .to(&quot;ahc:http://oldhost&quot;);
+  .setHeader(Exchange.HTTP_QUERY, 
constant(&quot;order=123&amp;detail=short&quot;))
+  .to(&quot;ahc:http://oldhost&quot;);
 ]]></script>
 </div></div><h3 
id="AHC-Howtosetthehttpmethod(GET/POST/PUT/DELETE/HEAD/OPTIONS/TRACE)totheHTTPproducer">How
 to set the http method (GET/POST/PUT/DELETE/HEAD/OPTIONS/TRACE) to the HTTP 
producer</h3><p>The HTTP component provides a way to set the HTTP request 
method by setting the message header. Here is an example;</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-            .setHeader(Exchange.HTTP_METHOD, constant(&quot;POST&quot;))
-           .to(&quot;ahc:http://www.google.com&quot;)
-            .to(&quot;mock:results&quot;);
+  .setHeader(Exchange.HTTP_METHOD, constant(&quot;POST&quot;))
+  .to(&quot;ahc:http://www.google.com&quot;)
+  .to(&quot;mock:results&quot;);
 ]]></script>
 </div></div><p>And the equivalent Spring sample:</p><div class="code panel 
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;camelContext 
xmlns=&quot;http://activemq.apache.org/camel/schema/spring&quot;&gt;
@@ -142,29 +142,31 @@ ahc:https://hostname[:port][/resourceUri
   &lt;/route&gt;
 &lt;/camelContext&gt;
 ]]></script>
-</div></div><h3 id="AHC-Configuringcharset">Configuring charset</h3><p>If you 
are using <code>POST</code> to send data you can configure the 
<code>charset</code> using the <code>Exchange</code> property:</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div><h3 id="AHC-Configuringcharset">Configuring charset</h3><p>If you 
are using <strong><code>POST</code></strong> to send data you can configure the 
<code>charset</code> using the <code>Exchange</code> property:</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[exchange.setProperty(Exchange.CHARSET_NAME, 
&quot;iso-8859-1&quot;);
 ]]></script>
-</div></div><h4 id="AHC-URIParametersfromtheendpointURI">URI Parameters from 
the endpoint URI</h4><p>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 be set using the <code>&amp;</code> character as separator, just as 
you would in the web browser. Camel does no tricks here.</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h4 id="AHC-URIParametersfromtheendpointURI">URI Parameters from 
the endpoint URI</h4><p>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 be set using the <strong><code>&amp;</code></strong> character as 
separator, just as you would in the web browser. Camel does no tricks 
here.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[// we query for Camel at the Google page
 template.sendBody(&quot;ahc:http://www.google.com/search?q=Camel&quot;, null);
 ]]></script>
 </div></div><h4 id="AHC-URIParametersfromtheMessage">URI Parameters from the 
Message</h4><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[Map headers = new HashMap();
 headers.put(Exchange.HTTP_QUERY, &quot;q=Camel&amp;lr=lang_en&quot;);
-// we query for Camel and English language at Google
+
+// We query for Camel and English language at Google
 template.sendBody(&quot;ahc:http://www.google.com/search&quot;, null, headers);
 ]]></script>
-</div></div><p>In the header value above notice that it should 
<strong>not</strong> be prefixed with <code>?</code> and you can separate 
parameters as usual with the <code>&amp;</code> char.</p><h4 
id="AHC-GettingtheResponseCode">Getting the Response Code</h4><p>You can get 
the HTTP response code from the AHC component by getting the value from the Out 
message header with <code>Exchange.HTTP_RESPONSE_CODE</code>.</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div><p>In the header value above notice that it should 
<strong>not</strong> be prefixed with <strong><code>?</code></strong> and you 
can separate parameters as usual with the <strong><code>&amp;</code></strong> 
char.</p><h4 id="AHC-GettingtheResponseCode">Getting the Response 
Code</h4><p>You can get the HTTP response code from the AHC component by 
getting the value from the Out message header with 
<strong><code>Exchange.HTTP_RESPONSE_CODE</code></strong>.</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[Exchange exchange = 
template.send(&quot;ahc:http://www.google.com/search&quot;, new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setHeader(Exchange.HTTP_QUERY, 
constant(&quot;hl=en&amp;q=activemq&quot;));
-            }
-   });
-   Message out = exchange.getOut();
-   int responseCode = out.getHeader(Exchange.HTTP_RESPONSE_CODE, 
Integer.class);
+                      public void process(Exchange exchange) throws Exception {
+                        exchange.getIn().setHeader(Exchange.HTTP_QUERY, 
constant(&quot;hl=en&amp;q=activemq&quot;));
+                      }
+                    });
+
+Message out = exchange.getOut();
+int responseCode = out.getHeader(Exchange.HTTP_RESPONSE_CODE, Integer.class);
 ]]></script>
-</div></div><h3 id="AHC-ConfiguringAsyncHttpClient">Configuring 
AsyncHttpClient</h3><p>The <code>AsyncHttpClient</code> client uses a 
<code>AsyncHttpClientConfig</code> to configure the client. See the 
documentation at<br clear="none"> <a shape="rect" class="external-link" 
href="http://github.com/sonatype/async-http-client"; rel="nofollow">Async Http 
Client</a> for more details.</p><p>In Camel <strong>2.8</strong>, configuration 
is limited to using the builder pattern provided by 
<code>AsyncHttpClientConfig.Builder</code>. In Camel 2.8, the 
<code>AsyncHttpClientConfig</code> doesn't support getters/setters so its not 
easy to create/configure using a Spring bean style (eg the &lt;bean&gt; tag in 
the XML file).</p><p>The example below shows how to use a builder to create the 
<code>AsyncHttpClientConfig</code> which we configure on the 
<code>AhcComponent</code>.</p><div class="code panel pdl" style="border-width: 
1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="AHC-ConfiguringAsyncHttpClient">Configuring 
AsyncHttpClient</h3><p>The <strong><code>AsyncHttpClient</code></strong> client 
uses a <strong><code>AsyncHttpClientConfig</code></strong> to configure the 
client. See the documentation at<br clear="none"> <a shape="rect" 
class="external-link" href="http://github.com/sonatype/async-http-client"; 
rel="nofollow">Async Http Client</a> for more details.</p><p>In Camel 
<strong>2.8</strong>, configuration is limited to using the builder pattern 
provided by <strong><code>AsyncHttpClientConfig.Builder</code></strong>. In 
Camel 2.8, the <strong><code>AsyncHttpClientConfig</code></strong> doesn't 
support getters/setters so its not easy to create/configure using a Spring bean 
style e.g., the&#160;<strong><code>&lt;bean&gt;</code></strong> tag in the XML 
file.</p><p>The example below shows how to use a builder to create the 
<strong><code>AsyncHttpClientConfig</code></strong> which we configure on the 
<strong><code>AhcComponent</code
 ></strong>.</p><div class="code panel pdl" style="border-width: 1px;"><div 
 >class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[
 // create a client config builder
 DefaultAsyncHttpClientConfig.Builder builder = new 
DefaultAsyncHttpClientConfig.Builder();
@@ -177,9 +179,9 @@ AhcComponent component = context.getComp
 // and set our custom client config to be used
 component.setClientConfig(config);
 ]]></script>
-</div></div>In Camel <strong>2.9</strong>, the AHC component uses Async HTTP 
library 1.6.4. This newer version provides added support for plain bean style 
configuration. The <code>AsyncHttpClientConfigBean</code> class provides 
getters and setters for the configuration options available in 
<code>AsyncHttpClientConfig</code>. An instance of 
<code>AsyncHttpClientConfigBean</code> may be passed directly to the AHC 
component or referenced in an endpoint URI using the <code>clientConfig</code> 
URI parameter.<p>Also available in Camel <strong>2.9</strong> is the ability to 
set configuration options directly in the URI. URI parameters starting with 
"clientConfig." can be used to set the various configurable properties of 
<code>AsyncHttpClientConfig</code>. The properties specified in the endpoint 
URI are merged with those specified in the configuration referenced by the 
"clientConfig" URI parameter with those being set using the "clientConfig." 
parameter taking priority. The <code>AsyncHtt
 pClientConfig</code> instance referenced is always copied for each endpoint 
such that settings on one endpoint will remain independent of settings on any 
previously created endpoints. The example below shows how to configure the AHC 
component using the "clientConfig." type URI parameters.</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div>In Camel <strong>2.9</strong>, the AHC component uses Async HTTP 
library 1.6.4. This newer version provides added support for plain bean style 
configuration. The <strong><code>AsyncHttpClientConfigBean</code></strong> 
class provides getters and setters for the configuration options available in 
<strong><code>AsyncHttpClientConfig</code></strong>. An instance of 
<strong><code>AsyncHttpClientConfigBean</code></strong> may be passed directly 
to the AHC component or referenced in an endpoint URI using the 
<strong><code>clientConfig</code></strong> URI parameter.<p>Also available in 
Camel <strong>2.9</strong> is the ability to set configuration options directly 
in the URI. URI options starting with 
<strong><code>clientConfig</code></strong> can be used to set the various 
configurable properties of <strong><code>AsyncHttpClientConfig</code></strong>. 
Options specified in the endpoint URI are merged with those specified by 
the&#160;<strong><code>clientConfig</code></strong> opt
 ion. These options take precedence over the options specified on the URI 
endpoint. A copy of the <strong><code>AsyncHttpClientConfig</code></strong> is 
made for each new endpoint. The example below shows how to configure the AHC 
component using the <strong><code>clientConfig</code></strong> URI 
options.</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-    
.to(&quot;ahc:http://localhost:8080/foo?clientConfig.maxRequestRetry=3&amp;clientConfig.followRedirects=true&quot;)
+  
.to(&quot;ahc:http://localhost:8080/foo?clientConfig.maxRequestRetry=3&amp;clientConfig.followRedirects=true&quot;)
 ]]></script>
 </div></div><h3 id="AHC-SSLSupport(HTTPS)">SSL Support (HTTPS)</h3><h5 
id="AHC-UsingtheJSSEConfigurationUtility">Using the JSSE Configuration 
Utility</h5><p>As of Camel 2.9, the AHC component supports SSL/TLS 
configuration through the <a shape="rect" 
href="camel-configuration-utilities.html">Camel JSSE Configuration 
Utility</a>.&#160; This utility greatly decreases the amount of component 
specific code you need to write and is configurable at the endpoint and 
component levels.&#160; The following examples demonstrate how to use the 
utility with the AHC component.</p><h6 
id="AHC-Programmaticconfigurationofthecomponent">Programmatic configuration of 
the component</h6><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[KeyStoreParameters ksp = new 
KeyStoreParameters();

Modified: websites/production/camel/content/amqp.html
==============================================================================
--- websites/production/camel/content/amqp.html (original)
+++ websites/production/camel/content/amqp.html Wed Aug 24 16:20:01 2016
@@ -41,6 +41,7 @@
   <script src='//camel.apache.org/styles/highlighter/scripts/shCore.js' 
type='text/javascript'></script>
   <script src='//camel.apache.org/styles/highlighter/scripts/shBrushJava.js' 
type='text/javascript'></script>
   <script src='//camel.apache.org/styles/highlighter/scripts/shBrushXml.js' 
type='text/javascript'></script>
+  <script src='//camel.apache.org/styles/highlighter/scripts/shBrushPlain.js' 
type='text/javascript'></script>
   
   <script type="text/javascript">
   SyntaxHighlighter.defaults['toolbar'] = false;
@@ -85,7 +86,7 @@
        <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="AMQP-AMQP">AMQP</h2><p>The 
<strong style="line-height: 1.42857;">amqp:</strong> component supports the <a 
shape="rect" class="external-link" href="http://www.amqp.org/"; 
style="line-height: 1.42857;" rel="nofollow">AMQP 1.0 protocol</a> using the 
JMS Client API of the <a shape="rect" class="external-link" 
href="https://github.com/apache/qpid-jms/"; rel="nofollow">Qpid</a> project. In 
case you want to use AMQP 0.9 (in particular RabbitMQ) you might also be 
interested in the <a shape="rect" href="rabbitmq.html">Camel RabbitMQ</a> 
component. Please keep in mind that prior to the Camel 2.17.0 AMQP component 
supported AMQP 0.9 and above, however since Camel 2.17.0 it supports only AMQP 
1.0.</p><p>Maven users will need to add the following dependency to their 
<code>pom.xml</code> for this component:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 id="AMQP-AMQP">AMQP</h2><p>The 
<strong style="line-height: 1.42857;">amqp:</strong> component supports the <a 
shape="rect" class="external-link" href="http://www.amqp.org/"; 
style="line-height: 1.42857;" rel="nofollow">AMQP 1.0 protocol</a> using the 
JMS Client API of the <a shape="rect" class="external-link" 
href="https://github.com/apache/qpid-jms/"; rel="nofollow">Qpid</a> project. In 
case you want to use <strong>AMQP 0.9</strong> (in particular RabbitMQ) you 
might also be interested in the <a shape="rect" href="rabbitmq.html">Camel 
RabbitMQ</a> component. Please keep in mind that prior to the <strong>Camel 
2.17.0</strong> AMQP component supported <strong>AMQP 0.9</strong> and above, 
however since <strong>Camel 2.17.0</strong> it supports only <strong>AMQP 
1.0</strong>.</p><p>Maven users will need to add the following dependency to 
their <strong><code>pom.xml</code></strong> for this component:</p><div 
class="code panel pdl" style="border-w
 idth: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-amqp&lt;/artifactId&gt;
@@ -95,21 +96,21 @@
 </div></div><h3 id="AMQP-URIformat">URI format</h3><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[amqp:[queue:|topic:]destinationName[?options]
 ]]></script>
-</div></div><h3 id="AMQP-AMQPOptions">AMQP Options</h3><p>You can specify all 
of the various configuration options of the <a shape="rect" 
href="jms.html">JMS</a> component after the destination name.</p><h3 
id="AMQP-Usage">Usage</h3><p>As AMQP component is inherited from JMS component, 
the usage of the former is almost identical to the latter:</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>Using AMQP component</b></div><div 
class="codeContent panelContent pdl">
+</div></div><h3 id="AMQP-AMQPOptions">AMQP Options</h3><p>You can specify all 
of the various configuration options of the <a shape="rect" 
href="jms.html">JMS</a> component after the destination name.</p><h3 
id="AMQP-Usage">Usage</h3><p>As AMQP component inherits from the JMS component. 
The usage of the former is almost identical to the latter:</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>Using AMQP component</b></div><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[// Consuming from AMQP queue
-from(&quot;amqp:queue:incoming&quot;).
-  to(...);
+from(&quot;amqp:queue:incoming&quot;)
+  .to(...);
  
 // Sending message to the AMQP topic
-from(...).
-  to(&quot;amqp:topic:notify&quot;);]]></script>
-</div></div><h3 id="AMQP-ConfiguringAMQPcomponent"><span style="line-height: 
1.5;">Configuring AMQP component</span></h3><p>Starting from the Camel 2.16.1 
you can also use the <code>AMQPComponent#amqp10Component(String 
connectionURI)</code> factory method to return the AMQP 1.0 component with the 
pre-configured&#160;topic prefix:&#160;</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>Creating AMQP 1.0 component</b></div><div 
class="codeContent panelContent pdl">
+from(...)
+  .to(&quot;amqp:topic:notify&quot;);]]></script>
+</div></div><h3 id="AMQP-ConfiguringAMQPcomponent"><span style="line-height: 
1.5;">Configuring AMQP component</span></h3><p>Starting from the <strong>Camel 
2.16.1</strong> you can also use the 
<strong><code>AMQPComponent#amqp10Component(String 
connectionURI)</code></strong> factory method to return the <strong>AMQP 
1.0</strong> component with the pre-configured&#160;topic prefix:&#160;</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeHeader 
panelHeader pdl" style="border-bottom-width: 1px;"><b>Creating AMQP 1.0 
component</b></div><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[ AMQPComponent amqp = 
AMQPComponent.amqp10Component(&quot;amqp://guest:guest@localhost:5672&quot;);]]></script>
-</div></div><p>Keep in mind that starting from the 
Camel&#160;2.17&#160;the&#160;<code>AMQPComponent#amqp10Component(String 
connectionURI)</code>&#160;factory method has been deprecated on the behalf of 
the <code><span>AMQPComponent#amqpComponent(String 
connectionURI)</span></code>:&#160;</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>Creating AMQP 1.0 component</b></div><div 
class="codeContent panelContent pdl">
+</div></div><p>Keep in mind that starting from the 
<strong>Camel&#160;2.17</strong>&#160;the&#160;<strong><code>AMQPComponent#amqp10Component(String
 connectionURI)</code></strong>&#160;factory method has been deprecated on the 
behalf of the <strong><code>AMQPComponent#amqpComponent(String 
connectionURI)</code></strong>:&#160;</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>Creating AMQP 1.0 component</b></div><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[AMQPComponent amqp = 
AMQPComponent.amqpComponent(&quot;amqp://localhost:5672&quot;);
  
 AMQPComponent authorizedAmqp = 
AMQPComponent.amqpComponent(&quot;amqp://localhost:5672&quot;, 
&quot;user&quot;, &quot;password&quot;);]]></script>
-</div></div><p>Starting from Camel 2.17, in order to automatically configure 
the AMQP component, you can also add an instance 
of&#160;<code>org.apache.camel.component.amqp.AMQPConnectionDetails</code> to 
the registry. For example for Spring Boot you just have to 
define&#160;bean:</p><div class="code panel pdl" style="border-width: 
1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 
1px;"><b>AMQP connection details auto-configuration</b></div><div 
class="codeContent panelContent pdl">
+</div></div><p>Starting from <strong>Camel 2.17</strong>, in order to 
automatically configure the AMQP component, you can also add an instance 
of&#160;<strong><code>org.apache.camel.component.amqp.AMQPConnectionDetails</code></strong>
 to the registry. For example for Spring Boot you just have to 
define&#160;bean:</p><div class="code panel pdl" style="border-width: 
1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 
1px;"><b>AMQP connection details auto-configuration</b></div><div 
class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[@Bean
 AMQPConnectionDetails amqpConnection() {
   return new AMQPConnectionDetails(&quot;amqp://lcoalhost:5672&quot;); 
@@ -119,7 +120,7 @@ AMQPConnectionDetails amqpConnection() {
 AMQPConnectionDetails securedAmqpConnection() {
   return new AMQPConnectionDetails(&quot;amqp://lcoalhost:5672&quot;, 
&quot;username&quot;, &quot;password&quot;); 
 }]]></script>
-</div></div><p>&#160;</p><p>You can also rely on the <a shape="rect" 
href="properties.html">Camel properties</a> to read the AMQP connection 
details. Factory 
method&#160;<code>AMQPConnectionDetails.discoverAMQP()</code>&#160;attempts to 
read Camel properties in a Kubernetes-like convention, just as demonstrated on 
the snippet below:</p><p>&#160;</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>AMQP connection details 
auto-configuration</b></div><div class="codeContent panelContent pdl">
+</div></div><p>&#160;</p><p>You can also rely on the <a shape="rect" 
href="properties.html">Camel properties</a> to read the AMQP connection 
details. The factory 
method&#160;<strong><code>AMQPConnectionDetails.discoverAMQP()</code></strong>&#160;attempts
 to read Camel properties in a Kubernetes-like convention, just as demonstrated 
on the snippet below:</p><p>&#160;</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>AMQP connection details 
auto-configuration</b></div><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[export AMQP_SERVICE_HOST = 
&quot;mybroker.com&quot;
 export AMQP_SERVICE_PORT = &quot;6666&quot;
 export AMQP_SERVICE_USERNAME = &quot;username&quot;
@@ -132,39 +133,41 @@ AMQPConnectionDetails amqpConnection() {
   return AMQPConnectionDetails.discoverAMQP(); 
 }
 ]]></script>
-</div></div><h3 id="AMQP-ConfiguringConnectionFactory">Configuring Connection 
Factory</h3><p>Like with any other JMS-based component, usually it's important 
to configure JMS connection factory. For example, you'd like to set your broker 
url or set proper connection credentials. Additionally, you would always want 
to set some kind of pooling (or caching) on the connection factory. An example 
of how to do both of these tasks is shown below.</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[     &lt;bean 
id=&quot;jmsConnectionFactory&quot; 
class=&quot;org.apache.qpid.jms.JmsConnectionFactory&quot;&gt;
-        &lt;property name=&quot;remoteURI&quot; 
value=&quot;amqp://localhost:5672&quot; /&gt;
-        &lt;property name=&quot;username&quot; value=&quot;admin&quot;/&gt;
-        &lt;property name=&quot;password&quot; value=&quot;admin&quot;/&gt;
-    &lt;/bean&gt;
-
-       &lt;bean id=&quot;jmsCachingConnectionFactory&quot; 
class=&quot;org.springframework.jms.connection.CachingConnectionFactory&quot;&gt;
-       &lt;property name=&quot;targetConnectionFactory&quot; 
ref=&quot;jmsConnectionFactory&quot; /&gt;
-       &lt;/bean&gt;
-
-       &lt;bean id=&quot;jmsConfig&quot; 
class=&quot;org.apache.camel.component.jms.JmsConfiguration&quot; &gt;
-               &lt;property name=&quot;connectionFactory&quot; 
ref=&quot;jmsCachingConnectionFactory&quot; /&gt; 
-               &lt;property name=&quot;cacheLevelName&quot; 
value=&quot;CACHE_CONSUMER&quot; /&gt;
-       &lt;/bean&gt;   
-
-       &lt;bean id=&quot;amqp&quot; 
class=&quot;org.apache.camel.component.amqp.AMQPComponent&quot;&gt;
-               &lt;property name=&quot;configuration&quot; 
ref=&quot;jmsConfig&quot; /&gt;
-       &lt;/bean&gt;   
-
-    &lt;camelContext 
xmlns=&quot;http://camel.apache.org/schema/blueprint&quot; 
id=&quot;simple&quot;&gt;
-        &lt;route&gt;
-            &lt;from uri=&quot;timer:simple?period=5000&quot;/&gt;
-            &lt;setBody&gt;
-                &lt;simple&gt;Hello World&lt;/simple&gt;
-            &lt;/setBody&gt;
-            &lt;to uri=&quot;amqp:test&quot;/&gt;
-        &lt;/route&gt;
-    &lt;/camelContext&gt;]]></script>
-</div></div><h3 id="AMQP-UsinginsideKaraf">Using inside Karaf</h3><p>If you 
want to use <strong>amqp</strong> component inside the Karaf, there's already 
defined feature that will install all necessary bundles for you. All you need 
to do is</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
-<script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[karaf@root()&gt; repo-add camel
+</div></div><h3 id="AMQP-ConfiguringConnectionFactory">Configuring Connection 
Factory</h3><p>Like with any other JMS-based component, usually it's important 
to configure JMS connection factory. For example, you'd like to set your broker 
URL or set proper connection credentials. Additionally, you would always want 
to set some kind of pooling (or caching) on the connection factory. An example 
of how to do both of these tasks is shown below.</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;bean id=&quot;jmsConnectionFactory&quot; 
class=&quot;org.apache.qpid.jms.JmsConnectionFactory&quot;&gt;
+  &lt;property name=&quot;remoteURI&quot; 
value=&quot;amqp://localhost:5672&quot; /&gt;
+  &lt;property name=&quot;username&quot; value=&quot;admin&quot;/&gt;
+  &lt;property name=&quot;password&quot; value=&quot;admin&quot;/&gt;
+&lt;/bean&gt;
+
+&lt;bean id=&quot;jmsCachingConnectionFactory&quot; 
class=&quot;org.springframework.jms.connection.CachingConnectionFactory&quot;&gt;
+  &lt;property name=&quot;targetConnectionFactory&quot; 
ref=&quot;jmsConnectionFactory&quot; /&gt;
+&lt;/bean&gt;
+
+&lt;bean id=&quot;jmsConfig&quot; 
class=&quot;org.apache.camel.component.jms.JmsConfiguration&quot; &gt;
+  &lt;property name=&quot;connectionFactory&quot; 
ref=&quot;jmsCachingConnectionFactory&quot; /&gt; 
+  &lt;property name=&quot;cacheLevelName&quot; 
value=&quot;CACHE_CONSUMER&quot; /&gt;
+&lt;/bean&gt;    
+
+&lt;bean id=&quot;amqp&quot; 
class=&quot;org.apache.camel.component.amqp.AMQPComponent&quot;&gt;
+    &lt;property name=&quot;configuration&quot; ref=&quot;jmsConfig&quot; /&gt;
+&lt;/bean&gt;    
+
+&lt;camelContext xmlns=&quot;http://camel.apache.org/schema/blueprint&quot; 
id=&quot;simple&quot;&gt;
+  &lt;route&gt;
+    &lt;from uri=&quot;timer:simple?period=5000&quot;/&gt;
+    &lt;setBody&gt;
+        &lt;simple&gt;Hello World&lt;/simple&gt;
+    &lt;/setBody&gt;
+    &lt;to uri=&quot;amqp:test&quot;/&gt;
+  &lt;/route&gt;
+&lt;/camelContext&gt;
+
+]]></script>
+</div></div><h3 id="AMQP-UsingamqpinsideKaraf">Using amqp inside 
Karaf</h3><p>To use the <strong><code>amqp</code></strong> component inside 
Karaf use the predefined feature called 
<strong><code>camel-amqp</code></strong> to install the necessary 
bundles.</p><p>Example:</p><div class="code panel pdl" style="border-width: 
1px;"><div class="codeContent panelContent pdl">
+<script class="brush: text; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[karaf@root()&gt; repo-add camel
 karaf@root()&gt; feature:install camel-amqp]]></script>
-</div></div><p>and the environment would be set. Additionally you can add 
<strong>camel-blueprint</strong> or <strong>camel-spring</strong> features if 
you want to define your routes in those contexts.</p><p>&#160;</p><p></p><h3 
id="AMQP-SeeAlso">See Also</h3>
+</div></div><p>and the environment would be set.</p><p>Use the 
<strong><code>camel-blueprint</code></strong> 
or&#160;<strong><code>camel-spring</code></strong> features to define routes in 
those contexts.</p><p>&#160;</p><p></p><h3 id="AMQP-SeeAlso">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring 
Camel</a></li><li><a shape="rect" 
href="component.html">Component</a></li><li><a shape="rect" 
href="endpoint.html">Endpoint</a></li><li><a shape="rect" 
href="getting-started.html">Getting Started</a></li></ul><p>&#160;</p></div>
         </td>
         <td valign="top">

Modified: websites/production/camel/content/aws-cw.html
==============================================================================
--- websites/production/camel/content/aws-cw.html (original)
+++ websites/production/camel/content/aws-cw.html Wed Aug 24 16:20:01 2016
@@ -85,14 +85,14 @@
        <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="AWS-CW-CWComponent">CW 
Component</h2><p>*Available as of Camel 2.11</p><p>The CW component allows 
messages to be sent to an <a shape="rect" class="external-link" 
href="http://aws.amazon.com/cloudwatch/"; rel="nofollow">Amazon CloudWatch</a> 
metrics. The implementation of the Amazon API is provided by the&#160;<a 
shape="rect" class="external-link" href="http://aws.amazon.com/sdkforjava/"; 
rel="nofollow">AWS SDK</a>.</p><div class="confluence-information-macro 
confluence-information-macro-information"><p 
class="title">Prerequisites</p><span class="aui-icon aui-icon-small 
aui-iconfont-info confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>You must have a valid Amazon Web 
Services developer account, and be signed up to use Amazon CloudWatch. More 
information are available at <a shape="rect" class="external-link" 
href="http://aws.amazon.com/cloudwatch/"; rel="nofollow">Amazon 
CloudWatch</a>.</p></div></d
 iv><h3 id="AWS-CW-URIFormat">URI Format</h3><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 id="AWS-CW-CWComponent">CW 
Component</h2><p>*Available as of <strong>Camel 2.11</strong></p><p>The CW 
component allows messages to be sent to an <a shape="rect" 
class="external-link" href="http://aws.amazon.com/cloudwatch/"; 
rel="nofollow">Amazon CloudWatch</a> metrics. The implementation of the Amazon 
API is provided by the&#160;<a shape="rect" class="external-link" 
href="http://aws.amazon.com/sdkforjava/"; rel="nofollow">AWS SDK</a>.</p><div 
class="confluence-information-macro 
confluence-information-macro-information"><p 
class="title">Prerequisites</p><span class="aui-icon aui-icon-small 
aui-iconfont-info confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>You must have a valid Amazon Web 
Services developer account, and be signed up to use Amazon CloudWatch. More 
information are available at <a shape="rect" class="external-link" 
href="http://aws.amazon.com/cloudwatch/"; rel="nofollow">Amazon CloudWatch<
 /a>.</p></div></div><h3 id="AWS-CW-URIFormat">URI Format</h3><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[aws-cw://namespace[?options]
 ]]></script>
-</div></div><p>The metrics will be created if they don't already exists.<br 
clear="none"> You can append query options to the URI in the following format, 
<code>?options=value&amp;option2=value&amp;...</code></p><h3 
id="AWS-CW-URIOptions">URI Options</h3><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>amazonCwClient</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Reference to a 
<code>com.amazonaws.services.cloudwatch.AmazonCloudWatch</code> in the <a 
shape="rect" href="regist
 ry.html">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>accessKey</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Amazon AWS Access Key</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>secretKey</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Amazon AWS Secret Key</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>name</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The metric name which is used if the 
message header 'CamelAwsCwMetricName' is
  not present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>value</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>1.0</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The metric value which is used if the message header 
'CamelAwsCwMetricValue' is not present.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>unit</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Count</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The metric unit which is used if the message header 
'CamelAwsCwMetricUnit' is not present.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>namespace</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><t
 d colspan="1" rowspan="1" class="confluenceTd"><p>The metric namespace which 
is used if the message header 'CamelAwsCwMetricNamespace' is not 
present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>timestamp</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The metric timestamp which is used if the message 
header 'CamelAwsCwMetricTimestamp' is not present.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>amazonCwEndpoint</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Producer</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The region with which the 
AWS-CW client wants to work with.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>proxyHost</p></td><td colspan="1" row
 span="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.16</strong>: Specify a 
proxy host to be used inside the client definition.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>proxyPort</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Producer</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.16</strong>: 
Specify a proxy port to be used inside the client 
definition.</p></td></tr></tbody></table></div><div 
class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Required CW 
component options</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>You have to provide the amazonCwCl
 ient in the <a shape="rect" href="registry.html">Registry</a> or your 
accessKey and secretKey to access the <a shape="rect" class="external-link" 
href="http://aws.amazon.com/cloudwatch/"; rel="nofollow">Amazon's 
CloudWatch</a>.</p></div></div><h3 id="AWS-CW-Usage">Usage</h3><h4 
id="AWS-CW-MessageheadersevaluatedbytheCWproducer">Message headers evaluated by 
the CW producer</h4><div class="confluenceTableSmall"><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricName</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
name.</p></td></tr><tr><td colspan="1" rowspan="1" class="c
 onfluenceTd"><p><code>CamelAwsCwMetricValue</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>Double</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
value.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricUnit</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
unit.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricNamespace</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
namespace.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricTimestamp</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td 
colspan="1" rowspan="1" class=
 "confluenceTd"><p>The Amazon CW metric timestamp.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensionName</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The Amazon CW metric dimension name.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensionValue</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The Amazon CW metric dimension value.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensions</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, 
String&gt;</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong>Camel 2.12:</strong> A map of dim
 ension names and dimension 
values.</p></td></tr></tbody></table></div></div><h4 
id="AWS-CW-AdvancedAmazonCloudWatchconfiguration">Advanced AmazonCloudWatch 
configuration</h4><p>If you need more control over the 
<code>AmazonCloudWatch</code> instance configuration you can create your own 
instance and refer to it from the URI:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>The metrics will be created if they don't already exists. Query 
options can be appended to the URI using the following format: 
<strong><code>?options=value&amp;option2=value&amp;...</code></strong></p><h3 
id="AWS-CW-URIOptions">URI Options</h3><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>amazonCwClient</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Producer</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Reference to a 
<strong><code>com.amazonaws.services.cloudwatch.AmazonCloudWatch</code></strong>
 i
 n the <a shape="rect" href="registry.html">Registry</a>.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>accessKey</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Amazon AWS Access Key.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>secretKey</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Amazon AWS Secret Key.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>name</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Producer</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Th
 e metric name which is used if the message 
header&#160;<strong><code>CamelAwsCwMetricName</code></strong> is not 
present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>value</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>1.0</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The metric value which is used if the message 
header&#160;<strong><code>CamelAwsCwMetricValue</code></strong> is not 
present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>unit</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Count</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The metric unit which is used if the message 
header&#160;<strong><code>CamelAwsCwMetricUnit</code></strong> is not 
present.</p></td></tr><tr><td colspan="1" row
 span="1" class="confluenceTd"><p><code>namespace</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Producer</p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The metric namespace which is 
used if the message 
header&#160;<strong><code>CamelAwsCwMetricNamespace</code></strong> is not 
present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timestamp</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The metric timestamp which is used if the 
message header&#160;<strong><code>CamelAwsCwMetricTimestamp</code></strong> is 
not present.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>amazonCwEndpoint</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>nu
 ll</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The region with which the AWS-CW client wants to work 
with.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>proxyHost</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.16</strong>: Specify a 
proxy host to be used inside the client definition.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>proxyPort</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.16</strong>: Specify a 
proxy port to be used inside the client definition.</p></td></tr></tbo
 dy></table></div><div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Required CW 
component options</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>You have to provide 
the&#160;<strong><code>amazonCwClient</code></strong> in the <a shape="rect" 
href="registry.html">Registry</a> or 
your&#160;<strong><code>accessKey</code></strong> 
and&#160;<strong><code>secretKey</code></strong> to access the <a shape="rect" 
class="external-link" href="http://aws.amazon.com/cloudwatch/"; 
rel="nofollow">Amazon's CloudWatch</a>.</p></div></div><h3 
id="AWS-CW-Usage">Usage</h3><h4 
id="AWS-CW-MessageheadersevaluatedbytheCWproducer">Message headers evaluated by 
the CW producer</h4><div class="confluenceTableSmall"><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" 
 rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricName</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
name.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricValue</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>Double</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
value.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricUnit</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
unit.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><co
 de>CamelAwsCwMetricNamespace</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>The Amazon CW metric namespace.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricTimestamp</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>Date</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Amazon CW metric 
timestamp.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensionName</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The Amazon CW metric dimension name.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensionValue</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code><
 /p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 
2.12:</strong> The Amazon CW metric dimension value.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelAwsCwMetricDimensions</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>Map&lt;String, 
String&gt;</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong>Camel 2.12:</strong> A map of dimension names 
and dimension values.</p></td></tr></tbody></table></div></div><h4 
id="AWS-CW-AdvancedAmazonCloudWatchconfiguration">Advanced AmazonCloudWatch 
configuration</h4><p>If you need more control over the 
<strong><code>AmazonCloudWatch</code></strong> instance configuration you can 
create your own instance and refer to it from the URI:</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[from(&quot;direct:start&quot;)
-.to(&quot;aws-cw://namepsace?amazonCwClient=#client&quot;);
+  .to(&quot;aws-cw://namepsace?amazonCwClient=#client&quot;);
 ]]></script>
-</div></div><p>The <code>#client</code> refers to a 
<code>AmazonCloudWatch</code> in the <a shape="rect" 
href="registry.html">Registry</a>.</p><p>For example if your Camel Application 
is running behind a firewall:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>The <strong><code>#client</code></strong> refers to a 
<strong><code>AmazonCloudWatch</code></strong> in the <a shape="rect" 
href="registry.html">Registry</a>.</p><p>For example if your Camel Application 
is running behind a firewall:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[AWSCredentials awsCredentials = new 
BasicAWSCredentials(&quot;myAccessKey&quot;, &quot;mySecretKey&quot;);
 ClientConfiguration clientConfiguration = new ClientConfiguration();
 clientConfiguration.setProxyHost(&quot;http://myProxyHost&quot;);
@@ -102,14 +102,14 @@ AmazonCloudWatch client = new AmazonClou
 
 registry.bind(&quot;client&quot;, client);
 ]]></script>
-</div></div><h3 id="AWS-CW-Dependencies">Dependencies</h3><p>Maven users will 
need to add the following dependency to their pom.xml.</p><div class="code 
panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>pom.xml</b></div><div class="codeContent 
panelContent pdl">
+</div></div><h3 id="AWS-CW-Dependencies">Dependencies</h3><p>Maven users will 
need to add the following dependency to their 
<strong><code>pom.xml</code></strong>.</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeHeader panelHeader pdl" 
style="border-bottom-width: 1px;"><b>pom.xml</b></div><div class="codeContent 
panelContent pdl">
 <script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
     &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
     &lt;artifactId&gt;camel-aws&lt;/artifactId&gt;
     &lt;version&gt;${camel-version}&lt;/version&gt;
 &lt;/dependency&gt;
 ]]></script>
-</div></div><p>where <code>${camel-version</code>} must be replaced by the 
actual version of Camel (2.10 or higher).</p><p></p><h3 id="AWS-CW-SeeAlso">See 
Also</h3>
+</div></div><p>where <strong><code>${camel-version</code>}</strong> must be 
replaced by the actual version of Camel (2.10 or higher).</p><p></p><h3 
id="AWS-CW-SeeAlso">See Also</h3>
 <ul><li><a shape="rect" href="configuring-camel.html">Configuring 
Camel</a></li><li><a shape="rect" 
href="component.html">Component</a></li><li><a shape="rect" 
href="endpoint.html">Endpoint</a></li><li><a shape="rect" 
href="getting-started.html">Getting Started</a></li></ul><ul 
class="alternate"><li><a shape="rect" href="aws.html">AWS 
Component</a></li></ul></div>
         </td>
         <td valign="top">


Reply via email to