Author: buildbot
Date: Mon May 14 16:24:00 2018
New Revision: 1029873

Log:
Production update by buildbot for camel

Modified:
    websites/production/camel/content/beanshell.html
    websites/production/camel/content/book-in-one-page.html
    websites/production/camel/content/book-languages-appendix.html
    websites/production/camel/content/cache/main.pageCache
    websites/production/camel/content/groovy.html
    websites/production/camel/content/javascript.html
    websites/production/camel/content/php.html
    websites/production/camel/content/python.html
    websites/production/camel/content/ruby.html
    websites/production/camel/content/scripting-languages-context.html
    websites/production/camel/content/scripting-languages.html

Modified: websites/production/camel/content/beanshell.html
==============================================================================
--- websites/production/camel/content/beanshell.html (original)
+++ websites/production/camel/content/beanshell.html Mon May 14 16:24:00 2018
@@ -41,6 +41,7 @@
   <script src='//camel.apache.org/styles/highlighter/scripts/shCore.js' 
type='text/javascript'></script>
   <script src='//camel.apache.org/styles/highlighter/scripts/shBrushJava.js' 
type='text/javascript'></script>
   <script src='//camel.apache.org/styles/highlighter/scripts/shBrushXml.js' 
type='text/javascript'></script>
+  <script src='//camel.apache.org/styles/highlighter/scripts/shBrushGroovy.js' 
type='text/javascript'></script>
   
   <script type="text/javascript">
   SyntaxHighlighter.defaults['toolbar'] = false;
@@ -117,19 +118,36 @@
 
 <p>You could follow the examples above to create an <a shape="rect" 
href="predicate.html">Predicate</a> in a <a shape="rect" 
href="message-filter.html">Message Filter</a> or as an <a shape="rect" 
href="expression.html">Expression</a> for a <a shape="rect" 
href="recipient-list.html">Recipient List</a></p>
 
-<h3 id="BeanShell-ScriptContextOptions"><code>ScriptContext</code> 
Options</h3><p>&#160;</p><rich-text-body>The&#160;<code>JSR-223</code> 
scripting language's&#160;<strong><code>ScriptContext</code></strong> is 
pre-configured with the following attributes all set at 
<strong><code>ENGINE_SCOPE</code></strong>.</rich-text-body><div 
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Attribute</p></th><th colspan="1" 
rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Value</p></th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><span><code>camelContext</code><br 
clear="none"></span></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.CamelContext</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Camel 
Context.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>context</code></p></td><td co
 lspan="1" rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.CamelContext</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Camel Context (cannot be 
used in groovy).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>exchange</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Exchange</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The current 
Exchange.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>properties</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.builder.script.PropertiesFunction</code></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> 
Function with a <strong><code>resolve</code></strong> method to make it easier 
to use Camels <a shape="rect" href="properties.html">Properties</a> component 
from scripts. See further below for example.</p></td></tr><tr><td co
 lspan="1" rowspan="1" class="confluenceTd"><p><code>request</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Message</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p>The&#160;<strong><code>IN</code></strong> 
message.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>response</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Message</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated</strong>: 
The&#160;<strong><code>OUT</code></strong> message. 
The&#160;<strong><code>OUT</code></strong> message 
is&#160;<strong><code>null</code></strong> by default. Use the 
<strong><code>IN</code></strong> message 
instead.</p></td></tr></tbody></table></div><p>See <a shape="rect" 
href="scripting-languages.html">Scripting Languages</a> for the list of 
languages with explicit DSL support.</p><h3 
id="BeanShell-PassingAdditionalArgumentstotheScriptin
 gEngine">Passing Additional Arguments to 
the&#160;<code>ScriptingEngine</code></h3><p><strong>Available from Camel 
2.8</strong></p><p>You can provide additional arguments to the 
<strong><code>ScriptingEngine</code></strong> using a header on the Camel 
message with the key 
<strong><code>CamelScriptArguments</code></strong>.</p><p>Example:<plain-text-body>{snippet:id=e1|lang=java|url=camel/trunk/components/camel-script/src/test/java/org/apache/camel/builder/script/JavaScriptExpressionTest.java}</plain-text-body></p><h3
 id="BeanShell-UsingPropertiesFunction">Using Properties 
Function</h3><p><strong>Available from Camel 2.9</strong></p><p>If you need to 
use the <a shape="rect" href="properties.html">Properties</a> component from a 
script to lookup property placeholders, then its a bit cumbersome to do so. For 
example, to set a header name&#160;<strong><code>myHeader</code></strong> with 
a value from a property placeholder, whose key is taken from a header named 
<strong><code>foo</code><
 
