Author: buildbot
Date: Sun Mar 20 14:20:55 2016
New Revision: 983249

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/bean.html
    websites/production/camel/content/book-component-appendix.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/cache.html
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/http4.html

Modified: websites/production/camel/content/bean.html
==============================================================================
--- websites/production/camel/content/bean.html (original)
+++ websites/production/camel/content/bean.html Sun Mar 20 14:20:55 2016
@@ -89,7 +89,7 @@
 <div class="wiki-content maincontent"><h2 id="Bean-BeanComponent">Bean 
Component</h2><p>The <strong>bean:</strong> component binds beans to Camel 
message exchanges.</p><h3 id="Bean-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[bean:beanID[?options]
 ]]></script>
-</div></div><p>Where <strong>beanID</strong> can be any string which is used 
to look up the bean in the <a shape="rect" 
href="registry.html">Registry</a></p><h3 id="Bean-Options">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>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>method</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The method name from the bean that will be 
invoked. If not provided, Camel will try to determine the method itself. In 
case of ambiguity 
 an exception will be thrown. See <a shape="rect" href="bean-binding.html">Bean 
Binding</a> for more details. From <strong>Camel 2.8</strong> onwards you can 
specify type qualifiers to pin-point the exact method to use for overloaded 
methods. From <strong>Camel 2.9</strong> onwards you can specify parameter 
values directly in the method syntax. See more details at <a shape="rect" 
href="bean-binding.html">Bean Binding</a>.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>cache</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>boolean</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, Camel will cache 
the result of the first <a shape="rect" href="registry.html">Registry</a> 
look-up. Cache can be enabled if the bean in the <a shape="rect" 
href="registry.html">Registry</a> is defined as a singleton 
scope.</p></td></tr><tr><td colspan=
 "1" rowspan="1" 
class="confluenceTd"><p><code>multiParameterArray</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>How to treat the parameters which are 
passed from the message body; if it is <code>true</code>, the In message body 
should be an array of parameters.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><code>bean.xxx</code></td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd"><code>null</code></td><td colspan="1" rowspan="1" 
class="confluenceTd"><strong>Camel 2.17:</strong>&#160;To configure additional 
options on the create bean instance from the class name. For example to 
configure a foo option on the bean, use 
bean.foo=123.</td></tr></tbody></table></div></div><p>You can append query 
options to the URI in the following f
 ormat, <code>?option=value&amp;option=value&amp;...</code></p><h3 
id="Bean-Using">Using</h3><p>The object instance that is used to consume 
messages must be explicitly registered with the <a shape="rect" 
href="registry.html">Registry</a>. For example, if you are using Spring you 
must define the bean in the Spring configuration, <code>spring.xml</code>; or 
if you don't use Spring, by registering the bean in JNDI.</p><div 
class="error"><span class="error">Error formatting macro: snippet: 
java.lang.IndexOutOfBoundsException: Index: 20, Size: 20</span> </div>Once an 
endpoint has been registered, you can build Camel routes that use it to process 
exchanges.<div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</div></div><p>Where <strong>beanID</strong> can be any string which is used 
to look up the bean in the <a shape="rect" 
href="registry.html">Registry</a></p><h3 id="Bean-Options">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>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>method</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The method name from the bean that will be 
invoked. If not provided, Camel will try to determine the method itself. In 
case of ambiguity 
 an exception will be thrown. See <a shape="rect" href="bean-binding.html">Bean 
Binding</a> for more details. From <strong>Camel 2.8</strong> onwards you can 
specify type qualifiers to pin-point the exact method to use for overloaded 
methods. From <strong>Camel 2.9</strong> onwards you can specify parameter 
values directly in the method syntax. See more details at <a shape="rect" 
href="bean-binding.html">Bean Binding</a>.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>cache</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>boolean</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, Camel will cache 
the result of the first <a shape="rect" href="registry.html">Registry</a> 
look-up. Cache can be enabled if the bean in the <a shape="rect" 
href="registry.html">Registry</a> is defined as a singleton 
scope.</p></td></tr><tr><td colspan=
 "1" rowspan="1" 
