Modified: websites/production/camel/content/book-pattern-appendix.html
==============================================================================
--- websites/production/camel/content/book-pattern-appendix.html (original)
+++ websites/production/camel/content/book-pattern-appendix.html Sun Sep 21 
09:18:43 2014
@@ -4210,9 +4210,7 @@ from("file://inbox").sort(body
 PollingConsumer consumer = endpoint.createPollingConsumer();
 Exchange exchange = consumer.receive();
 ]]></script>
-</div></div><p>The <code>ConsumerTemplate</code> (discussed below) is also 
available.</p><p>There are 3 main polling methods on <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></p><div
 class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Method name</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive()">receive()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Waits until a message is 
available and then returns it; potentially blocking 
forever</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" href="http://camel.
 
apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive(long)">receive(long)</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange, waiting up to the given timeout and returning null if no message 
exchange could be received within the time available</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receiveNoWait()">receiveNoWait()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange immediately without waiting and returning null if a message exchange 
is not available yet</p></td></tr></tbody></table></div><h3 
id="BookPatternAppendix-EventDrivenPollingConsumerOptions">EventDrivenPollingConsumer
 Options</h3><p>The EventDrivePollingConsumer (the default implementation) 
supports the following options:
 </p><div class="confluenceTableSmall">
-<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p> Option </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>pollingConsumerQueueSize</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>1000</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.14/2.13.1/2.12.4:</strong> The queue 
size for the internal handoff queue between the polling consumer, and producers 
sending data into the queue. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>pollingConsumerBlockWhenFull</code> </p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 
2.14/2.13.1/2.12/4:</strong> Whether to block
  any producer if the internal queue is full. 
</p></td></tr></tbody></table></div>
-</div><p>Notice that some Camel&#160;<a shape="rect" 
href="components.html">Components</a>&#160;has their own implementation 
of&#160;<code>PollingConsumer</code> and therefore do not support the options 
above.</p><p>You can configure these options in endpoints&#160;<a shape="rect" 
href="uris.html">URIs</a>, such as shown below:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>The <code>ConsumerTemplate</code> (discussed below) is also 
available.</p><p>There are 3 main polling methods on <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></p><div
 class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Method name</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive()">receive()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Waits until a message is 
available and then returns it; potentially blocking 
forever</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" href="http://camel.
 
apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive(long)">receive(long)</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange, waiting up to the given timeout and returning null if no message 
exchange could be received within the time available</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receiveNoWait()">receiveNoWait()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange immediately without waiting and returning null if a message exchange 
is not available yet</p></td></tr></tbody></table></div><h3 
id="BookPatternAppendix-EventDrivenPollingConsumerOptions">EventDrivenPollingConsumer
 Options</h3><p>The EventDrivePollingConsumer (the default implementation) 
supports the following options:
 </p><div class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Option</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>pollingConsumerQueueSize</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 
2.14/2.13.1/2.12.4:</strong> The queue size for the internal handoff queue 
between the polling consumer, and producers sending data into the 
queue.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>pollingConsumerBlockWhenFull</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 
2.14/2.13.1/2.12/4:</str
 ong> Whether to block any producer if the internal queue is 
full.</p></td></tr></tbody></table></div></div><p>Notice that some 
Camel&#160;<a shape="rect" href="components.html">Components</a>&#160;has their 
own implementation of&#160;<code>PollingConsumer</code> and therefore do not 
support the options above.</p><p>You can configure these options in 
endpoints&#160;<a shape="rect" href="uris.html">URIs</a>, such as shown 
below:</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[Endpoint endpoint = 
context.getEndpoint(&quot;file:inbox?pollingConsumerQueueSize=50&quot;);
 PollingConsumer consumer = endpoint.createPollingConsumer();
 Exchange exchange = consumer.receive(5000);]]></script>
@@ -4323,10 +4321,7 @@ public static class MyCoolBean {
     }
 }
 ]]></script>
-</div></div><h3 id="BookPatternAppendix-ScheduledPollComponents">Scheduled 
Poll Components</h3><p>Quite a few inbound Camel endpoints use a scheduled poll 
pattern to receive messages and push them through the Camel processing routes. 
That is to say externally from the client the endpoint appears to use an <a 
shape="rect" href="event-driven-consumer.html">Event Driven Consumer</a> but 
internally a scheduled poll is used to monitor some kind of state or resource 
and then fire message exchanges.</p><p>Since this a such a common pattern, 
polling components can extend the <a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a>
 base class which makes it simpler to implement this pattern.</p><p>There is 
also the <a shape="rect" href="quartz.html">Quartz Component</a> which provides 
scheduled delivery of messages using the Quartz enterprise scheduler.</p><p>For 
more detai
 ls see:</p><ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></li><li>Scheduled
 Polling Components<ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a></li><li><a
 shape="rect" href="atom.html">Atom</a></li><li><a shape="rect" 
href="file2.html">File</a></li><li><a shape="rect" 
href="ftp2.html">FTP</a></li><li><a shape="rect" 
href="hbase.html">hbase</a></li><li><a shape="rect" 
href="ibatis.html">iBATIS</a></li><li><a shape="rect" 
href="jpa.html">JPA</a></li><li><a shape="rect" 
href="mail.html">Mail</a></li><li><a shape="rect" 
href="mybatis.html">MyBatis</a></li><li><a shape="rect" 
href="quartz.html">Quartz</a></li><li><a shape="rect" 
href="snmp.html">SNMP</a></li><li><a shape="rect" 
href="aws-s3.html">AWS-S3</a></li><li><a shape="rect" href=
 "aws-sqs.html">AWS-SQS</a></li></ul></li></ul><h3 
id="BookPatternAppendix-ScheduledPollConsumerOptions">ScheduledPollConsumer 
Options</h3><p>The ScheduledPollConsumer supports the following 
options:</p><div class="confluenceTableSmall">
-<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p> Option </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>pollStrategy</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><ul class="alternate"></ul>
-</td><td colspan="1" rowspan="1" class="confluenceTd"><p> A pluggable 
<code>org.apache.camel.PollingConsumerPollingStrategy</code> allowing you to 
provide your custom implementation to control error handling usually occurred 
during the <code>poll</code> operation <strong>before</strong> an <a 
shape="rect" href="exchange.html">Exchange</a> have been created and being 
routed in Camel. In other words the error occurred while the polling was 
gathering information, for instance access to a file network failed so Camel 
cannot access it to scan for files. The default implementation will log the 
caused exception at <code>WARN</code> level and ignore it. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>sendEmptyMessageWhenIdle</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>Camel 2.9:</strong> If the polling 
consumer did not poll any files, you can enable 
 this option to send an empty message (no body) instead. </p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>startScheduler</code> 