/strong>.</p><plain-text-body>.setHeader("myHeader").groovy("context.resolvePropertyPlaceholders('{{'
 + request.headers.get('foo') + '}}')")
-</plain-text-body><p>From <strong>Camel 2.9</strong>: you can now use the 
properties function and the same example is simpler:</p><parameter 
ac:name="language">java</parameter><plain-text-body>.setHeader("myHeader").groovy("properties.resolve(request.headers.get('foo'))")
-</plain-text-body><h3 id="BeanShell-LoadingScriptFromExternalResource">Loading 
Script From External Resource</h3><p><strong>Available from Camel 
2.11</strong></p><p>You can externalize the script and have Camel load it from 
a resource such as <strong><code>classpath:</code></strong>, 
<strong><code>file:</code></strong>, or <strong><code>http:</code></strong>. 
This is done using the following syntax: 
<strong><code>resource:scheme:location</code></strong> e.g. to refer to a file 
on the classpath you can do:</p><parameter 
ac:name="language">java</parameter><plain-text-body>.setHeader("myHeader").groovy("resource:classpath:mygroovy.groovy")
-</plain-text-body><h3 
id="BeanShell-HowtoGettheResultfromMultipleStatementsScript">How to Get the 
Result from Multiple Statements Script</h3><p><strong>Available from Camel 
2.14</strong></p><p>The script engine's eval method returns 
a&#160;<strong><code>null</code></strong> when it runs a multi-statement 
script. However, Camel can look up the value of a script's result by using the 
key <strong><code>result</code></strong> from the value set. When writing a 
multi-statement script set the value of 
the&#160;<strong><code>result</code></strong> variable as the script return 
value.</p><parameter ac:name="language">text</parameter><plain-text-body>bar = 
"baz";
-# some other statements ... 
-# camel take the result value as the script evaluation result
-result = body * 2 + 1
-</plain-text-body><p>&#160;</p><h3 
id="BeanShell-Dependencies">Dependencies</h3><p>To use scripting languages in 
your camel routes you need to add the a dependency on 
<strong><code>camel-script</code></strong> which integrates the JSR-223 
scripting engine.</p><p>If you use maven you could just add the following to 
your <strong><code>pom.xml</code></strong>, substituting the version number for 
the latest &amp; greatest release (see <a shape="rect" href="download.html">the 
download page for the latest versions</a>).</p><parameter 
ac:name="">xml</parameter><plain-text-body>&lt;dependency&gt;
-  &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
-  &lt;artifactId&gt;camel-script&lt;/artifactId&gt;
-  &lt;version&gt;x.x.x&lt;/version&gt;
-&lt;/dependency&gt;
-</plain-text-body></div>
+<h3 id="BeanShell-ScriptContextOptions"><code>ScriptContext</code> 
Options</h3><p>&#160;</p><p>The&#160;<code>JSR-223</code> scripting 
language's&#160;<strong><code>ScriptContext</code></strong> is pre-configured 
with the following attributes all set at 
<strong><code>ENGINE_SCOPE</code></strong>.</p><div class="table-wrap"><table 
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Attribute</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" 
class="confluenceTh"><p>Value</p></th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><span><code>camelContext</code><br 
clear="none"></span></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.CamelContext</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Camel 
Context.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>context</code></p></td><td colspan="1" 
rowspan="1" clas
 s="confluenceTd"><p><code>org.apache.camel.CamelContext</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The Camel Context (cannot be 
used in groovy).</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>exchange</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Exchange</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p>The current 
Exchange.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>properties</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.builder.script.PropertiesFunction</code></p></td><td
 colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> 
Function with a <strong><code>resolve</code></strong> method to make it easier 
to use Camels <a shape="rect" href="properties.html">Properties</a> component 
from scripts. See further below for example.</p></td></tr><tr><td colspan="1" 
rowspan="1" clas
 s="confluenceTd"><p><code>request</code></p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Message</code></p></td><td 
colspan="1" rowspan="1" 
class="confluenceTd"><p>The&#160;<strong><code>IN</code></strong> 
message.</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p><code>response</code></p></td><td colspan="1" 
rowspan="1" 
class="confluenceTd"><p><code>org.apache.camel.Message</code></p></td><td 
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated</strong>: 
The&#160;<strong><code>OUT</code></strong> message. 
The&#160;<strong><code>OUT</code></strong> message 
is&#160;<strong><code>null</code></strong> by default. Use the 
<strong><code>IN</code></strong> message 
instead.</p></td></tr></tbody></table></div><p>See <a shape="rect" 
href="scripting-languages.html">Scripting Languages</a> for the list of 
languages with explicit DSL support.</p><h3 
id="BeanShell-PassingAdditionalArgumentstotheScriptingEngine">Passing Additiona
 l Arguments to the&#160;<code>ScriptingEngine</code></h3><p><strong>Available 
