You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bu...@apache.org on 2013/07/17 18:21:05 UTC

svn commit: r869856 - in /websites/production/camel/content: cache/main.pageCache camel-2120-release.html stream-caching.html

Author: buildbot
Date: Wed Jul 17 16:21:05 2013
New Revision: 869856

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/camel-2120-release.html
    websites/production/camel/content/stream-caching.html

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

Modified: websites/production/camel/content/camel-2120-release.html
==============================================================================
--- websites/production/camel/content/camel-2120-release.html (original)
+++ websites/production/camel/content/camel-2120-release.html Wed Jul 17 16:21:05 2013
@@ -94,7 +94,7 @@
 
 <p>Welcome to the 2.12.0 release which approx XXX issues resolved (new features, improvements and bug fixes such as...)</p>
 
-<ul><li><a shape="rect" href="endpoint-annotations.html" title="Endpoint Annotations">Endpoint Annotations</a> along with automatically created HTML documentation for the endpoint parameters; this makes it easier for component developers to add a few refactoring-safe annotations to their Endpoint or Consumer implementations and, (along with javadoc comments on the field or setter method), get nice user documentation on how to use the endpoint for free.</li><li><a shape="rect" href="componentconfiguration.html" title="ComponentConfiguration">ComponentConfiguration</a> API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings.</li><li><a shape="rect" href="endpointcompleter.html" title="EndpointCompleter">Endpoi
 ntCompleter</a> API provides a hook so that command line tools (like <a shape="rect" class="external-link" href="http://karaf.apache.org/manual/latest-2.3.x/users-guide/using-console.html">Karaf's shell</a>), IDEs and web tools can get (bash tab like) auto-completion on endpoint paths (such as file or directory names, message queue names, database table names) when creating or using new endpoints</li><li>Reduced stack-frames in use during routing, that also makes Camel's stack traces being logged much less verbose. This also allows people to easier debug the internals of Camel as less <tt>AsyncCallback</tt> callbacks are in use during routing.</li><li>Easy to use <a shape="rect" href="message-history.html" title="Message History">Message History</a> out of the box. And included message history as "route stack-trace" when exceptions logged by <a shape="rect" href="error-handler.html" title="Error Handler">Error Handler</a> to make it easier for end users to spot where the exception o
 ccurred.</li><li><a shape="rect" href="spring-web-services.html" title="Spring Web Services">Spring Web Services</a> now supports setting/receiving SOAP headers more easily using a header on the Camel <a shape="rect" href="message.html" title="Message">Message</a>.</li><li>Evaluating <a shape="rect" href="groovy.html" title="Groovy">Groovy</a> expressions is faster as we cache the compiled scripts.</li><li>Added <tt>base64</tt> option to <a shape="rect" href="shiro-security.html" title="Shiro Security">Shiro Security</a> to allow transferring security token over <a shape="rect" href="jms.html" title="JMS">JMS</a> and other transports as base64 encoded representation.</li><li>Made it easier to use <a shape="rect" href="shiro-security.html" title="Shiro Security">Shiro Security</a> as the credentials can be provided in headers, when sending a message to a secured route.</li><li><a shape="rect" href="bindy.html" title="Bindy">Bindy</a> now supports enums.</li><li>Added new <a shape="re
 ct" href="backlogdebugger.html" title="BacklogDebugger">BacklogDebugger</a> to perform live debugging of messages during routing. The <a shape="rect" href="backlogdebugger.html" title="BacklogDebugger">BacklogDebugger</a> has JMX API allows tooling to control the debugger.</li><li>While using the <a shape="rect" class="external-link" href="http://xircles.codehaus.org/projects/jackson" rel="nofollow">Jackson library</a> through the <a shape="rect" href="json.html" title="JSON">JSON</a> Dataformat there's now a <tt>jsonView</tt> attribute you could make use of directly inside the <a shape="rect" href="dsl.html" title="DSL">DSL</a> itself.</li><li><a shape="rect" href="smpp.html" title="SMPP">SMPP</a> now supports optional parameters in all commands where they are possible.</li><li><a shape="rect" href="jdbc.html" title="JDBC">JDBC</a> now supports named parameters.</li><li>Added timeout support for <a shape="rect" href="direct.html" title="Direct">Direct</a> producers to wait for cons
 umer to become active.</li><li>Added <tt>stats</tt> action to <a shape="rect" href="controlbus.html" title="ControlBus">ControlBus</a> to easily get performance statics in a single XML message.</li><li>Added support for request timeout on <a shape="rect" href="netty.html" title="Netty">Netty</a> producer, and to configure logging level on <a shape="rect" href="netty.html" title="Netty">Netty</a> consumer to be less noisy for ChannelClosedException which can flood the logs when client disconnects abruptly.</li><li><a shape="rect" href="springbatch.html" title="SpringBatch">Spring Batch</a> component producer now returns the <tt>JobExecution</tt> instance as the output message. Users can use the <tt>JobExecution</tt> instance to perform some operations using the Spring Batch API directly.</li><li>Added support for NULL values in <a shape="rect" href="sql-component.html" title="SQL Component">SQL</a> with named parameters.</li><li>Optimized <a shape="rect" href="jetty.html" title="Jett
 y">Jetty</a> streaming responses in non-chunked mode; and as well using buffer sizes based on <tt>HttpServletResponse.getBufferSize()</tt> instead of fixed size of 4kb.</li><li>Added <tt>greedy</tt> option to <a shape="rect" href="polling-consumer.html" title="Polling Consumer">scheduled polling consumer</a>.</li><li>Added support for accessing the length field on Java arrays in <a shape="rect" href="simple.html" title="Simple">Simple</a> language.</li><li>Added support for using JAXB annotations with Camel's Jackson <a shape="rect" href="json.html" title="JSON">JSON</a> component.</li><li>Added the ability for <a shape="rect" href="bindy.html" title="Bindy">Bindy</a> to skip content when parsing fixed-length records.</li><li><a shape="rect" href="mongodb.html" title="MongoDB">MongoDB</a> now supports aggregation queries.</li><li><a shape="rect" href="netty.html" title="Netty">Netty</a> allows to use shared Netty boss and worker thread pools.</li><li>The <a shape="rect" href="camel-
 maven-archetypes.html" title="Camel Maven Archetypes">Camel Maven Archetypes</a> for component and data format now packages as OSGi bundles out of the box.</li></ul>
+<ul><li><a shape="rect" href="endpoint-annotations.html" title="Endpoint Annotations">Endpoint Annotations</a> along with automatically created HTML documentation for the endpoint parameters; this makes it easier for component developers to add a few refactoring-safe annotations to their Endpoint or Consumer implementations and, (along with javadoc comments on the field or setter method), get nice user documentation on how to use the endpoint for free.</li><li><a shape="rect" href="componentconfiguration.html" title="ComponentConfiguration">ComponentConfiguration</a> API provides a handy API for tools developers to introspect on a Component to find all the possible parameters, their types and any extra annotations (like Bean Validation Annotations) to be able to create/edit endpoints or URI strings so that tools can generate nicer UIs for configuring endpoints than just letting folks edit Strings.</li><li><a shape="rect" href="endpointcompleter.html" title="EndpointCompleter">Endpoi
 ntCompleter</a> API provides a hook so that command line tools (like <a shape="rect" class="external-link" href="http://karaf.apache.org/manual/latest-2.3.x/users-guide/using-console.html">Karaf's shell</a>), IDEs and web tools can get (bash tab like) auto-completion on endpoint paths (such as file or directory names, message queue names, database table names) when creating or using new endpoints</li><li>Reduced stack-frames in use during routing, that also makes Camel's stack traces being logged much less verbose. This also allows people to easier debug the internals of Camel as less <tt>AsyncCallback</tt> callbacks are in use during routing.</li><li>Easy to use <a shape="rect" href="message-history.html" title="Message History">Message History</a> out of the box. And included message history as "route stack-trace" when exceptions logged by <a shape="rect" href="error-handler.html" title="Error Handler">Error Handler</a> to make it easier for end users to spot where the exception o
 ccurred.</li><li><a shape="rect" href="spring-web-services.html" title="Spring Web Services">Spring Web Services</a> now supports setting/receiving SOAP headers more easily using a header on the Camel <a shape="rect" href="message.html" title="Message">Message</a>.</li><li>Evaluating <a shape="rect" href="groovy.html" title="Groovy">Groovy</a> expressions is faster as we cache the compiled scripts.</li><li>Added <tt>base64</tt> option to <a shape="rect" href="shiro-security.html" title="Shiro Security">Shiro Security</a> to allow transferring security token over <a shape="rect" href="jms.html" title="JMS">JMS</a> and other transports as base64 encoded representation.</li><li>Made it easier to use <a shape="rect" href="shiro-security.html" title="Shiro Security">Shiro Security</a> as the credentials can be provided in headers, when sending a message to a secured route.</li><li><a shape="rect" href="bindy.html" title="Bindy">Bindy</a> now supports enums.</li><li>Added new <a shape="re
 ct" href="backlogdebugger.html" title="BacklogDebugger">BacklogDebugger</a> to perform live debugging of messages during routing. The <a shape="rect" href="backlogdebugger.html" title="BacklogDebugger">BacklogDebugger</a> has JMX API allows tooling to control the debugger.</li><li>While using the <a shape="rect" class="external-link" href="http://xircles.codehaus.org/projects/jackson" rel="nofollow">Jackson library</a> through the <a shape="rect" href="json.html" title="JSON">JSON</a> Dataformat there's now a <tt>jsonView</tt> attribute you could make use of directly inside the <a shape="rect" href="dsl.html" title="DSL">DSL</a> itself.</li><li><a shape="rect" href="smpp.html" title="SMPP">SMPP</a> now supports optional parameters in all commands where they are possible.</li><li><a shape="rect" href="jdbc.html" title="JDBC">JDBC</a> now supports named parameters.</li><li>Added timeout support for <a shape="rect" href="direct.html" title="Direct">Direct</a> producers to wait for cons
 umer to become active.</li><li>Added <tt>stats</tt> action to <a shape="rect" href="controlbus.html" title="ControlBus">ControlBus</a> to easily get performance statics in a single XML message.</li><li>Added support for request timeout on <a shape="rect" href="netty.html" title="Netty">Netty</a> producer, and to configure logging level on <a shape="rect" href="netty.html" title="Netty">Netty</a> consumer to be less noisy for ChannelClosedException which can flood the logs when client disconnects abruptly.</li><li><a shape="rect" href="springbatch.html" title="SpringBatch">Spring Batch</a> component producer now returns the <tt>JobExecution</tt> instance as the output message. Users can use the <tt>JobExecution</tt> instance to perform some operations using the Spring Batch API directly.</li><li>Added support for NULL values in <a shape="rect" href="sql-component.html" title="SQL Component">SQL</a> with named parameters.</li><li>Optimized <a shape="rect" href="jetty.html" title="Jett
 y">Jetty</a> streaming responses in non-chunked mode; and as well using buffer sizes based on <tt>HttpServletResponse.getBufferSize()</tt> instead of fixed size of 4kb.</li><li>Added <tt>greedy</tt> option to <a shape="rect" href="polling-consumer.html" title="Polling Consumer">scheduled polling consumer</a>.</li><li>Added support for accessing the length field on Java arrays in <a shape="rect" href="simple.html" title="Simple">Simple</a> language.</li><li>Added support for using JAXB annotations with Camel's Jackson <a shape="rect" href="json.html" title="JSON">JSON</a> component.</li><li>Added the ability for <a shape="rect" href="bindy.html" title="Bindy">Bindy</a> to skip content when parsing fixed-length records.</li><li><a shape="rect" href="mongodb.html" title="MongoDB">MongoDB</a> now supports aggregation queries.</li><li><a shape="rect" href="netty.html" title="Netty">Netty</a> allows to use shared Netty boss and worker thread pools.</li><li>The <a shape="rect" href="camel-
 maven-archetypes.html" title="Camel Maven Archetypes">Camel Maven Archetypes</a> for component and data format now packages as OSGi bundles out of the box.</li><li>Easier <a shape="rect" href="stream-caching.html" title="Stream caching">Stream caching</a> configuration using <tt>StreamCachingStrategy</tt>. Also allows spool directory per <a shape="rect" href="camelcontext.html" title="CamelContext">CamelContext</a> instead of shared per JVM. And insight at runtime using JMX management. As well allowing to plugin 3rd party implementations.</li></ul>
 
 
 

Modified: websites/production/camel/content/stream-caching.html
==============================================================================
--- websites/production/camel/content/stream-caching.html (original)
+++ websites/production/camel/content/stream-caching.html Wed Jul 17 16:21:05 2013
@@ -98,6 +98,8 @@ This <tt>StreamCache</tt> is capable of 
 
 <p>However to not change the payload under the covers without the end user really knowing we changed the default in Camel 2.0 to <b>disabled</b>. So in Camel 2.0 you have to explicit enable it if you want to use it.</p></td></tr></table></div>
 
+<div class="panelMacro"><table class="tipMacro"><colgroup span="1"><col span="1" width="24"><col span="1"></colgroup><tr><td colspan="1" rowspan="1" valign="top"><img align="middle" src="https://cwiki.apache.org/confluence/images/icons/emoticons/check.gif" width="16" height="16" alt="" border="0"></td><td colspan="1" rowspan="1">If using Camel 2.12 onwards then see about StreamCachingStrategy further below which is the recommended way to configure stream caching options.</td></tr></table></div>
+
 <h3><a shape="rect" name="Streamcaching-Enablingstreamcaching"></a>Enabling stream caching</h3>
 
 <p>In Apache Camel, you can explicitly enable stream caching for a single route with the <b><tt>streamCaching</tt></b> DSL method:</p>
@@ -251,6 +253,57 @@ context.getProperties().put(CachedOutput
 </div></div>
 
 
+<h3><a shape="rect" name="Streamcaching-UsingStreamCachingStrategy"></a>Using StreamCachingStrategy</h3>
+<p><b>Available as of Camel 2.12</b></p>
+
+<p><a shape="rect" href="stream-caching.html" title="Stream caching">Stream caching</a> is from Camel 2.12 onwards intended to be configured using <tt>org.apache.camel.spi.StreamCachingStrategy</tt>.<br clear="none">
+The old kind of configuration using properties on the <a shape="rect" href="camelcontext.html" title="CamelContext">CamelContext</a> has been marked as deprecated.</p>
+
+<p>The strategy has the following options:</p>
+
+<div class="table-wrap">
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"> Option </th><th colspan="1" rowspan="1" class="confluenceTh"> Default </th><th colspan="1" rowspan="1" class="confluenceTh"> Description </th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> spoolDirectory </td><td colspan="1" rowspan="1" class="confluenceTd"> java.io.tmpdir </td><td colspan="1" rowspan="1" class="confluenceTd"> Base directory where temporary files for spooled streams should be stored. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> spoolThreshold </td><td colspan="1" rowspan="1" class="confluenceTd"> 128kb </td><td colspan="1" rowspan="1" class="confluenceTd"> Size in bytes when the stream should be spooled to disk instead of keeping in memory. Use a value of 0 or negative to disable it all together so streams is always kept in memory regardless of their size. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> spoolChiper </td><td colsp
 an="1" rowspan="1" class="confluenceTd"> null </td><td colspan="1" rowspan="1" class="confluenceTd"> If set, the temporary files are encrypted using the specified cipher transformation (i.e., a valid stream or 8-bit cipher name such as "RC4", "AES/CTR/NoPadding". An empty name "" is treated as null).</td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> bufferSize </td><td colspan="1" rowspan="1" class="confluenceTd"> 4096 </td><td colspan="1" rowspan="1" class="confluenceTd"> Size in bytes of the buffer used in the stream. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> removeSpoolDirectoryWhenStopping </td><td colspan="1" rowspan="1" class="confluenceTd"> true </td><td colspan="1" rowspan="1" class="confluenceTd"> Whether to remove the spool directory when stopping <a shape="rect" href="camelcontext.html" title="CamelContext">CamelContext</a>. </td></tr></tbody></table>
+</div>
+
+
+<h4><a shape="rect" name="Streamcaching-UsingStreamCachingStrategyinJava"></a>Using StreamCachingStrategy in Java</h4>
+
+<p>You can configure the <tt>StreamCachingStrategy</tt> in Java as shown below:</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+context.getStreamCachingStrategy().setSpoolDirectory"/tmp/cachedir");
+context.getStreamCachingStrategy().setSpoolThreshold(64 * 1024);
+context.getStreamCachingStrategy().setBufferSize(16 * 1024);
+// to enable encryption using RC4
+// context.getStreamCachingStrategy().setSpoolChiper("RC4");
+]]></script>
+</div></div>
+
+<p>And remember to enable <a shape="rect" href="stream-caching.html" title="Stream caching">Stream caching</a> on the <a shape="rect" href="camelcontext.html" title="CamelContext">CamelContext</a> or on routes</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[
+context.setStreamCaching(true);
+]]></script>
+</div></div>
+
+<h4><a shape="rect" name="Streamcaching-UsingStreamCachingStrategyinXML"></a>Using StreamCachingStrategy in XML</h4>
+
+<p>And in XML you do</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[
+&lt;!-- define a bean of type StreamCachingStrategy which CamelContext will automatic use --&gt;
+&lt;bean id="streamStrategy" class="org.apache.camel.impl.DefaultStreamCachingStrategy"&gt;
+  &lt;property name="spoolDirectory" value="/tmp/cachedir"/&gt;
+  &lt;property name="spoolThreshold" value="65536"/&gt;
+  &lt;property name="bufferSize" value="16384"/&gt;
+&lt;/bean&gt;
+
+&lt;!-- remember to enable stream caching --&gt;
+&lt;camelContext streamCaching="true" xmlns="http://camel.apache.org/schema/spring"&gt;
+]]></script>
+</div></div>
+
+
 <h3><a shape="rect" name="Streamcaching-Howitworks%3F"></a>How it works?</h3>
 <p>In order to determine if a type requires caching, we leverage the <a shape="rect" href="type-converter.html" title="Type Converter">type converter </a> feature.  Any type that requires stream caching can be converted into an <b><tt>org.apache.camel.StreamCache</tt></b> instance.</p></div>
         </td>