</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> 
</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether the 
scheduler should be auto started. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>initialDelay</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <code>1000</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> Milliseconds before the first poll starts. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>delay</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>500</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> Milliseconds before the next poll. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>useFixedDelay</code> </p></td
 ><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p> Controls if fixed delay or 
 >fixed rate is used. See <a shape="rect" class="external-link" 
 >href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html";
 > rel="nofollow">ScheduledExecutorService</a> in JDK for details. In 
 ><strong>Camel 2.7.x</strong> or older the default value is 
 ><code>false</code>. From <strong>Camel 2.8</strong> onwards the default value 
 >is <code>true</code>. </p></td></tr><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd"><p> <code>timeUnit</code> </p></td><td colspan="1" 
 >rowspan="1" class="confluenceTd"><p> <code>TimeUnit.MILLISECONDS</code> 
 ></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> time unit for 
 ><code>initialDelay</code> and <code>delay</code> options. 
 ></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
 ><code>runLoggingLevel</code> </p></td><td colspan="1" rowspan="1" cl
 ass="confluenceTd"><p> <code>TRACE</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.8:</strong> The consumer logs a 
start/complete log line when it polls. This option allows you to configure the 
logging level for that. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>scheduledExecutorService</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> 
Allows for configuring a custom/shared thread pool to use for the consumer. By 
default each consumer has its own single threaded thread pool. This option 
allows you to share a thread pool among multiple consumers. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>greedy</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>Camel 
 2.10.6/2.11.1:</strong> If greedy is enabled, then the ScheduledPollConsumer 
will run immediately again, if the previous run polled 1 or more messages. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>scheduler</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.12:</strong> Allow to plugin a custom 
<code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code> to use as the 
scheduler for firing when the polling consumer runs. The default implementation 
uses the <code>ScheduledExecutorService</code> and there is a <a shape="rect" 
href="quartz2.html">Quartz2</a>, and <a shape="rect" 
href="spring.html">Spring</a> based which supports CRON expressions. 
<strong>Notice:</strong> If using a custom scheduler then the options for 
<code>initialDelay</code>, <code>useFixedDelay</code>, <code>timeUnit</code>, 
and <code>scheduledExecutorService</code> ma
 y not be in use. Use the text <code>quartz2</code> to refer to use the <a 
shape="rect" href="quartz2.html">Quartz2</a> scheduler; and use the text 
<code>spring</code> to use the <a shape="rect" href="spring.html">Spring</a> 
based; and use the text <code>#myScheduler</code> to refer to a custom 
scheduler by its id in the <a shape="rect" href="registry.html">Registry</a>. 
See <a shape="rect" href="quartz2.html">Quartz2</a> page for an example. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>scheduler.xxx</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.12:</strong> To configure additional 
properties when using a custom <code>scheduler</code> or any of the <a 
shape="rect" href="quartz2.html">Quartz2</a>, <a shape="rect" 
href="spring.html">Spring</a> based scheduler. </p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>b
 ackoffMultiplier</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.12:</strong> To let the scheduled 
polling consumer backoff if there has been a number of subsequent idles/errors 
in a row. The multiplier is then the number of polls that will be skipped 
before the next actual attempt is happening again. When this option is in use 
then <code>backoffIdleThreshold</code> and/or 
<code>backoffErrorThreshold</code> must also be configured. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>backoffIdleThreshold</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.12:</strong> The number of subsequent 
idle polls that should happen before the <code>backoffMultipler</code> should 
kick-in. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenc
 eTd"><p> <code>backoffErrorThreshold</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <strong>Camel 2.12:</strong> The number of 
subsequent error polls (failed due some error) that should happen before the 
<code>backoffMultipler</code> should kick-in. 
</p></td></tr></tbody></table></div>
-</div><h3 
id="BookPatternAppendix-Usingbackofftolettheschedulerbelessaggressive">Using 
backoff to let the scheduler be less aggressive</h3><p><strong>Available as of 
Camel 2.12</strong></p><p>The scheduled <a shape="rect" 
href="polling-consumer.html">Polling Consumer</a> is by default static by using 
the same poll frequency whether or not there is messages to pickup or not. From 
Camel 2.12 onwards you can configure the scheduled <a shape="rect" 
href="polling-consumer.html">Polling Consumer</a> to be more dynamic by using 
backoff. This allows the scheduler to skip N number of polls when it becomes 
idle, or there has been X number of errors in a row. See more details in the 
table above for the <code>backoffXXX</code> options.</p><p>For example to let a 
FTP consumer backoff if its becoming idle for a while you can do:</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div><h3 id="BookPatternAppendix-ScheduledPollComponents">Scheduled 
Poll Components</h3><p>Quite a few inbound Camel endpoints use a scheduled poll 
pattern to receive messages and push them through the Camel processing routes. 
That is to say externally from the client the endpoint appears to use an <a 
shape="rect" href="event-driven-consumer.html">Event Driven Consumer</a> but 
internally a scheduled poll is used to monitor some kind of state or resource 
and then fire message exchanges.</p><p>Since this a such a common pattern, 
polling components can extend the <a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a>
 base class which makes it simpler to implement this pattern.</p><p>There is 
also the <a shape="rect" href="quartz.html">Quartz Component</a> which provides 
scheduled delivery of messages using the Quartz enterprise scheduler.</p><p>For 
more detai
 ls see:</p><ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></li><li>Scheduled
 Polling Components<ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a></li><li><a
 shape="rect" href="atom.html">Atom</a></li><li><a shape="rect" 