class="confluenceTd"><p><code>multiParameterArray</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>How to treat the parameters which are 
passed from the message body; if it is <code>true</code>, the In message body 
should be an array of parameters.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>bean.xxx</p></td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>null</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong style="line-height: 1.42857;">Camel 
2.17:</strong>&#160;To configure additional options on the create bean instance 
from the class name. For example to configure a foo option on the bean, use 
bean.foo=123.</p></td></tr></tbody></table></div></div><p>You can append query 
options to t
 he URI in the following format, 
<code>?option=value&amp;option=value&amp;...</code></p><h3 
id="Bean-Using">Using</h3><p>The object instance that is used to consume 
messages must be explicitly registered with the <a shape="rect" 
href="registry.html">Registry</a>. For example, if you are using Spring you 
must define the bean in the Spring configuration, <code>spring.xml</code>; or 
if you don't use Spring, by registering the bean in JNDI.</p><div 
class="error"><span class="error">Error formatting macro: snippet: 
java.lang.IndexOutOfBoundsException: Index: 20, Size: 20</span> </div>Once an 
endpoint has been registered, you can build Camel routes that use it to process 
exchanges.<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[
 // lets add simple route
 camelContext.addRoutes(new RouteBuilder() {

Modified: websites/production/camel/content/book-component-appendix.html
==============================================================================
--- websites/production/camel/content/book-component-appendix.html (original)
+++ websites/production/camel/content/book-component-appendix.html Sun Mar 20 
14:20:55 2016
@@ -407,7 +407,7 @@ public class BlogService {
 <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="rss.html">RSS</a></li></ul> <h2 
id="BookComponentAppendix-BeanComponent">Bean Component</h2><p>The 
<strong>bean:</strong> component binds beans to Camel message exchanges.</p><h3 
id="BookComponentAppendix-URIformat.3">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[bean:beanID[?options]
 ]]></script>
-</div></div><p>Where <strong>beanID</strong> can be any string which is used 
to look up the bean in the <a shape="rect" 
href="registry.html">Registry</a></p><h3 
id="BookComponentAppendix-Options.2">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>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>method</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The method name from the bean that will be 
invoked. If not provided, Camel will try to determine the method itself. In
  case of ambiguity an exception will be thrown. See <a shape="rect" 
href="bean-binding.html">Bean Binding</a> for more details. From <strong>Camel 
2.8</strong> onwards you can specify type qualifiers to pin-point the exact 
method to use for overloaded methods. From <strong>Camel 2.9</strong> onwards 
you can specify parameter values directly in the method syntax. See more 
details at <a shape="rect" href="bean-binding.html">Bean 
Binding</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cache</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</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, Camel will cache the result of 
the first <a shape="rect" href="registry.html">Registry</a> look-up. Cache can 
be enabled if the bean in the <a shape="rect" href="registry.html">Registry</a> 
is defined as a singleton scope.</p></td></
 tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>multiParameterArray</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>How to treat the parameters which are 
passed from the message body; if it is <code>true</code>, the In message body 
should be an array of parameters.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><code>bean.xxx</code></td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd"><code>null</code></td><td colspan="1" rowspan="1" 
class="confluenceTd"><strong>Camel 2.17:</strong>&#160;To configure additional 
options on the create bean instance from the class name. For example to 
configure a foo option on the bean, use 
bean.foo=123.</td></tr></tbody></table></div></div><p>You can append query 
options to the URI
  in the following format, 
<code>?option=value&amp;option=value&amp;...</code></p><h3 
id="BookComponentAppendix-Using">Using</h3><p>The object instance that is used 
to consume messages must be explicitly registered with the <a shape="rect" 
href="registry.html">Registry</a>. For example, if you are using Spring you 
must define the bean in the Spring configuration, <code>spring.xml</code>; or 
if you don't use Spring, by registering the bean in JNDI.</p><div 
class="error"><span class="error">Error formatting macro: snippet: 
java.lang.IndexOutOfBoundsException: Index: 20, Size: 20</span> </div>Once an 
endpoint has been registered, you can build Camel routes that use it to process 
exchanges.<div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</div></div><p>Where <strong>beanID</strong> can be any string which is used 
to look up the bean in the <a shape="rect" 
href="registry.html">Registry</a></p><h3 
id="BookComponentAppendix-Options.2">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>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Default</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>method</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The method name from the bean that will be 
invoked. If not provided, Camel will try to determine the method itself. In
  case of ambiguity an exception will be thrown. See <a shape="rect" 
href="bean-binding.html">Bean Binding</a> for more details. From <strong>Camel 
2.8</strong> onwards you can specify type qualifiers to pin-point the exact 
method to use for overloaded methods. From <strong>Camel 2.9</strong> onwards 
you can specify parameter values directly in the method syntax. See more 
details at <a shape="rect" href="bean-binding.html">Bean 
Binding</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cache</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</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, Camel will cache the result of 
the first <a shape="rect" href="registry.html">Registry</a> look-up. Cache can 
be enabled if the bean in the <a shape="rect" href="registry.html">Registry</a> 
is defined as a singleton scope.</p></td></
 tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>multiParameterArray</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>boolean</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>How to treat the parameters which are 
passed from the message body; if it is <code>true</code>, the In message body 
should be an array of parameters.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>bean.xxx</p></td><td colspan="1" rowspan="1" 
class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>null</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong style="line-height: 1.42857;">Camel 
2.17:</strong>&#160;To configure additional options on the create bean instance 
from the class name. For example to configure a foo option on the bean, use 
bean.foo=123.</p></td></tr></tbody></table></div></div><p>You can append
  query options to the URI in the following format, 
<code>?option=value&amp;option=value&amp;...</code></p><h3 
id="BookComponentAppendix-Using">Using</h3><p>The object instance that is used 
to consume messages must be explicitly registered with the <a shape="rect" 
href="registry.html">Registry</a>. For example, if you are using Spring you 
must define the bean in the Spring configuration, <code>spring.xml</code>; or 
if you don't use Spring, by registering the bean in JNDI.</p><div 
class="error"><span class="error">Error formatting macro: snippet: 
java.lang.IndexOutOfBoundsException: Index: 20, Size: 20</span> </div>Once an 
endpoint has been registered, you can build Camel routes that use it to process 
exchanges.<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[
 // lets add simple route
 camelContext.addRoutes(new RouteBuilder() {
@@ -524,7 +524,7 @@ browse:someName[?options]
 </div></div><h3 id="BookComponentAppendix-URIformat.5">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[cache://cacheName[?options]
 ]]></script>
-</div></div><p>You can append query options to the URI in the following 
format, <code>?option=value&amp;option=#beanRef&amp;...</code></p><h3 
id="BookComponentAppendix-Options.3">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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>maxElementsInMemory</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The number of elements that may 
be stored in the defined cache</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>memoryStoreEvictionPolicy</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>MemoryStoreEvictionPolicy.LFU</code></p></td><td 
colspan="1"
  rowspan="1" class="confluenceTd"><p>The number of elements that may be stored 
in the defined cache. Options include</p><ul 
class="alternate"><li>MemoryStoreEvictionPolicy.LFU - Least frequently 
used</li><li>MemoryStoreEvictionPolicy.LRU - Least recently 
used</li><li>MemoryStoreEvictionPolicy.FIFO - first in first out, the oldest 
element by creation time</li></ul></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>overflowToDisk</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Specifies whether cache may overflow to 
disk</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>eternal</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Sets whether elements are eternal. If 
eternal, timeouts are ignored and the<br clear="none" 
class="atl-forced-newline"> eleme
 nt never expires.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeToLiveSeconds</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>300</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The maximum time between creation time and 
when an element expires.<br clear="none" class="atl-forced-newline"> Is used 
only if the element is not eternal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeToIdleSeconds</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>300</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The maximum amount of time between accesses 
before an element expires</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>diskPersistent</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Whether the disk store persists between rest
 arts of the Virtual Machine.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>diskExpiryThreadIntervalSeconds</code></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><code>120</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The number of seconds between 
runs of the disk expiry thread.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cacheManagerFactory</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.8:</strong> If 
you want to use a custom factory which instantiates and creates the EHCache 
<code>net.sf.ehcache.CacheManager</code>. <br clear="none" 
class="atl-forced-newline"> <br clear="none" class="atl-forced-newline"> 
<em>Type:</em> abstract 
org.apache.camel.component.cache.CacheManagerFactory</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>eventListenerRegistry</c
 ode></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.8:</strong> Sets a list of EHCache 
<code>net.sf.ehcache.event.CacheEventListener</code> for all new caches- no 
need to define it per cache in EHCache xml config anymore. <br clear="none" 
class="atl-forced-newline"> <br clear="none" class="atl-forced-newline"> 
<em>Type:</em> 
org.apache.camel.component.cache.CacheEventListenerRegistry</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cacheLoaderRegistry</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.8:</strong> 
Sets a list of <code>org.apache.camel.component.cache.CacheLoaderWrapper</code> 
that extends EHCache <code>net.sf.ehcache.loader.CacheLoader</code> for all new 
caches- no need to define it per cache in EHCache xml config anymore. <br c
 lear="none" class="atl-forced-newline"> <br clear="none" 
class="atl-forced-newline"> <em>Type:</em> 
org.apache.camel.component.cache.CacheLoaderRegistry</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>key</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.10:</strong> To 
configure using a cache key by default. If a key is provided in the message 
header, then the key from the header takes precedence.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>operation</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.10:</strong> To configure 
using an cache operation by default. If an operation in the message header, 
then the operation from the header takes precedence.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="conf
 luenceTd"><code>objectCache</code></td><td colspan="1" rowspan="1" 
class="confluenceTd"><code>false</code></td><td colspan="1" rowspan="1" 
class="confluenceTd"><strong>Camel 2.15:</strong> Whether to turn on allowing 
to store non serializable objects in the cache. If this option is enabled then 
overflow to disk cannot be enabled as well.</td></tr></tbody></table></div><h3 
id="BookComponentAppendix-CacheComponentoptions">Cache Component 
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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>configuration</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>org.apache.camel.component.cach
 e.CacheConfiguration</code> configuration.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>cacheManagerFactory</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>org.apache.camel.component.cache.CacheManagerFactory</code>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>configurationFile</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong>Camel 2.13/2.12.3:</strong> To configure the 
location of the <code>ehcache.xml</code> file to use, such as 
<code>classpath:com/foo/mycache.xml</code> to load from classpath. If no 
configuration is given, then the default settings from EHCache is 
used.</p></td></tr></tbody></table></div><h3 
id="BookComponentAppendix-Sending/ReceivingMessagesto/fromthecache"><span 
style="line-height: 1.5625;">Sending/Recei
 ving Messages to/from the cache</span></h3><h4 
id="BookComponentAppendix-MessageHeadersuptoCamel2.7">Message Headers up to 
Camel 2.7</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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>CACHE_OPERATION</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The operation to be performed 
on the cache. Valid options are</p><ul 
class="alternate"><li>GET</li><li>CHECK</li><li>ADD</li><li>UPDATE</li><li>DELETE</li><li>DELETEALL<br
 clear="none" class="atl-forced-newline"> <code>GET</code> and 
<code>CHECK</code> requires <strong>Camel 2.3</strong> 
onwards.</li></ul></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CACHE_KEY</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The cache key u
 sed to store the Message in the cache. The cache key is optional if the 
CACHE_OPERATION is DELETEALL</p></td></tr></tbody></table></div></div><h4 
id="BookComponentAppendix-MessageHeadersCamel2.8+">Message Headers Camel 
2.8+</h4><div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Header changes in 
Camel 2.8</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>The header names and supported 
values have changed to be prefixed with 'CamelCache' and use mixed case. This 
makes them easier to identify and keep separate from other headers. The 
CacheConstants variable names remain unchanged, just their values have been 
changed. Also, these headers are now removed from the exchange after the cache 
operation is performed.</p></div></div><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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelCacheOperation</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The operation to be performed 
on the cache. The valid options are</p><ul 
class="alternate"><li>CamelCacheGet</li><li>CamelCacheCheck</li><li>CamelCacheAdd</li><li>CamelCacheUpdate</li><li>CamelCacheDelete</li><li>CamelCacheDeleteAll</li></ul></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheKey</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The cache key used to store the Message in 
the cache. The cache key is optional if the CamelCacheOperation is 
CamelCacheDeleteAll</p></td></tr></tbody></table></div></div><p>The 
<code>CamelCacheAdd</code> and <code>CamelCacheUpdate</code> operations support 
additional headers:</p><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>CamelCacheTimeToLive</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> Time to live 
in seconds.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheTimeToIdle</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> Time to idle 
in seconds.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheEternal</code></p></td><td colspan="1" 
rowspan="1" class="conflu
 enceTd"><p><code>Boolean</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong>Camel 2.11:</strong> Whether the content is 
eternal.</p></td></tr></tbody></table></div></div><h4 
id="BookComponentAppendix-CacheProducer">Cache Producer</h4><p>Sending data to 
the cache involves the ability to direct payloads in exchanges to be stored in 
a pre-existing or created-on-demand cache. The mechanics of doing this 
involve</p><ul class="alternate"><li>setting the Message Exchange Headers shown 
above.</li><li>ensuring that the Message Exchange Body contains the message 
directed to the cache</li></ul><h4 
id="BookComponentAppendix-CacheConsumer">Cache Consumer</h4><p>Receiving data 
from the cache involves the ability of the CacheConsumer to listen on a 
pre-existing or created-on-demand Cache using an event Listener and receive 
automatic notifications when any cache activity take place (i.e 
CamelCacheGet/CamelCacheUpdate/CamelCacheDelete/CamelCacheDeleteAll). Upon such 
an activi
 ty taking place</p><ul class="alternate"><li>an exchange containing Message 
Exchange Headers and a Message Exchange Body containing the just added/updated 
payload is placed and sent.</li><li>in case of a CamelCacheDeleteAll operation, 
the Message Exchange Header CamelCacheKey and the Message Exchange Body are not 
populated.</li></ul><h4 id="BookComponentAppendix-CacheProcessors">Cache 
Processors</h4><p>There are a set of nice processors with the ability to 
perform cache lookups and selectively replace payload content at the</p><ul 
class="alternate"><li>body</li><li>token</li><li>xpath level</li></ul><h3 
id="BookComponentAppendix-CacheUsageSamples">Cache Usage Samples</h3><h4 
id="BookComponentAppendix-Example1:Configuringthecache">Example 1: Configuring 
the cache</h4><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</div></div><p>You can append query options to the URI in the following 
format, <code>?option=value&amp;option=#beanRef&amp;...</code></p><h3 
id="BookComponentAppendix-Options.3">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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>maxElementsInMemory</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The number of elements that may 
be stored in the defined cache</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>memoryStoreEvictionPolicy</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>MemoryStoreEvictionPolicy.LFU</code></p></td><td 
colspan="1"
  rowspan="1" class="confluenceTd"><p>The number of elements that may be stored 
in the defined cache. Options include</p><ul 
class="alternate"><li>MemoryStoreEvictionPolicy.LFU - Least frequently 
used</li><li>MemoryStoreEvictionPolicy.LRU - Least recently 
used</li><li>MemoryStoreEvictionPolicy.FIFO - first in first out, the oldest 
element by creation time</li></ul></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>overflowToDisk</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Specifies whether cache may overflow to 
disk</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>eternal</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Sets whether elements are eternal. If 
eternal, timeouts are ignored and the<br clear="none" 
class="atl-forced-newline"> eleme
 nt never expires.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeToLiveSeconds</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>300</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The maximum time between creation time and 
when an element expires.<br clear="none" class="atl-forced-newline"> Is used 
only if the element is not eternal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeToIdleSeconds</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>300</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The maximum amount of time between accesses 
before an element expires</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>diskPersistent</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Whether the disk store persists between rest
 arts of the Virtual Machine.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>diskExpiryThreadIntervalSeconds</code></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><code>120</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The number of seconds between 
runs of the disk expiry thread.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cacheManagerFactory</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.8:</strong> If 
you want to use a custom factory which instantiates and creates the EHCache 
<code>net.sf.ehcache.CacheManager</code>. <br clear="none" 
class="atl-forced-newline"> <br clear="none" class="atl-forced-newline"> 
<em>Type:</em> abstract 
org.apache.camel.component.cache.CacheManagerFactory</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>eventListenerRegistry</c
 ode></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.8:</strong> Sets a list of EHCache 
<code>net.sf.ehcache.event.CacheEventListener</code> for all new caches- no 
need to define it per cache in EHCache xml config anymore. <br clear="none" 
class="atl-forced-newline"> <br clear="none" class="atl-forced-newline"> 
<em>Type:</em> 
org.apache.camel.component.cache.CacheEventListenerRegistry</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cacheLoaderRegistry</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.8:</strong> 
Sets a list of <code>org.apache.camel.component.cache.CacheLoaderWrapper</code> 
that extends EHCache <code>net.sf.ehcache.loader.CacheLoader</code> for all new 
caches- no need to define it per cache in EHCache xml config anymore. <br c
 lear="none" class="atl-forced-newline"> <br clear="none" 
class="atl-forced-newline"> <em>Type:</em> 
org.apache.camel.component.cache.CacheLoaderRegistry</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>key</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.10:</strong> To 
configure using a cache key by default. If a key is provided in the message 
header, then the key from the header takes precedence.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>operation</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.10:</strong> To configure 
using an cache operation by default. If an operation in the message header, 
then the operation from the header takes precedence.</p></td></tr><tr><td 
colspan="1" rowspan="1" class="conf
 luenceTd"><p>objectCache</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>false</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong style="line-height: 1.42857;">Camel 
2.15:</strong> Whether to turn on allowing to store non serializable objects in 
the cache. If this option is enabled then overflow to disk cannot be enabled as 
well.</p></td></tr></tbody></table></div><h3 
id="BookComponentAppendix-CacheComponentoptions">Cache Component 
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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>configuration</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom <code>org.ap
 ache.camel.component.cache.CacheConfiguration</code> 
configuration.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>cacheManagerFactory</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>To use a custom 
<code>org.apache.camel.component.cache.CacheManagerFactory</code>.</p></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>configurationFile</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><strong>Camel 2.13/2.12.3:</strong> To configure the 
location of the <code>ehcache.xml</code> file to use, such as 
<code>classpath:com/foo/mycache.xml</code> to load from classpath. If no 
configuration is given, then the default settings from EHCache is 
used.</p></td></tr></tbody></table></div><h3 
id="BookComponentAppendix-Sending/ReceivingMessagesto/fromthecache"><span 
style="line-heigh
 t: 1.5625;">Sending/Receiving Messages to/from the cache</span></h3><h4 
id="BookComponentAppendix-MessageHeadersuptoCamel2.7">Message Headers up to 
Camel 2.7</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>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>CACHE_OPERATION</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The operation to be performed 
on the cache. Valid options are</p><ul 
class="alternate"><li>GET</li><li>CHECK</li><li>ADD</li><li>UPDATE</li><li>DELETE</li><li>DELETEALL<br
 clear="none" class="atl-forced-newline"> <code>GET</code> and 
<code>CHECK</code> requires <strong>Camel 2.3</strong> 
onwards.</li></ul></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CACHE_KEY</code></p></td><td colspan="1" 
rowspan="1" class="conflue
 nceTd"><p>The cache key used to store the Message in the cache. The cache key 
is optional if the CACHE_OPERATION is 
DELETEALL</p></td></tr></tbody></table></div></div><h4 
id="BookComponentAppendix-MessageHeadersCamel2.8+">Message Headers Camel 
2.8+</h4><div class="confluence-information-macro 
confluence-information-macro-information"><p class="title">Header changes in 
Camel 2.8</p><span class="aui-icon aui-icon-small aui-iconfont-info 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>The header names and supported 
values have changed to be prefixed with 'CamelCache' and use mixed case. This 
makes them easier to identify and keep separate from other headers. The 
CacheConstants variable names remain unchanged, just their values have been 
changed. Also, these headers are now removed from the exchange after the cache 
operation is performed.</p></div></div><div class="confluenceTableSmall"><div 
class="table-wrap"><table class="confluenceTable"><t
 body><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>CamelCacheOperation</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The operation to be performed 
on the cache. The valid options are</p><ul 
class="alternate"><li>CamelCacheGet</li><li>CamelCacheCheck</li><li>CamelCacheAdd</li><li>CamelCacheUpdate</li><li>CamelCacheDelete</li><li>CamelCacheDeleteAll</li></ul></td></tr><tr><td
 colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheKey</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>The cache key used to store the Message in 
the cache. The cache key is optional if the CamelCacheOperation is 
CamelCacheDeleteAll</p></td></tr></tbody></table></div></div><p>The 
<code>CamelCacheAdd</code> and <code>CamelCacheUpdate</code> operations support 
additional headers:</p><div class="conflue
 nceTableSmall"><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>CamelCacheTimeToLive</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> Time to live 
in seconds.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheTimeToIdle</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>Integer</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> Time to idle 
in seconds.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>CamelCacheEternal</code></p></td><td colspan="1" 
 rowspan="1" class="confluenceTd"><p><code>Boolean</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong> 
Whether the content is eternal.</p></td></tr></tbody></table></div></div><h4 
id="BookComponentAppendix-CacheProducer">Cache Producer</h4><p>Sending data to 
the cache involves the ability to direct payloads in exchanges to be stored in 
a pre-existing or created-on-demand cache. The mechanics of doing this 
involve</p><ul class="alternate"><li>setting the Message Exchange Headers shown 
above.</li><li>ensuring that the Message Exchange Body contains the message 
directed to the cache</li></ul><h4 
id="BookComponentAppendix-CacheConsumer">Cache Consumer</h4><p>Receiving data 
from the cache involves the ability of the CacheConsumer to listen on a 
pre-existing or created-on-demand Cache using an event Listener and receive 
automatic notifications when any cache activity take place (i.e 
CamelCacheGet/CamelCacheUpdate/CamelCacheDelete/CamelCacheDelete
 All). Upon such an activity taking place</p><ul class="alternate"><li>an 
exchange containing Message Exchange Headers and a Message Exchange Body 
containing the just added/updated payload is placed and sent.</li><li>in case 
of a CamelCacheDeleteAll operation, the Message Exchange Header CamelCacheKey 
and the Message Exchange Body are not populated.</li></ul><h4 
id="BookComponentAppendix-CacheProcessors">Cache Processors</h4><p>There are a 
set of nice processors with the ability to perform cache lookups and 
selectively replace payload content at the</p><ul 
class="alternate"><li>body</li><li>token</li><li>xpath level</li></ul><h3 
id="BookComponentAppendix-CacheUsageSamples">Cache Usage Samples</h3><h4 
id="BookComponentAppendix-Example1:Configuringthecache">Example 1: Configuring 
the cache</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[from(&quot;cache://MyApplicationCache&quot; +
           &quot;?maxElementsInMemory=1000&quot; +
           &quot;&amp;memoryStoreEvictionPolicy=&quot; +
@@ -1016,11 +1016,11 @@ template.send(&quot;direct:alias-verify&
 ]]></script>
 </div></div><p></p><h3 id="BookComponentAppendix-SeeAlso.8">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><li><a 
shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a 
shape="rect" href="data-format.html">Data Format</a></li></ul> <h2 
id="BookComponentAppendix-CXFComponent">CXF Component</h2><div 
class="confluence-information-macro confluence-information-macro-note"><span 
class="aui-icon aui-icon-small aui-iconfont-warning 
confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>When using CXF as a consumer, the 
<a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows 
you to factor out how message payloads are received from their processing as a 
RESTful or SOAP web service. This has the potential of using a multitude of 
transports to cons
 ume web services. The bean component's configuration is also simpler and 
provides the fastest method to implement web services using Camel and 
CXF.</p></div></div><div class="confluence-information-macro 
confluence-information-macro-tip"><span class="aui-icon aui-icon-small 
aui-iconfont-approve confluence-information-macro-icon"></span><div 
class="confluence-information-macro-body"><p>When using CXF in streaming modes 
(see DataFormat option), then also read about <a shape="rect" 
href="stream-caching.html">Stream caching</a>.</p></div></div><p>The 
<strong>cxf:</strong> component provides integration with <a shape="rect" 
href="http://cxf.apache.org";>Apache CXF</a> for connecting to JAX-WS services 
hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1458422271975 {padding: 0px;}
-div.rbtoc1458422271975 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1458422271975 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1458483461721 {padding: 0px;}
+div.rbtoc1458483461721 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1458483461721 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1458422271975">
+/*]]>*/</style></p><div class="toc-macro rbtoc1458483461721">
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookComponentAppendix-CXFComponent">CXF Component</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookComponentAppendix-URIformat">URI format</a></li><li><a shape="rect" 
href="#BookComponentAppendix-Options">Options</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#BookComponentAppendix-Thedescriptionsofthedataformats">The descriptions 
of the dataformats</a>



Reply via email to