from Camel 2.8</strong></p><p>You can provide additional arguments to the 
<strong><code>ScriptingEngine</code></strong> using a header on the Camel 
message with the key 
<strong><code>CamelScriptArguments</code></strong>.</p><p>Example:</p><div 
class="code panel pdl" style="border-width: 1px;"><div class="codeContent 
panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[public void testArgumentsExample() throws 
Exception {
+    getMockEndpoint(&quot;mock:result&quot;).expectedMessageCount(0);
+    getMockEndpoint(&quot;mock:unmatched&quot;).expectedMessageCount(1);
+
+    // additional arguments to ScriptEngine
+    Map&lt;String, Object&gt; arguments = new HashMap&lt;&gt;();
+    arguments.put(&quot;foo&quot;, &quot;bar&quot;);
+    arguments.put(&quot;baz&quot;, 7);
+
+    // those additional arguments is provided as a header on the Camel Message
+    template.sendBodyAndHeader(&quot;direct:start&quot;, &quot;hello&quot;, 
ScriptBuilder.ARGUMENTS, arguments);
+
+    assertMockEndpointsSatisfied();
+
+
+ ]]></script>
+</div></div><h3 id="BeanShell-UsingPropertiesFunction"><br clear="none">Using 
Properties Function</h3><p><strong>Available from Camel 2.9</strong></p><p>If 
you need to use the <a shape="rect" href="properties.html">Properties</a> 
component from a script to lookup property placeholders, then its a bit 
cumbersome to do so. For example, to set a header 
name&#160;<strong><code>myHeader</code></strong> with a value from a property 
placeholder, whose key is taken from a header named 
<strong><code>foo</code></strong>.</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: groovy; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[.setHeader(&quot;myHeader&quot;).groovy(&quot;context.resolvePropertyPlaceholders(&#39;{{&#39;
 + request.headers.get(&#39;foo&#39;) + &#39;}}&#39;)&quot;)]]></script>
+</div></div><p>From <strong>Camel 2.9</strong>: you can now use the properties 
function and the same example is simpler:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[.setHeader(&quot;myHeader&quot;).groovy(&quot;properties.resolve(request.headers.get(&#39;foo&#39;))&quot;)]]></script>
+</div></div><h3 id="BeanShell-LoadingScriptFromExternalResource"><br 
clear="none">Loading Script From External Resource</h3><p><strong>Available 
from Camel 2.11</strong></p><p>You can externalize the script and have Camel 
load it from a resource such as <strong><code>classpath:</code></strong>, 
<strong><code>file:</code></strong>, or <strong><code>http:</code></strong>. 
This is done using the following syntax: 
<strong><code>resource:scheme:location</code></strong> e.g. to refer to a file 
on the classpath you can do:</p><div class="code panel pdl" 
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[.setHeader(&quot;myHeader&quot;).groovy(&quot;resource:classpath:mygroovy.groovy&quot;)]]></script>
+</div></div><h3 
id="BeanShell-HowtoGettheResultfromMultipleStatementsScript"><br 
clear="none">How to Get the Result from Multiple Statements 
Script</h3><p><strong>Available from Camel 2.14</strong></p><p>The script 
engine's eval method returns a&#160;<strong><code>null</code></strong> when it 
runs a multi-statement script. However, Camel can look up the value of a 
script's result by using the key <strong><code>result</code></strong> from the 
value set. When writing a multi-statement script set the value of 
the&#160;<strong><code>result</code></strong> variable as the script return 
value.</p><p>textbar = "baz"; # some other statements ... # camel take the 
result value as the script evaluation result result = body * 2 + 
1</p><p>&#160;</p><h3 id="BeanShell-Dependencies">Dependencies</h3><p>To use 
scripting languages in your camel routes you need to add the a dependency on 
<strong><code>camel-script</code></strong> which integrates the JSR-223 
scripting engine.</p><p>If you use maven yo
 u could just add the following to your <strong><code>pom.xml</code></strong>, 
substituting the version number for the latest &amp; greatest release (see <a 
shape="rect" href="download.html">the download page for the latest 
versions</a>).</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+<script class="brush: xml; gutter: false; theme: Default" 
type="syntaxhighlighter"><![CDATA[&lt;dependency&gt;
+ &lt;groupId&gt;org.apache.camel&lt;/groupId&gt;
+ &lt;artifactId&gt;camel-script&lt;/artifactId&gt;
+ &lt;version&gt;x.x.x&lt;/version&gt;
+&lt;/dependency&gt;]]></script>
+</div></div></div>
         </td>
         <td valign="top">
           <div class="navigation">


Reply via email to