href="beanstalk.html">Beanstalk</a></li><li><a shape="rect" 
href="file2.html">File</a></li><li><a shape="rect" 
href="ftp2.html">FTP</a></li><li><a shape="rect" 
href="hbase.html">hbase</a></li><li><a shape="rect" 
href="ibatis.html">iBATIS</a></li><li><a shape="rect" 
href="jpa.html">JPA</a></li><li><a shape="rect" 
href="mail.html">Mail</a></li><li><a shape="rect" 
href="mybatis.html">MyBatis</a></li><li><a shape="rect" 
href="quartz.html">Quartz</a></li><li><a shape="rect" 
href="snmp.html">SNMP</a></li><li><a shape="rect"
  href="aws-s3.html">AWS-S3</a></li><li><a shape="rect" 
href="aws-sqs.html">AWS-SQS</a></li></ul></li></ul><h3 
id="BookPatternAppendix-ScheduledPollConsumerOptions">ScheduledPollConsumer 
Options</h3><p>The ScheduledPollConsumer supports the following 
options:</p><div class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Option</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>pollStrategy</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>A pluggable 
<code>org.apache.camel.PollingConsumerPollingStrategy</code> allowing you to 
provide your custom implementation to control error handling usually occurred 
during the <code>poll</code> operation <strong>before<
 /strong> an <a shape="rect" href="exchange.html">Exchange</a> have been 
created and being routed in Camel. In other words the error occurred while the 
polling was gathering information, for instance access to a file network failed 
so Camel cannot access it to scan for files. The default implementation will 
log the caused exception at <code>WARN</code> level and ignore 
it.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sendEmptyMessageWhenIdle</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>Camel 2.9:</strong> If 
the polling consumer did not poll any files, you can enable this option to send 
an empty message (no body) instead.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>startScheduler</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceT
 d"><p>Whether the scheduler should be auto started.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>initialDelay</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>Milliseconds before the first poll 
starts.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>delay</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>500</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Milliseconds before the next poll.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>useFixedDelay</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Controls if fixed delay or fixed rate is used. See <a 
shape="rect" class="external-link" 
href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html";
  rel="nofollow">ScheduledExecutorService</a> in JDK for details. In 
<strong>Camel 2.7.x</strong> or older the default value is <code>false</code>. 
From <strong>Camel 2.8</strong> onwards the default value is 
<code>true</code>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeUnit</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>TimeUnit.MILLISECONDS</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>time unit for 
<code>initialDelay</code> and <code>delay</code> options.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>runLoggingLevel</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>TRACE</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.8:</strong> The consumer 
logs a start/complete log line when it polls. This option allows you to 
configure the logging level for that.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd
 "><p><code>scheduledExecutorService</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> Allows for configuring a 
custom/shared thread pool to use for the consumer. By default each consumer has 
its own single threaded thread pool. This option allows you to share a thread 
pool among multiple consumers.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>greedy</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>Camel 2.10.6/2.11.1:</strong> If greedy is 
enabled, then the ScheduledPollConsumer will run immediately again, if the 
previous run polled 1 or more messages.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>scheduler</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.12:</strong> Allow to plugin a custom 
<code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code> to use as the 
scheduler for firing when the polling consumer runs. The default implementation 
uses the <code>ScheduledExecutorService</code> and there is a <a shape="rect" 
href="quartz2.html">Quartz2</a>, and <a shape="rect" 
href="spring.html">Spring</a> based which supports CRON expressions. 
<strong>Notice:</strong> If using a custom scheduler then the options for 
<code>initialDelay</code>, <code>useFixedDelay</code>, <code>timeUnit</code>, 
and <code>scheduledExecutorService</code> may not be in use. Use the text 
<code>quartz2</code> to refer to use the <a shape="rect" 
href="quartz2.html">Quartz2</a> scheduler; and use the text <code>spring</code> 
to use the <a shape="rect" href="spring.html">Spring</a> based; and use the 
text <code>#myScheduler</code> to refer to a custom scheduler by its id in the 
<a shape="rect"
  href="registry.html">Registry</a>. See <a shape="rect" 
href="quartz2.html">Quartz2</a> page for an example.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>scheduler.xxx</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.12:</strong> To configure 
additional properties when using a custom <code>scheduler</code> or any of the 
<a shape="rect" href="quartz2.html">Quartz2</a>, <a shape="rect" 
href="spring.html">Spring</a> based scheduler.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>backoffMultiplier</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> To 
let the scheduled polling consumer backoff if there has been a number of 
subsequent idles/errors in a row. The multiplier is then the number of polls 
that
  will be skipped before the next actual attempt is happening again. When this 
option is in use then <code>backoffIdleThreshold</code> and/or 
<code>backoffErrorThreshold</code> must also be 
configured.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>backoffIdleThreshold</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The number of subsequent idle polls that should happen before the 
<code>backoffMultipler</code> should kick-in.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>backoffErrorThreshold</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The number of subsequent error polls (failed due some error) that should happen 
before the <code>backoffMultipler</code> should kick-in.</p></td></tr
 ></tbody></table></div></div><h3 
 >id="BookPatternAppendix-Usingbackofftolettheschedulerbelessaggressive">Using 
 >backoff to let the scheduler be less aggressive</h3><p><strong>Available as 
 >of Camel 2.12</strong></p><p>The scheduled <a shape="rect" 
 >href="polling-consumer.html">Polling Consumer</a> is by default static by 
 >using the same poll frequency whether or not there is messages to pickup or 
 >not. From Camel 2.12 onwards you can configure the scheduled <a shape="rect" 
 >href="polling-consumer.html">Polling Consumer</a> to be more dynamic by using 
 >backoff. This allows the scheduler to skip N number of polls when it becomes 
 >idle, or there has been X number of errors in a row. See more details in the 
 >table above for the <code>backoffXXX</code> options.</p><p>For example to let 
 >a FTP consumer backoff if its becoming idle for a while you can do:</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(&quot;ftp://myserver?username=foo&amp;passowrd=secret?delete=true&amp;delay=5s&amp;backoffMultiplier=6&amp;backoffIdleThreshold=5&quot;)
       .to(&quot;bean:processFile&quot;);
 ]]></script>

Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/camel/content/camel-2150-release.html
==============================================================================
--- websites/production/camel/content/camel-2150-release.html (original)
+++ websites/production/camel/content/camel-2150-release.html Sun Sep 21 
09:18:43 2014
@@ -84,7 +84,7 @@
        <tbody>
         <tr>
         <td valign="top" width="100%">
