Author: buildbot
Date: Tue Jan 28 15:19:18 2014
New Revision: 895634
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/cache.html
websites/production/camel/content/cache/main.pageCache
Modified: websites/production/camel/content/cache.html
==============================================================================
--- websites/production/camel/content/cache.html (original)
+++ websites/production/camel/content/cache.html Tue Jan 28 15:19:18 2014
@@ -86,105 +86,43 @@
<tbody>
<tr>
<td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="Cache-CacheComponent">Cache
Component</h2>
-
-<p><strong>Available as of Camel 2.1</strong></p>
-
-<p>The <strong>cache</strong> component enables you to perform caching
operations using EHCache as the Cache Implementation. The cache itself is
created on demand or if a cache of that name already exists then it is simply
utilized with its original settings.</p>
-
-<p>This component supports producer and event based consumer endpoints.</p>
-
-<p>The Cache consumer is an event based consumer and can be used to listen and
respond to specific cache activities. If you need to perform selections from a
pre-existing cache, use the processors defined for the cache component.</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">
-<script class="theme: Default; brush: xml; gutter: false"
type="syntaxhighlighter"><![CDATA[
-<dependency>
+<div class="wiki-content maincontent"><h2 id="Cache-CacheComponent">Cache
Component</h2><p><strong>Available as of Camel 2.1</strong></p><p>The
<strong>cache</strong> component enables you to perform caching operations
using EHCache as the Cache Implementation. The cache itself is created on
demand or if a cache of that name already exists then it is simply utilized
with its original settings.</p><p>This component supports producer and event
based consumer endpoints.</p><p>The Cache consumer is an event based consumer
and can be used to listen and respond to specific cache activities. If you need
to perform selections from a pre-existing cache, use the processors defined for
the cache component.</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">
+<script class="theme: Default; brush: xml; gutter: false"
type="syntaxhighlighter"><![CDATA[<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-cache</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
]]></script>
-</div></div>
-
-<h3 id="Cache-URIformat">URI format</h3>
-
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-cache://cacheName[?options]
+</div></div><h3 id="Cache-URIformat">URI format</h3><div class="code panel
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
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&option=#beanRef&...</code></p>
-
-<h3 id="Cache-Options">Options</h3>
-<div class="confluenceTableSmall">
-<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>
+</div></div><p>You can append query options to the URI in the following
format, <code>?option=value&option=#beanRef&...</code></p><h3
id="Cache-Options">Options</h3><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="conflu
enceTd"><p> The number of elements that may be stored in the defined cache.
Options include</p>
<ul class="alternate" type="square"><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">
element 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 restarts 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</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 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 c
lear="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 clear="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></tbody></table>
-</div>
-
-<h3 id="Cache-Sending/ReceivingMessagesto/fromthecache">Sending/Receiving
Messages to/from the cache</h3>
-
-<h4 id="Cache-MessageHeadersuptoCamel2.7">Message Headers up to Camel 2.7</h4>
-<div class="confluenceTableSmall">
+<h3 id="Cache-CacheComponentoptions">Cache Component options</h3><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> </p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p> To use a custom
<code>org.apache.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> </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> </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. By default
the configuration is loaded from <code>classpath:ehcache.xml</code>.
</p></td></tr></tbody></table>
+<h3 id="Cache-Sending/ReceivingMessagesto/fromthecache"><span
style="line-height: 1.5625;">Sending/Receiving Messages to/from the
cache</span></h3><h4 id="Cache-MessageHeadersuptoCamel2.7">Message Headers up
to Camel 2.7</h4><div class="confluenceTableSmall">
<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"
type="square"><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 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>
-
-<h4 id="Cache-MessageHeadersCamel2.8+">Message Headers Camel 2.8+</h4>
-
- <div class="aui-message hint shadowed information-macro">
+</div><h4 id="Cache-MessageHeadersCamel2.8+">Message Headers Camel 2.8+</h4>
<div class="aui-message hint shadowed information-macro">
<p class="title">Header changes in Camel 2.8</p>
<span class="aui-icon icon-hint">Icon</span>
<div class="message-content">
-
-<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>
+ <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">
<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"
type="square"><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>
-
-<p>The <code>CamelCacheAdd</code> and <code>CamelCacheUpdate</code> operations
support additional headers: </p>
-<div class="confluenceTableSmall">
+</div><p>The <code>CamelCacheAdd</code> and <code>CamelCacheUpdate</code>
operations support additional headers:</p><div class="confluenceTableSmall">
<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>
-
-
-<h4 id="Cache-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="Cache-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 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="Cache-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="Cache-CacheUsageSamples">Cache Usage Samples</h3>
-
-<h4 id="Cache-Example1:Configuringthecache">Example 1: Configuring the
cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-from("cache://MyApplicationCache" +
+</div><h4 id="Cache-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="Cache-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 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 CamelCacheDelete
All operation, the Message Exchange Header CamelCacheKey and the Message
Exchange Body are not populated.</li></ul><h4 id="Cache-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="Cache-CacheUsageSamples">Cache Usage Samples</h3><h4
id="Cache-Example1:Configuringthecache">Example 1: Configuring the
cache</h4><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[from("cache://MyApplicationCache" +
"?maxElementsInMemory=1000" +
"&memoryStoreEvictionPolicy=" +
"MemoryStoreEvictionPolicy.LFU" +
@@ -195,12 +133,8 @@ from("cache://MyApplicationCache&qu
"&diskPersistent=true" +
"&diskExpiryThreadIntervalSeconds=300")
]]></script>
-</div></div>
-
-<h4 id="Cache-Example2:Addingkeystothecache">Example 2: Adding keys to the
cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4 id="Cache-Example2:Addingkeystothecache">Example 2: Adding
keys to the cache</h4><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
from("direct:start")
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_OPERATION_ADD))
@@ -209,12 +143,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4 id="Cache-Example2:Updatingexistingkeysinacache">Example 2: Updating
existing keys in a cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4 id="Cache-Example2:Updatingexistingkeysinacache">Example 2:
Updating existing keys in a cache</h4><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
from("direct:start")
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_OPERATION_UPDATE))
@@ -223,12 +153,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4 id="Cache-Example3:Deletingexistingkeysinacache">Example 3: Deleting
existing keys in a cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4 id="Cache-Example3:Deletingexistingkeysinacache">Example 3:
Deleting existing keys in a cache</h4><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
from("direct:start")
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_DELETE))
@@ -237,12 +163,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4 id="Cache-Example4:Deletingallexistingkeysinacache">Example 4: Deleting
all existing keys in a cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4 id="Cache-Example4:Deletingallexistingkeysinacache">Example 4:
Deleting all existing keys in a cache</h4><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
from("direct:start")
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_DELETEALL))
@@ -250,12 +172,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4
id="Cache-Example5:NotifyinganychangesregisteringinaCachetoProcessorsandotherProducers">Example
5: Notifying any changes registering in a Cache to Processors and other
Producers</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4
id="Cache-Example5:NotifyinganychangesregisteringinaCachetoProcessorsandotherProducers">Example
5: Notifying any changes registering in a Cache to Processors and other
Producers</h4><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
from("cache://TestCache1")
.process(new Processor() {
@@ -270,12 +188,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4
id="Cache-Example6:UsingProcessorstoselectivelyreplacepayloadwithcachevalues">Example
6: Using Processors to selectively replace payload with cache values</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-RouteBuilder builder = new RouteBuilder() {
+</div></div><h4
id="Cache-Example6:UsingProcessorstoselectivelyreplacepayloadwithcachevalues">Example
6: Using Processors to selectively replace payload with cache values</h4><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() {
public void configure() {
//Message Body Replacer
from("cache://TestCache1")
@@ -300,12 +214,8 @@ RouteBuilder builder = new RouteBuilder(
}
};
]]></script>
-</div></div>
-
-<h4 id="Cache-Example7:GettinganentryfromtheCache">Example 7: Getting an entry
from the Cache</h4>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-from("direct:start")
+</div></div><h4 id="Cache-Example7:GettinganentryfromtheCache">Example 7:
Getting an entry from the Cache</h4><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[from("direct:start")
// Prepare headers
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_OPERATION_GET))
.setHeader(CacheConstants.CACHE_KEY,
constant("Ralph_Waldo_Emerson")).
@@ -320,14 +230,8 @@ from("direct:start")
.end()
.to("direct:nextPhase");
]]></script>
-</div></div>
-
-<h4 id="Cache-Example8:CheckingforanentryintheCache">Example 8: Checking for
an entry in the Cache</h4>
-
-<p>Note: The CHECK command tests existence of an entry in the cache but
doesn't place a message in the body.</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-from("direct:start")
+</div></div><h4 id="Cache-Example8:CheckingforanentryintheCache">Example 8:
Checking for an entry in the Cache</h4><p>Note: The CHECK command tests
existence of an entry in the cache but doesn't place a message in the
body.</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[from("direct:start")
// Prepare headers
.setHeader(CacheConstants.CACHE_OPERATION,
constant(CacheConstants.CACHE_OPERATION_CHECK))
.setHeader(CacheConstants.CACHE_KEY,
constant("Ralph_Waldo_Emerson")).
@@ -341,17 +245,8 @@ from("direct:start")
.to("cache://TestCache1")
.end();
]]></script>
-</div></div>
-
-
-<h3 id="Cache-ManagementofEHCache">Management of EHCache</h3>
-
-<p><a shape="rect" class="external-link" href="http://ehcache.org/"
rel="nofollow">EHCache</a> has its own statistics and management from <a
shape="rect" href="camel-jmx.html">JMX</a>.</p>
-
-<p>Here's a snippet on how to expose them via JMX in a Spring application
context:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: xml; gutter: false"
type="syntaxhighlighter"><![CDATA[
-<bean id="ehCacheManagementService"
class="net.sf.ehcache.management.ManagementService"
init-method="init" lazy-init="false">
+</div></div><h3 id="Cache-ManagementofEHCache">Management of EHCache</h3><p><a
shape="rect" class="external-link" href="http://ehcache.org/"
rel="nofollow">EHCache</a> has its own statistics and management from <a
shape="rect" href="camel-jmx.html">JMX</a>.</p><p>Here's a snippet on how to
expose them via JMX in a Spring application context:</p><div class="code panel
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="theme: Default; brush: xml; gutter: false"
type="syntaxhighlighter"><![CDATA[<bean
id="ehCacheManagementService"
class="net.sf.ehcache.management.ManagementService"
init-method="init" lazy-init="false">
<constructor-arg>
<bean class="net.sf.ehcache.CacheManager"
factory-method="getInstance"/>
</constructor-arg>
@@ -364,51 +259,16 @@ from("direct:start")
<constructor-arg value="true"/>
</bean>
]]></script>
-</div></div>
-
-<p>Of course you can do the same thing in straight Java:</p>
-<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
-ManagementService.registerMBeans(CacheManager.getInstance(), mbeanServer,
true, true, true, true);
+</div></div><p>Of course you can do the same thing in straight Java:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[ManagementService.registerMBeans(CacheManager.getInstance(),
mbeanServer, true, true, true, true);
]]></script>
-</div></div>
-
-<p>You can get cache hits, misses, in-memory hits, disk hits, size stats this
way. You can also change CacheConfiguration parameters on the fly.</p>
-
-<h3 id="Cache-CachereplicationCamel2.8+">Cache replication Camel 2.8+</h3>
-
-<p>The Camel Cache component is able to distribute a cache across server nodes
using several different replication mechanisms including: RMI, JGroups, JMS and
Cache Server.</p>
-
-
-<p>There are two different ways to make it work:</p>
-
-<p><strong>1.</strong> You can configure <code>ehcache.xml</code> manually</p>
-
-<p>OR</p>
-
-<p><strong>2.</strong> You can configure these three options:</p>
-<ul
class="alternate"><li>cacheManagerFactory</li><li>eventListenerRegistry</li><li>cacheLoaderRegistry</li></ul>
-
-
-
-<p>Configuring Camel Cache replication using the first option is a bit of hard
work as you have to configure all caches separately. So in a situation when the
all names of caches are not known, using <code>ehcache.xml</code> is not a good
idea.</p>
-
-<p>The second option is much better when you want to use many different caches
as you do not need to define options per cache. This is because replication
options are set per <code>CacheManager</code> and per
<code>CacheEndpoint</code>. Also it is the only way when cache names are not
know at the development phase.</p>
-
-
- <div class="aui-message warning shadowed information-macro">
+</div></div><p>You can get cache hits, misses, in-memory hits, disk hits, size
stats this way. You can also change CacheConfiguration parameters on the
fly.</p><h3 id="Cache-CachereplicationCamel2.8+">Cache replication Camel
2.8+</h3><p>The Camel Cache component is able to distribute a cache across
server nodes using several different replication mechanisms including: RMI,
JGroups, JMS and Cache Server.</p><p>There are two different ways to make it
work:</p><p><strong>1.</strong> You can configure <code>ehcache.xml</code>
manually</p><p>OR</p><p><strong>2.</strong> You can configure these three
options:</p><ul
class="alternate"><li>cacheManagerFactory</li><li>eventListenerRegistry</li><li>cacheLoaderRegistry</li></ul><p>Configuring
Camel Cache replication using the first option is a bit of hard work as you
have to configure all caches separately. So in a situation when the all names
of caches are not known, using <code>ehcache.xml</code> is not a good
idea.</p><p>The second option i
s much better when you want to use many different caches as you do not need to
define options per cache. This is because replication options are set per
<code>CacheManager</code> and per <code>CacheEndpoint</code>. Also it is the
only way when cache names are not know at the development phase.</p> <div
class="aui-message warning shadowed information-macro">
<span class="aui-icon icon-warning">Icon</span>
<div class="message-content">
-
-<p>It might be useful to read the <a shape="rect" class="external-link"
href="http://ehcache.org/documentation" rel="nofollow">EHCache manual</a> to
get a better understanding of the Camel Cache replication mechanism.</p>
+ <p>It might be useful to read the <a shape="rect"
class="external-link" href="http://ehcache.org/documentation"
rel="nofollow">EHCache manual</a> to get a better understanding of the Camel
Cache replication mechanism.</p>
</div>
</div>
-
-
-<h4 id="Cache-Example:JMScachereplication">Example: JMS cache replication</h4>
-
-<p>JMS replication is the most powerful and secured replication method. Used
together with Camel Cache replication makes it also rather simple.<br
clear="none">
-An example is available on <a shape="rect"
href="cachereplicationjmsexample.html">a separate page</a>.</p></div>
+<h4 id="Cache-Example:JMScachereplication">Example: JMS cache
replication</h4><p>JMS replication is the most powerful and secured replication
method. Used together with Camel Cache replication makes it also rather
simple.<br clear="none"> An example is available on <a shape="rect"
href="cachereplicationjmsexample.html">a separate page</a>.</p></div>
</td>
<td valign="top">
<div class="navigation">
Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.