Author: buildbot
Date: Mon Mar 25 23:19:15 2013
New Revision: 855941
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/cache/main.pageCache
websites/production/camel/content/languages.html
websites/production/camel/content/predicate.html
Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/camel/content/languages.html
==============================================================================
--- websites/production/camel/content/languages.html (original)
+++ websites/production/camel/content/languages.html Mon Mar 25 23:19:15 2013
@@ -77,7 +77,11 @@
<td valign="top" width="100%">
<div class="wiki-content maincontent"><h2><a shape="rect"
name="Languages-Languages"></a>Languages</h2>
-<p>To support flexible and powerful <a shape="rect"
href="enterprise-integration-patterns.html" title="Enterprise Integration
Patterns">Enterprise Integration Patterns</a> Camel supports various Languages
to create an <a shape="rect" href="expression.html"
title="Expression">Expression</a> or <a shape="rect" href="predicate.html"
title="Predicate">Predicate</a> within either the <a shape="rect"
href="dsl.html" title="DSL">Routing Domain Specific Language</a> or the <a
shape="rect" href="xml-configuration.html" title="Xml Configuration">Xml
Configuration</a>. The following languages are supported</p>
+<p>To support flexible and powerful <a shape="rect"
href="enterprise-integration-patterns.html" title="Enterprise Integration
Patterns">Enterprise Integration Patterns</a> Camel supports various Languages
to create an <a shape="rect" href="expression.html"
title="Expression">Expression</a> or <a shape="rect" href="predicate.html"
title="Predicate">Predicate</a> within either the <a shape="rect"
href="dsl.html" title="DSL">Routing Domain Specific Language</a> or the <a
shape="rect" href="xml-configuration.html" title="Xml Configuration">Xml
Configuration</a>. </p>
+
+<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"><b>Combining Predicates</b><br clear="none">When creating
predicates (expressions that evaluate to <tt>true</tt> or <tt>false</tt>), you
can combine several predicates - regardless of the language they are built with
- by using the PredicateBuilder class. For more information, see <a
shape="rect" href="predicate.html#Predicate-CompoundPredicates">Compound
Predicates</a>.</td></tr></table></div>
+
+<p>The following languages are supported:</p>
<ul><li><a shape="rect" href="bean-language.html" title="Bean Language">Bean
Language</a> for using Java for expressions</li><li><a shape="rect"
href="constant.html" title="Constant">Constant</a></li><li>the unified <a
shape="rect" href="el.html" title="EL">EL</a> from JSP and JSF</li><li><a
shape="rect" href="header.html" title="Header">Header</a></li><li><a
shape="rect" href="jxpath.html" title="JXPath">JXPath</a></li><li><a
shape="rect" href="mvel.html" title="Mvel">Mvel</a></li><li><a shape="rect"
href="ognl.html" title="OGNL">OGNL</a></li><li><a shape="rect"
href="ref-language.html" title="Ref Language">Ref Language</a></li><li><a
shape="rect" href="property.html" title="Property">Property</a></li><li><a
shape="rect" href="scripting-languages.html" title="Scripting
Languages">Scripting Languages</a> such as
<ul><li><a shape="rect" href="beanshell.html"
title="BeanShell">BeanShell</a></li><li><a shape="rect" href="javascript.html"
title="JavaScript">JavaScript</a></li><li><a shape="rect" href="groovy.html"
title="Groovy">Groovy</a></li><li><a shape="rect" href="python.html"
title="Python">Python</a></li><li><a shape="rect" href="php.html"
title="PHP">PHP</a></li><li><a shape="rect" href="ruby.html"
title="Ruby">Ruby</a></li></ul>
Modified: websites/production/camel/content/predicate.html
==============================================================================
--- websites/production/camel/content/predicate.html (original)
+++ websites/production/camel/content/predicate.html Mon Mar 25 23:19:15 2013
@@ -137,8 +137,27 @@ from(<span class="code-quote">"jms:queue
<h3><a shape="rect" name="Predicate-CompoundPredicates"></a>Compound
Predicates</h3>
-<p>You can also create compound predicates using boolean operators such as
<tt>and, or, not</tt> and many others.<br clear="none">
-The sample below demonstrates this:</p>
+
+<p>You can also create compound predicates using boolean operators such as
<tt>and, or, not</tt> and many others.</p>
+
+<p>Currently this feature is only available in the Java-based DSLs, but not in
the Spring nor Blueprint DSLs.</p>
+
+<p>Using the <a shape="rect" class="external-link"
href="http://camel.apache.org/maven/current/camel-core/apidocs/org/apache/camel/builder/PredicateBuilder.html"><tt>PredicateBuilder</tt></a>
class, you can combine predicates <b>from different Expression Languages</b>
based on logical operators and comparison operators:</p>
+
+<ul><li><tt>not</tt>, <tt>and</tt>, <tt>or</tt></li><li><tt>isNull</tt>,
<tt>isNotNull</tt></li><li><tt>isEqualTo</tt>, <tt>isGreaterThan</tt>,
<tt>isLessThan</tt></li><li><tt>startsWith</tt>,
<tt>endsWith</tt></li><li><tt>in</tt> ("any of X predicates stands
true")</li></ul>
+
+
+<p>Additionally, with <tt>PredicateBuilder</tt> you can create Regular
Expressions and use them as predicates, applying them to the result of an
expression, e.g. <tt>PredicateBuilder.regex(header("foo"), "\d{4}")</tt>
applies the regular expression to the header = foo.</p>
+
+<p>Combining different Expression Languages is also possible, e.g.:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<pre class="code-java">
+PredicateBuilder.and(XPathBuilder.xpath(<span
class="code-quote">"/bookings/flights"</span>), simple(<span
class="code-quote">"${property.country = 'Spain'}"</span>))
+</pre>
+</div></div>
+
+<p>The sample below demonstrates further use cases:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
<pre class="code-java"><span class="code-comment">// We define 3 predicates
based on some user roles
</span><span class="code-comment">// we have <span
class="code-keyword">static</span> imported and/or from
org.apache.camel.builder.PredicateBuilder
@@ -167,7 +186,6 @@ The sample below demonstrates this:</p>
</pre>
</div></div>
-
<h3><a shape="rect" name="Predicate-ExtensiblePredicates"></a>Extensible
Predicates</h3>
<p>Camel supports extensible Predicates using multiple <a shape="rect"
href="languages.html" title="Languages">Languages</a>; the following languages
are supported out of the box</p>
<ul><li><a shape="rect" href="bean-language.html" title="Bean Language">Bean
Language</a> for using Java for expressions</li><li><a shape="rect"
href="constant.html" title="Constant">Constant</a></li><li>the unified <a
shape="rect" href="el.html" title="EL">EL</a> from JSP and JSF</li><li><a
shape="rect" href="header.html" title="Header">Header</a></li><li><a
shape="rect" href="jxpath.html" title="JXPath">JXPath</a></li><li><a
shape="rect" href="mvel.html" title="Mvel">Mvel</a></li><li><a shape="rect"
href="ognl.html" title="OGNL">OGNL</a></li><li><a shape="rect"
href="ref-language.html" title="Ref Language">Ref Language</a></li><li><a
shape="rect" href="property.html" title="Property">Property</a></li><li><a
shape="rect" href="scripting-languages.html" title="Scripting
Languages">Scripting Languages</a> such as
@@ -198,7 +216,6 @@ The sample below demonstrates this:</p>
<h4><a shape="rect" name="Predicate-SeeAlso"></a>See Also</h4>
<ul class="alternate" type="square"><li><a shape="rect" href="expression.html"
title="Expression">Expression</a></li></ul>
-
</div>
</td>
<td valign="top">