-<div class="wiki-content maincontent"><h1 
id="Camel2.15.0Release-Camel2.15.0release(currentlyinprogress)">Camel&#160;2.15.0
 release (currently in progress)</h1><div 
style="padding-right:20px;float:left;margin-left:-20px;"><p><img 
class="confluence-embedded-image confluence-external-resource" 
src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png"; 
data-image-src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png";></p></div><div
 style="min-height:200px">&#160;</div><h2 
id="Camel2.15.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to 
the 2.15.0 release which approx XXX issues resolved (new features, improvements 
and bug fixes such as...)</p><ul><li>highlighted issue 
fixed</li><li>highlighted issue fixed</li></ul><h3 
id="Camel2.15.0Release-New">New <a shape="rect" 
href="enterprise-integration-patterns.html">Enterprise Integration 
Patterns</a></h3><h3 id="Camel2.15.0Release-New.1">New <a shape="rect" 
href="components.html">Components</a></h3><h3
  id="Camel2.15.0Release-NewDSL">New DSL</h3><h3 
id="Camel2.15.0Release-NewAnnotations">New Annotations</h3><h3 
id="Camel2.15.0Release-NewDataFormats">New <a shape="rect" 
href="data-format.html">Data Formats</a></h3><h3 
id="Camel2.15.0Release-New.2">New <a shape="rect" 
href="languages.html">Languages</a></h3><h3 id="Camel2.15.0Release-New.3">New 
<a shape="rect" href="examples.html">Examples</a></h3><h3 
id="Camel2.15.0Release-New.4">New <a shape="rect" 
href="tutorials.html">Tutorials</a></h3><h2 
id="Camel2.15.0Release-APIbreaking">API breaking</h2><h2 
id="Camel2.15.0Release-KnownIssues">Known Issues</h2><h2 
id="Camel2.15.0Release-DependencyUpgrades"><span>Dependency 
Upgrades</span></h2><ul><li>CXF 3.0.1 to 3.0.2</li><li>Guava 17.0 to 
18.0</li><li>Spring Security 3.1.7.RELEASE to 3.2.5.RELEASE</li></ul><h2 
id="Camel2.15.0Release-Importantchangestoconsiderwhenupgrading">Important 
changes to consider when upgrading</h2><h2 
id="Camel2.15.0Release-GettingtheDistributions">Getting the Distr
 ibutions</h2><h3 id="Camel2.15.0Release-BinaryDistributions">Binary 
Distributions</h3><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Windows 
Distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" 
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.15.0/apache-camel-x.y.x.zip";>apache-camel-2.15.0.zip</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://www.apache.org/dist/camel/apache-camel/2.15.0/apache-camel-x.y.x.zip.asc";>apache-camel-2.15.0.zip.asc</a></p></td></tr><tr><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Unix/Linux/Cygwin Dis
 tribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" 
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.15.0/apache-camel-x.y.x.tar.gz";>apache-camel-2.15.0.tar.gz</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://www.apache.org/dist/camel/apache-camel/2.15.0/apache-camel-x.y.x.tar.gz.asc";>apache-camel-2.15.0.tar.gz.asc</a></p></td></tr></tbody></table></div>
    <div class="aui-message hint shadowed information-macro">
+<div class="wiki-content maincontent"><h1 
id="Camel2.15.0Release-Camel2.15.0release(currentlyinprogress)">Camel&#160;2.15.0
 release (currently in progress)</h1><div 
style="padding-right:20px;float:left;margin-left:-20px;"><p><img 
class="confluence-embedded-image confluence-external-resource" 
src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png"; 
data-image-src="http://camel.apache.org/download.data/camel-box-v1.0-150x200.png";></p></div><div
 style="min-height:200px">&#160;</div><h2 
id="Camel2.15.0Release-NewandNoteworthy">New and Noteworthy</h2><p>Welcome to 
the 2.15.0 release which approx XXX issues resolved (new features, improvements 
and bug fixes such as...)</p><ul><li>highlighted issue 
fixed</li><li>highlighted issue fixed</li></ul><h3 
id="Camel2.15.0Release-New">New <a shape="rect" 
href="enterprise-integration-patterns.html">Enterprise Integration 
Patterns</a></h3><h3 id="Camel2.15.0Release-New.1">New <a shape="rect" 
href="components.html">Components</a></h3><ul
 ><li><a shape="rect" href="beanstalk.html">camel-beanstalk</a> - for working 
 >with Amazon Beanstalk jobs.</li></ul><h3 id="Camel2.15.0Release-NewDSL">New 
 >DSL</h3><h3 id="Camel2.15.0Release-NewAnnotations">New Annotations</h3><h3 
 >id="Camel2.15.0Release-NewDataFormats">New <a shape="rect" 
 >href="data-format.html">Data Formats</a></h3><h3 
 >id="Camel2.15.0Release-New.2">New <a shape="rect" 
 >href="languages.html">Languages</a></h3><h3 id="Camel2.15.0Release-New.3">New 
 ><a shape="rect" href="examples.html">Examples</a></h3><h3 
 >id="Camel2.15.0Release-New.4">New <a shape="rect" 
 >href="tutorials.html">Tutorials</a></h3><h2 
 >id="Camel2.15.0Release-APIbreaking">API breaking</h2><h2 
 >id="Camel2.15.0Release-KnownIssues">Known Issues</h2><h2 
 >id="Camel2.15.0Release-DependencyUpgrades"><span>Dependency 
 >Upgrades</span></h2><ul><li>Codahale Metrics 3.0 to 3.1</li><li>CXF 3.0.1 to 
 >3.0.2</li><li>Guava 17.0 to 18.0</li><li>Spring Security 3.1.7.RELEASE to 
 >3.2.5.RELEASE</li></ul><h2 id="Camel2.15.0Release-Import
 antchangestoconsiderwhenupgrading">Important changes to consider when 
upgrading</h2><ul><li>Spring 4.x is now the default out of the box Spring 
version.</li></ul><h2 id="Camel2.15.0Release-GettingtheDistributions">Getting 
the Distributions</h2><h3 id="Camel2.15.0Release-BinaryDistributions">Binary 
Distributions</h3><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Download Link</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>PGP Signature file of download</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Windows 
Distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" 
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.15.0/apache-camel-x.y.x.zip";>apache-camel-2.15.0.zip</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
 class="external-link" 
