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/06/06 12:18:41 UTC

svn commit: r864637 - in /websites/production/camel/content: cache/main.pageCache camel-2120-release.html weather.html

Author: buildbot
Date: Thu Jun  6 10:18:40 2013
New Revision: 864637

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/weather.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 Thu Jun  6 10:18:40 2013
@@ -84,7 +84,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
 ">EndpointCompleter</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 occurred.</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><l
 i>Added new <a shape="rect" 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">Direc
 t</a> producers to wait for consumer 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></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
 ">EndpointCompleter</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 occurred.</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><l
 i>Added new <a shape="rect" 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">Direc
 t</a> producers to wait for consumer 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></ul>
 
 
 <h3><a shape="rect" name="Camel2.12.0Release-FixedIssues"></a>Fixed Issues</h3>

Modified: websites/production/camel/content/weather.html
==============================================================================
--- websites/production/camel/content/weather.html (original)
+++ websites/production/camel/content/weather.html Thu Jun  6 10:18:40 2013
@@ -76,11 +76,11 @@
         <tr>
         <td valign="top" width="100%">
 <div class="wiki-content maincontent"><h2><a shape="rect" name="Weather-WeatherComponent"></a>Weather Component</h2>
+<p><b>Available as of Camel 2.12</b></p>
 
 <p>The <b>weather:</b> component is used for polling weather information from <a shape="rect" class="external-link" href="http://openweathermap.org" rel="nofollow">Open Weather Map</a> - a site that provides free global weather and forecast information. The information is returned as a json String object.</p>
 
-<p>Camel will poll for updates to the current weather and forecasts once per hour by default.<br clear="none">
-<b>Note:</b> The component currently only supports consuming weather - though we will continue to research ways to <a shape="rect" class="external-link" href="http://en.wikipedia.org/wiki/Rainmaking_(ritual)" rel="nofollow">influence the weather reliably</a></p>
+<p>Camel will poll for updates to the current weather and forecasts once per hour by default.</p>
 
 <p>Maven users will need to add the following dependency to their <tt>pom.xml</tt> for this component:</p>
 <div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
@@ -105,7 +105,7 @@ weather:<span class="code-comment">//&lt
 
 <h3><a shape="rect" name="Weather-Options"></a>Options</h3>
 <div class="confluenceTableSmall"><div class="table-wrap">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"> Property </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"> <tt>location</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>null</tt> </td><td colspan="1" rowspan="1" class="confluenceTd">  If null Camel will try and determine your current location using the geolocation of your ip address, else specify the city,country. For well known city names, Open Weather Map will determine the best fit, but multiple results may be returned. Hence specifying and country as well will return more accurate data </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>period</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>null</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> If null, the current weather will be
  returned, else use values of 5, 7, 14 days. Only the numeric value for the forecast period is actually parsed, so spelling, capitalisation of the time period is up to you (its ignored) </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>mode</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>JSON</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The output format of the weather data. The possible values are <tt>HTML</tt>, <tt>JSON</tt> or <tt>XML</tt> </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>units</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>METRIC</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The units for temperature measurement. The possible values are <tt>IMPERIAL</tt> or <tt>METRIC</tt> </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>consumer.delay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>3600000</tt> </td><td colspan="1" rowspan
 ="1" class="confluenceTd"> Delay in millis between each poll (default is 1 hour) </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>consumer.initialDelay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>1000</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> Millis before polling starts. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>consumer.userFixedDelay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>false</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> If <tt>true</tt>, use fixed delay between polls, otherwise 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. </td></tr></tbody></table>
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"> Property </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"> <tt>location</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>null</tt> </td><td colspan="1" rowspan="1" class="confluenceTd">  If null Camel will try and determine your current location using the geolocation of your ip address, else specify the city,country. For well known city names, Open Weather Map will determine the best fit, but multiple results may be returned. Hence specifying and country as well will return more accurate data. If you specify "current" as the location then the component will try to get the current latitude and longitude and use that to get the weather details. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>period</tt> </td><t
 d colspan="1" rowspan="1" class="confluenceTd"> <tt>null</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> If null, the current weather will be returned, else use values of 5, 7, 14 days. Only the numeric value for the forecast period is actually parsed, so spelling, capitalisation of the time period is up to you (its ignored) </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>mode</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>JSON</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The output format of the weather data. The possible values are <tt>HTML</tt>, <tt>JSON</tt> or <tt>XML</tt> </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>units</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>METRIC</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The units for temperature measurement. The possible values are <tt>IMPERIAL</tt> or <tt>METRIC</tt> </td></tr><tr><td colspan="1" rowsp
 an="1" class="confluenceTd"> <tt>consumer.delay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>3600000</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> Delay in millis between each poll (default is 1 hour) </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>consumer.initialDelay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>1000</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> Millis before polling starts. </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>consumer.userFixedDelay</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> <tt>false</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> If <tt>true</tt>, use fixed delay between polls, otherwise 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. <
 /td></tr></tbody></table>
 </div>
 </div>
 
@@ -118,7 +118,7 @@ weather:<span class="code-comment">//&lt
 
 <h3><a shape="rect" name="Weather-MessageHeaders"></a>Message Headers</h3>
 <div class="confluenceTableSmall"><div class="table-wrap">
-<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"> Header </th><th colspan="1" rowspan="1" class="confluenceTh"> Description </th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>CamelWeatherQuery</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The original query URL sent to the Open Weather Map site </td></tr></tbody></table>
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"> Header </th><th colspan="1" rowspan="1" class="confluenceTh"> Description </th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>CamelWeatherQuery</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> The original query URL sent to the Open Weather Map site </td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"> <tt>CamelWeatherLocation</tt> </td><td colspan="1" rowspan="1" class="confluenceTd"> Used by the producer to override the endpoint location and use the location from this header instead. </td></tr></tbody></table>
 </div>
 </div>
 
@@ -136,7 +136,30 @@ from(<span class="code-quote">"weather:f
 <pre class="code-java">
 from(<span class="code-quote">"weather:foo"</span>).to(<span class="code-quote">"jms:queue:weather"</span>);
 </pre>
-</div></div></div>
+</div></div>
+
+<p>And to find the weather using the producer we do:</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<pre class="code-java">
+from(<span class="code-quote">"direct:start"</span>)
+  .to(<span class="code-quote">"weather:foo?location=Madrid,Spain"</span>);
+</pre>
+</div></div>
+
+<p>And we can send in a message with a header to get the weather for any location as shown:</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<pre class="code-java">
+  <span class="code-object">String</span> json = template.requestBodyAndHeader(<span class="code-quote">"direct:start"</span>, <span class="code-quote">"", "</span>CamelWeatherLocation<span class="code-quote">", "</span>Paris,France", <span class="code-object">String</span>.class);
+</pre>
+</div></div>
+
+<p>And to get the weather at the current location, then:</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent panelContent">
+<pre class="code-java">
+  <span class="code-object">String</span> json = template.requestBodyAndHeader(<span class="code-quote">"direct:start"</span>, <span class="code-quote">"", "</span>CamelWeatherLocation<span class="code-quote">", "</span>current", <span class="code-object">String</span>.class);
+</pre>
+</div></div>
+</div>
         </td>
         <td valign="top">
           <div class="navigation">