href="http://www.apache.org/dist/camel/apache-camel/2.15.0/apache-camel-x.y.x.zip.asc";>apache-camel-2.15.0.zip.asc</a></p></td></tr><tr><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Unix/Linux/Cygwin 
Distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" 
href="http://www.apache.org/dyn/closer.cgi/camel/apache-camel/2.15.0/apache-camel-x.y.x.tar.gz";>apache-camel-2.15.0.tar.gz</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://www.apache.org/dist/camel/apache-camel/2.15.0/apache-camel-x.y.x.tar.gz.asc";>apache-camel-2.15.0.tar.gz.asc</a></p></td></tr></tbody></table></div>
    <div class="aui-message hint shadowed information-macro">
                     <p class="title">The above URLs use redirection</p>
                             <span class="aui-icon icon-hint">Icon</span>
                 <div class="message-content">

Modified: websites/production/camel/content/component-list.html
==============================================================================
--- websites/production/camel/content/component-list.html (original)
+++ websites/production/camel/content/component-list.html Sun Sep 21 09:18:43 
2014
@@ -132,7 +132,7 @@
 </div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For 
working with <a shape="rect" class="external-link" 
href="http://aws.amazon.com/s3/"; rel="nofollow">Amazon's Simple Storage Service 
(S3)</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean.html">Bean</a> / 
camel-core</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[bean:beanName[?options]
 ]]></script>
-</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Beanstalk<span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" 
href="beanstalk.html">Beanstalk</a><span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[beanstalk:hostname:port/tube[?options]
 ]]></script>
 </div></div><p><span><br clear="none"></span></p></td><td colspan="1" 
rowspan="1" class="confluenceTd">For working with <a shape="rect" 
class="external-link" href="http://aws.amazon.com/elasticbeanstalk/"; 
rel="nofollow">Amazon's Beanstalk</a>.</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean-validator.html">Bean 
Validator</a> / camel-bean-validator</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">

Modified: websites/production/camel/content/components.html
==============================================================================
--- websites/production/camel/content/components.html (original)
+++ websites/production/camel/content/components.html Sun Sep 21 09:18:43 2014
@@ -141,7 +141,7 @@
 </div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For 
working with <a shape="rect" class="external-link" 
href="http://aws.amazon.com/s3/"; rel="nofollow">Amazon's Simple Storage Service 
(S3)</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean.html">Bean</a> / 
camel-core</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[bean:beanName[?options]
 ]]></script>
-</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Beanstalk<span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" 
href="beanstalk.html">Beanstalk</a><span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[beanstalk:hostname:port/tube[?options]
 ]]></script>
 </div></div><p><span><br clear="none"></span></p></td><td colspan="1" 
rowspan="1" class="confluenceTd">For working with <a shape="rect" 
class="external-link" href="http://aws.amazon.com/elasticbeanstalk/"; 
rel="nofollow">Amazon's Beanstalk</a>.</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean-validator.html">Bean 
Validator</a> / camel-bean-validator</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">

Modified: websites/production/camel/content/polling-consumer.html
==============================================================================
--- websites/production/camel/content/polling-consumer.html (original)
+++ websites/production/camel/content/polling-consumer.html Sun Sep 21 09:18:43 
2014
@@ -91,9 +91,7 @@
 PollingConsumer consumer = endpoint.createPollingConsumer();
 Exchange exchange = consumer.receive();
 ]]></script>
-</div></div><p>The <code>ConsumerTemplate</code> (discussed below) is also 
available.</p><p>There are 3 main polling methods on <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></p><div
 class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Method name</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive()">receive()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Waits until a message is 
available and then returns it; potentially blocking 
forever</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" href="http://camel.
 
apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive(long)">receive(long)</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange, waiting up to the given timeout and returning null if no message 
exchange could be received within the time available</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receiveNoWait()">receiveNoWait()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange immediately without waiting and returning null if a message exchange 
is not available yet</p></td></tr></tbody></table></div><h3 
id="PollingConsumer-EventDrivenPollingConsumerOptions">EventDrivenPollingConsumer
 Options</h3><p>The EventDrivePollingConsumer (the default implementation) 
supports the following options:</p>
 <div class="confluenceTableSmall">
-<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p> Option </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>pollingConsumerQueueSize</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>1000</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.14/2.13.1/2.12.4:</strong> The queue 
size for the internal handoff queue between the polling consumer, and producers 
sending data into the queue. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>pollingConsumerBlockWhenFull</code> </p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> </p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <strong>Camel 
2.14/2.13.1/2.12/4:</strong> Whether to block
  any producer if the internal queue is full. 
</p></td></tr></tbody></table></div>
-</div><p>Notice that some Camel&#160;<a shape="rect" 
href="components.html">Components</a>&#160;has their own implementation 
of&#160;<code>PollingConsumer</code> and therefore do not support the options 
above.</p><p>You can configure these options in endpoints&#160;<a shape="rect" 
href="uris.html">URIs</a>, such as shown below:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>The <code>ConsumerTemplate</code> (discussed below) is also 
available.</p><p>There are 3 main polling methods on <a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></p><div
 class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Method name</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive()">receive()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Waits until a message is 
available and then returns it; potentially blocking 
forever</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><a 
shape="rect" class="external-link" href="http://camel.
 
apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receive(long)">receive(long)</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange, waiting up to the given timeout and returning null if no message 
exchange could be received within the time available</p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" 
class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html#receiveNoWait()">receiveNoWait()</a></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p>Attempts to receive a message 
exchange immediately without waiting and returning null if a message exchange 
is not available yet</p></td></tr></tbody></table></div><h3 
id="PollingConsumer-EventDrivenPollingConsumerOptions">EventDrivenPollingConsumer
 Options</h3><p>The EventDrivePollingConsumer (the default implementation) 
supports the following options:</p>
 <div class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Option</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>pollingConsumerQueueSize</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 
2.14/2.13.1/2.12.4:</strong> The queue size for the internal handoff queue 
between the polling consumer, and producers sending data into the 
queue.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>pollingConsumerBlockWhenFull</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 
2.14/2.13.1/2.12/4:</strong>
  Whether to block any producer if the internal queue is 
full.</p></td></tr></tbody></table></div></div><p>Notice that some 
Camel&#160;<a shape="rect" href="components.html">Components</a>&#160;has their 
own implementation of&#160;<code>PollingConsumer</code> and therefore do not 
support the options above.</p><p>You can configure these options in 
endpoints&#160;<a shape="rect" href="uris.html">URIs</a>, such as shown 
below:</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[Endpoint endpoint = 
context.getEndpoint(&quot;file:inbox?pollingConsumerQueueSize=50&quot;);
 PollingConsumer consumer = endpoint.createPollingConsumer();
 Exchange exchange = consumer.receive(5000);]]></script>
@@ -204,10 +202,7 @@ public static class MyCoolBean {
     }
 }
 ]]></script>
-</div></div><h3 id="PollingConsumer-ScheduledPollComponents">Scheduled Poll 
Components</h3><p>Quite a few inbound Camel endpoints use a scheduled poll 
pattern to receive messages and push them through the Camel processing routes. 
That is to say externally from the client the endpoint appears to use an <a 
shape="rect" href="event-driven-consumer.html">Event Driven Consumer</a> but 
internally a scheduled poll is used to monitor some kind of state or resource 
and then fire message exchanges.</p><p>Since this a such a common pattern, 
polling components can extend the <a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a>
 base class which makes it simpler to implement this pattern.</p><p>There is 
also the <a shape="rect" href="quartz.html">Quartz Component</a> which provides 
scheduled delivery of messages using the Quartz enterprise scheduler.</p><p>For 
more details s
 ee:</p><ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></li><li>Scheduled
 Polling Components<ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a></li><li><a
 shape="rect" href="atom.html">Atom</a></li><li><a shape="rect" 
href="file2.html">File</a></li><li><a shape="rect" 
href="ftp2.html">FTP</a></li><li><a shape="rect" 
href="hbase.html">hbase</a></li><li><a shape="rect" 
href="ibatis.html">iBATIS</a></li><li><a shape="rect" 
href="jpa.html">JPA</a></li><li><a shape="rect" 
href="mail.html">Mail</a></li><li><a shape="rect" 
href="mybatis.html">MyBatis</a></li><li><a shape="rect" 
href="quartz.html">Quartz</a></li><li><a shape="rect" 
href="snmp.html">SNMP</a></li><li><a shape="rect" 
href="aws-s3.html">AWS-S3</a></li><li><a shape="rect" href="aws
 -sqs.html">AWS-SQS</a></li></ul></li></ul><h3 
id="PollingConsumer-ScheduledPollConsumerOptions">ScheduledPollConsumer 
Options</h3><p>The ScheduledPollConsumer supports the following 
options:</p><div class="confluenceTableSmall">
-<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p> Option </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>pollStrategy</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><ul class="alternate"></ul>
-</td><td colspan="1" rowspan="1" class="confluenceTd"><p> A pluggable 
<code>org.apache.camel.PollingConsumerPollingStrategy</code> allowing you to 
provide your custom implementation to control error handling usually occurred 
during the <code>poll</code> operation <strong>before</strong> an <a 
shape="rect" href="exchange.html">Exchange</a> have been created and being 
routed in Camel. In other words the error occurred while the polling was 
gathering information, for instance access to a file network failed so Camel 
cannot access it to scan for files. The default implementation will log the 
caused exception at <code>WARN</code> level and ignore it. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>sendEmptyMessageWhenIdle</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>Camel 2.9:</strong> If the polling 
consumer did not poll any files, you can enable 
 this option to send an empty message (no body) instead. </p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>startScheduler</code> 
</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>true</code> 
</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Whether the 
scheduler should be auto started. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>initialDelay</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <code>1000</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> Milliseconds before the first poll starts. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>delay</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>500</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> Milliseconds before the next poll. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>useFixedDelay</code> </p></td
 ><td colspan="1" rowspan="1" class="confluenceTd"><p>&#160;</p></td><td 
 >colspan="1" rowspan="1" class="confluenceTd"><p> Controls if fixed delay or 
 >fixed rate is used. See <a shape="rect" class="external-link" 
 >href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html";
 > rel="nofollow">ScheduledExecutorService</a> in JDK for details. In 
 ><strong>Camel 2.7.x</strong> or older the default value is 
 ><code>false</code>. From <strong>Camel 2.8</strong> onwards the default value 
 >is <code>true</code>. </p></td></tr><tr><td colspan="1" rowspan="1" 
 >class="confluenceTd"><p> <code>timeUnit</code> </p></td><td colspan="1" 
 >rowspan="1" class="confluenceTd"><p> <code>TimeUnit.MILLISECONDS</code> 
 ></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> time unit for 
 ><code>initialDelay</code> and <code>delay</code> options. 
 ></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
 ><code>runLoggingLevel</code> </p></td><td colspan="1" rowspan="1" cl
 ass="confluenceTd"><p> <code>TRACE</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.8:</strong> The consumer logs a 
start/complete log line when it polls. This option allows you to configure the 
logging level for that. </p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>scheduledExecutorService</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> 
Allows for configuring a custom/shared thread pool to use for the consumer. By 
default each consumer has its own single threaded thread pool. This option 
allows you to share a thread pool among multiple consumers. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>greedy</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>Camel 
 2.10.6/2.11.1:</strong> If greedy is enabled, then the ScheduledPollConsumer 
will run immediately again, if the previous run polled 1 or more messages. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>scheduler</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.12:</strong> Allow to plugin a custom 
<code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code> to use as the 
scheduler for firing when the polling consumer runs. The default implementation 
uses the <code>ScheduledExecutorService</code> and there is a <a shape="rect" 
href="quartz2.html">Quartz2</a>, and <a shape="rect" 
href="spring.html">Spring</a> based which supports CRON expressions. 
<strong>Notice:</strong> If using a custom scheduler then the options for 
<code>initialDelay</code>, <code>useFixedDelay</code>, <code>timeUnit</code>, 
and <code>scheduledExecutorService</code> ma
 y not be in use. Use the text <code>quartz2</code> to refer to use the <a 
shape="rect" href="quartz2.html">Quartz2</a> scheduler; and use the text 
<code>spring</code> to use the <a shape="rect" href="spring.html">Spring</a> 
based; and use the text <code>#myScheduler</code> to refer to a custom 
scheduler by its id in the <a shape="rect" href="registry.html">Registry</a>. 
See <a shape="rect" href="quartz2.html">Quartz2</a> page for an example. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>scheduler.xxx</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.12:</strong> To configure additional 
properties when using a custom <code>scheduler</code> or any of the <a 
shape="rect" href="quartz2.html">Quartz2</a>, <a shape="rect" 
href="spring.html">Spring</a> based scheduler. </p></td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"><p> <code>b
 ackoffMultiplier</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.12:</strong> To let the scheduled 
polling consumer backoff if there has been a number of subsequent idles/errors 
in a row. The multiplier is then the number of polls that will be skipped 
before the next actual attempt is happening again. When this option is in use 
then <code>backoffIdleThreshold</code> and/or 
<code>backoffErrorThreshold</code> must also be configured. 
</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> 
<code>backoffIdleThreshold</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p> <strong>Camel 2.12:</strong> The number of subsequent 
idle polls that should happen before the <code>backoffMultipler</code> should 
kick-in. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenc
 eTd"><p> <code>backoffErrorThreshold</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p> <strong>Camel 2.12:</strong> The number of 
subsequent error polls (failed due some error) that should happen before the 
<code>backoffMultipler</code> should kick-in. 
</p></td></tr></tbody></table></div>
-</div><h3 
id="PollingConsumer-Usingbackofftolettheschedulerbelessaggressive">Using 
backoff to let the scheduler be less aggressive</h3><p><strong>Available as of 
Camel 2.12</strong></p><p>The scheduled <a shape="rect" 
href="polling-consumer.html">Polling Consumer</a> is by default static by using 
the same poll frequency whether or not there is messages to pickup or not. From 
Camel 2.12 onwards you can configure the scheduled <a shape="rect" 
href="polling-consumer.html">Polling Consumer</a> to be more dynamic by using 
backoff. This allows the scheduler to skip N number of polls when it becomes 
idle, or there has been X number of errors in a row. See more details in the 
table above for the <code>backoffXXX</code> options.</p><p>For example to let a 
FTP consumer backoff if its becoming idle for a while you can do:</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div><h3 id="PollingConsumer-ScheduledPollComponents">Scheduled Poll 
Components</h3><p>Quite a few inbound Camel endpoints use a scheduled poll 
pattern to receive messages and push them through the Camel processing routes. 
That is to say externally from the client the endpoint appears to use an <a 
shape="rect" href="event-driven-consumer.html">Event Driven Consumer</a> but 
internally a scheduled poll is used to monitor some kind of state or resource 
and then fire message exchanges.</p><p>Since this a such a common pattern, 
polling components can extend the <a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a>
 base class which makes it simpler to implement this pattern.</p><p>There is 
also the <a shape="rect" href="quartz.html">Quartz Component</a> which provides 
scheduled delivery of messages using the Quartz enterprise scheduler.</p><p>For 
more details s
 ee:</p><ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/PollingConsumer.html";>PollingConsumer</a></li><li>Scheduled
 Polling Components<ul><li><a shape="rect" class="external-link" 
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/impl/ScheduledPollConsumer.html";>ScheduledPollConsumer</a></li><li><a
 shape="rect" href="atom.html">Atom</a></li><li><a shape="rect" 
href="beanstalk.html">Beanstalk</a></li><li><a shape="rect" 
href="file2.html">File</a></li><li><a shape="rect" 
href="ftp2.html">FTP</a></li><li><a shape="rect" 
href="hbase.html">hbase</a></li><li><a shape="rect" 
href="ibatis.html">iBATIS</a></li><li><a shape="rect" 
href="jpa.html">JPA</a></li><li><a shape="rect" 
href="mail.html">Mail</a></li><li><a shape="rect" 
href="mybatis.html">MyBatis</a></li><li><a shape="rect" 
href="quartz.html">Quartz</a></li><li><a shape="rect" 
href="snmp.html">SNMP</a></li><li><a shape="rect" hre
 f="aws-s3.html">AWS-S3</a></li><li><a shape="rect" 
href="aws-sqs.html">AWS-SQS</a></li></ul></li></ul><h3 
id="PollingConsumer-ScheduledPollConsumerOptions">ScheduledPollConsumer 
Options</h3><p>The ScheduledPollConsumer supports the following 
options:</p><div class="confluenceTableSmall"><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Option</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>pollStrategy</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>A pluggable 
<code>org.apache.camel.PollingConsumerPollingStrategy</code> allowing you to 
provide your custom implementation to control error handling usually occurred 
during the <code>poll</code> operation <strong>before</strong>
  an <a shape="rect" href="exchange.html">Exchange</a> have been created and 
being routed in Camel. In other words the error occurred while the polling was 
gathering information, for instance access to a file network failed so Camel 
cannot access it to scan for files. The default implementation will log the 
caused exception at <code>WARN</code> level and ignore it.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>sendEmptyMessageWhenIdle</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>Camel 2.9:</strong> If 
the polling consumer did not poll any files, you can enable this option to send 
an empty message (no body) instead.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>startScheduler</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Wh
 ether the scheduler should be auto started.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>initialDelay</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>1000</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>Milliseconds before the first 
poll starts.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>delay</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>500</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Milliseconds before the next poll.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>useFixedDelay</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p>&#160;</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Controls if fixed delay or fixed rate is used. See <a 
shape="rect" class="external-link" 
href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/concurrent/ScheduledExecutorService.html";
 rel="no
 follow">ScheduledExecutorService</a> in JDK for details. In <strong>Camel 
2.7.x</strong> or older the default value is <code>false</code>. From 
<strong>Camel 2.8</strong> onwards the default value is 
<code>true</code>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>timeUnit</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>TimeUnit.MILLISECONDS</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>time unit for 
<code>initialDelay</code> and <code>delay</code> options.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>runLoggingLevel</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>TRACE</code></p></td><td colspan="1" 
rowspan="1" class="confluenceTd"><p><strong>Camel 2.8:</strong> The consumer 
logs a start/complete log line when it polls. This option allows you to 
configure the logging level for that.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><co
 de>scheduledExecutorService</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> Allows for configuring a 
custom/shared thread pool to use for the consumer. By default each consumer has 
its own single threaded thread pool. This option allows you to share a thread 
pool among multiple consumers.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>greedy</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>Camel 2.10.6/2.11.1:</strong> If greedy is 
enabled, then the ScheduledPollConsumer will run immediately again, if the 
previous run polled 1 or more messages.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>scheduler</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td 
colsp
 an="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> Allow 
to plugin a custom 
<code>org.apache.camel.spi.ScheduledPollConsumerScheduler</code> to use as the 
scheduler for firing when the polling consumer runs. The default implementation 
uses the <code>ScheduledExecutorService</code> and there is a <a shape="rect" 
href="quartz2.html">Quartz2</a>, and <a shape="rect" 
href="spring.html">Spring</a> based which supports CRON expressions. 
<strong>Notice:</strong> If using a custom scheduler then the options for 
<code>initialDelay</code>, <code>useFixedDelay</code>, <code>timeUnit</code>, 
and <code>scheduledExecutorService</code> may not be in use. Use the text 
<code>quartz2</code> to refer to use the <a shape="rect" 
href="quartz2.html">Quartz2</a> scheduler; and use the text <code>spring</code> 
to use the <a shape="rect" href="spring.html">Spring</a> based; and use the 
text <code>#myScheduler</code> to refer to a custom scheduler by its id in the 
<a shape="rect" href="r
 egistry.html">Registry</a>. See <a shape="rect" 
href="quartz2.html">Quartz2</a> page for an example.</p></td></tr><tr><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>scheduler.xxx</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.12:</strong> To configure 
additional properties when using a custom <code>scheduler</code> or any of the 
<a shape="rect" href="quartz2.html">Quartz2</a>, <a shape="rect" 
href="spring.html">Spring</a> based scheduler.</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p><code>backoffMultiplier</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> To 
let the scheduled polling consumer backoff if there has been a number of 
subsequent idles/errors in a row. The multiplier is then the number of polls 
that will be
  skipped before the next actual attempt is happening again. When this option 
is in use then <code>backoffIdleThreshold</code> and/or 
<code>backoffErrorThreshold</code> must also be 
configured.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>backoffIdleThreshold</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The number of subsequent idle polls that should happen before the 
<code>backoffMultipler</code> should kick-in.</p></td></tr><tr><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>backoffErrorThreshold</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><code>0</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong> 
The number of subsequent error polls (failed due some error) that should happen 
before the <code>backoffMultipler</code> should kick-in.</p></td></tr></tbody
 ></table></div></div><h3 
 >id="PollingConsumer-Usingbackofftolettheschedulerbelessaggressive">Using 
 >backoff to let the scheduler be less aggressive</h3><p><strong>Available as 
 >of Camel 2.12</strong></p><p>The scheduled <a shape="rect" 
 >href="polling-consumer.html">Polling Consumer</a> is by default static by 
 >using the same poll frequency whether or not there is messages to pickup or 
 >not. From Camel 2.12 onwards you can configure the scheduled <a shape="rect" 
 >href="polling-consumer.html">Polling Consumer</a> to be more dynamic by using 
 >backoff. This allows the scheduler to skip N number of polls when it becomes 
 >idle, or there has been X number of errors in a row. See more details in the 
 >table above for the <code>backoffXXX</code> options.</p><p>For example to let 
 >a FTP consumer backoff if its becoming idle for a while you can do:</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(&quot;ftp://myserver?username=foo&amp;passowrd=secret?delete=true&amp;delay=5s&amp;backoffMultiplier=6&amp;backoffIdleThreshold=5&quot;)
       .to(&quot;bean:processFile&quot;);
 ]]></script>

Modified: websites/production/camel/content/transport.html
==============================================================================
--- websites/production/camel/content/transport.html (original)
+++ websites/production/camel/content/transport.html Sun Sep 21 09:18:43 2014
@@ -145,7 +145,7 @@
 </div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For 
working with <a shape="rect" class="external-link" 
href="http://aws.amazon.com/s3/"; rel="nofollow">Amazon's Simple Storage Service 
(S3)</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean.html">Bean</a> / 
camel-core</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[bean:beanName[?options]
 ]]></script>
-</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Beanstalk<span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" 
href="beanstalk.html">Beanstalk</a><span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[beanstalk:hostname:port/tube[?options]
 ]]></script>
 </div></div><p><span><br clear="none"></span></p></td><td colspan="1" 
rowspan="1" class="confluenceTd">For working with <a shape="rect" 
class="external-link" href="http://aws.amazon.com/elasticbeanstalk/"; 
rel="nofollow">Amazon's Beanstalk</a>.</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean-validator.html">Bean 
Validator</a> / camel-bean-validator</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">

Modified: websites/production/camel/content/uris.html
==============================================================================
--- websites/production/camel/content/uris.html (original)
+++ websites/production/camel/content/uris.html Sun Sep 21 09:18:43 2014
@@ -150,7 +150,7 @@
 </div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>For 
working with <a shape="rect" class="external-link" 
href="http://aws.amazon.com/s3/"; rel="nofollow">Amazon's Simple Storage Service 
(S3)</a>.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean.html">Bean</a> / 
camel-core</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[bean:beanName[?options]
 ]]></script>
-</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Beanstalk<span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+</div></div></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Uses the 
<a shape="rect" href="bean-binding.html">Bean Binding</a> to bind message 
exchanges to beans in the <a shape="rect" href="registry.html">Registry</a>. Is 
also used for exposing and invoking POJO (Plain Old Java 
Objects).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" 
href="beanstalk.html">Beanstalk</a><span> / camel-beanstalk</span></p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
 <script class="theme: Default; brush: plain; gutter: false" 
type="syntaxhighlighter"><![CDATA[beanstalk:hostname:port/tube[?options]
 ]]></script>
 </div></div><p><span><br clear="none"></span></p></td><td colspan="1" 
rowspan="1" class="confluenceTd">For working with <a shape="rect" 
class="external-link" href="http://aws.amazon.com/elasticbeanstalk/"; 
rel="nofollow">Amazon's Beanstalk</a>.</td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><a shape="rect" href="bean-validator.html">Bean 
Validator</a> / camel-bean-validator</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">


Reply via email to