Author: buildbot Date: Tue Feb 24 11:18:49 2015 New Revision: 941291 Log: Production update by buildbot for camel
Modified: 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/file-language.html Modified: websites/production/camel/content/book-in-one-page.html ============================================================================== --- websites/production/camel/content/book-in-one-page.html (original) +++ websites/production/camel/content/book-in-one-page.html Tue Feb 24 11:18:49 2015 @@ -4128,11 +4128,11 @@ While not actual tutorials you might fin </div> </div> <h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1424711849365 {padding: 0px;} -div.rbtoc1424711849365 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1424711849365 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1424776654358 {padding: 0px;} +div.rbtoc1424776654358 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1424776654358 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1424711849365"> +/*]]>*/</style></p><div class="toc-macro rbtoc1424776654358"> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Preface">Preface</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-About">About</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-CreatetheCamelProject">Create the Camel Project</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul> </li><li><a shape="rect" href="#Tutorial-JmsRemoting-WritingtheServer">Writing the Server</a> @@ -6318,11 +6318,11 @@ So we completed the last piece in the pi <style type="text/css">/*<![CDATA[*/ -div.rbtoc1424711849786 {padding: 0px;} -div.rbtoc1424711849786 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1424711849786 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1424776654717 {padding: 0px;} +div.rbtoc1424776654717 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1424776654717 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style><div class="toc-macro rbtoc1424711849786"> +/*]]>*/</style><div class="toc-macro rbtoc1424776654717"> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Introduction">Introduction</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Maven2">Maven 2</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-wsdl">wsdl</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-RunningtheExample">Running the Example</a></li></ul> @@ -9151,7 +9151,7 @@ from("direct:start") <p>From Camel 2.2 onwards, the file language is now merged with <a shape="rect" href="simple.html">Simple</a> language which means you can use all the file syntax directly within the simple language.</p> </div> </div> -<p>The File Expression Language is an extension to the <a shape="rect" href="simple.html">Simple</a> language, adding file related capabilities. These capabilities are related to common use cases working with file path and names. The goal is to allow expressions to be used with the <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp.html">FTP</a> components for setting dynamic file patterns for both consumer and producer.</p><h3 id="BookInOnePage-Syntax">Syntax</h3><p>This language is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language so the <a shape="rect" href="simple.html">Simple</a> syntax applies also. So the table below only lists the additional. <br clear="none"> As opposed to <a shape="rect" href="simple.html">Simple</a> language <a shape="rect" href="file-language.html">File Language</a> also supports <a shape="rect" href="constant.html">Constant</a> expressions so you can enter a fixed filename.</p><p>All the fi le tokens use the same expression name as the method on the <code>java.io.File</code> object, for instance <code>file:absolute</code> refers to the <code>java.io.File.getAbsolute()</code> method. Notice that not all expressions are supported by the current Exchange. For instance the <a shape="rect" href="ftp.html">FTP</a> component supports some of the options, where as the <a shape="rect" href="file2.html">File</a> component supports all of them.</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Producer</p></th><th colspan= "1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td col span="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name with no extension (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no extension and with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan ="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file parent</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confl uenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to whether the file is regarded as absolute or relative</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" cla ss="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the absolute file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:length</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:size</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="conflue nceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:modified</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Date</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>efers to the file last modified returned as a Date type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>date:<em>command:pattern</em></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class ="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for date formatting using the <code>java.text.SimepleDateFormate</code> patterns. Is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language. Additional command is: <strong>file</strong> (consumers only) for the last modified timestamp of the file. Notice: all the commands from the <a shape="rect" href="simple.html">Simple</a> language can also be used.</p></td></tr></tbody></table></div></div><h3 id="BookInOnePage-Filetokenexample">File token example</h3><h4 id="BookInOnePage-Relativepaths">Relative paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>relative</strong> directory: <code>.\filelanguage\test</code>. And we configure our endpoint to use this starting directory <co de>.\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello</p></td>< /tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h4 id="BookInOnePage-Absolutepaths">Absolute paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>absolute</stron g> directory: <code>\workspace\camel\camel-core\target\filelanguage\test</code>. And we configure out endpoint to use the absolute starting directory <code>\workspace\camel\camel-core\target\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class ="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\came l-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h3 id="BookInOnePage-Samples.4">Samples</h3><p>You can enter a fixed <a shape="rect" href="constant.html">Constant</a> expression such as <code>myfile.txt</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<p>The File Expression Language is an extension to the <a shape="rect" href="simple.html">Simple</a> language, adding file related capabilities. These capabilities are related to common use cases working with file path and names. The goal is to allow expressions to be used with the <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp.html">FTP</a> components for setting dynamic file patterns for both consumer and producer.</p><h3 id="BookInOnePage-Syntax">Syntax</h3><p>This language is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language so the <a shape="rect" href="simple.html">Simple</a> syntax applies also. So the table below only lists the additional. <br clear="none"> As opposed to <a shape="rect" href="simple.html">Simple</a> language <a shape="rect" href="file-language.html">File Language</a> also supports <a shape="rect" href="constant.html">Constant</a> expressions so you can enter a fixed filename.</p><p>All the fi le tokens use the same expression name as the method on the <code>java.io.File</code> object, for instance <code>file:absolute</code> refers to the <code>java.io.File.getAbsolute()</code> method. Notice that not all expressions are supported by the current Exchange. For instance the <a shape="rect" href="ftp.html">FTP</a> component supports some of the options, where as the <a shape="rect" href="file2.html">File</a> component supports all of them.</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Producer</p></th><th colspan= "1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td col span="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name with no extension (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no extension and with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan ="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file parent</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confl uenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to whether the file is regarded as absolute or relative</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" cla ss="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the absolute file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:length</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:size</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="conflue nceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:modified</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Date</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>efers to the file last modified returned as a Date type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>date:<em>command:pattern</em></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class ="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for date formatting using the <code>java.text.SimpleDateFormat</code> patterns. Is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language. Additional command is: <strong>file</strong> (consumers only) for the last modified timestamp of the file. Notice: all the commands from the <a shape="rect" href="simple.html">Simple</a> language can also be used.</p></td></tr></tbody></table></div></div><h3 id="BookInOnePage-Filetokenexample">File token example</h3><h4 id="BookInOnePage-Relativepaths">Relative paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>relative</strong> directory: <code>.\filelanguage\test</code>. And we configure our endpoint to use this starting directory <code >.\filelanguage</code>. The file tokens will return as:</p><div >class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" >rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" >rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" >rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" >class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" >rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" >rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" >rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" >rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td >colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td >colspan="1" rowspan="1" >class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" >rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" >rowspan="1" class="confluenceTd"><p>hello</p></td></t r><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h4 id="BookInOnePage-Absolutepaths">Absolute paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>absolute</strong> directory: <code>\workspace\camel\camel-core\target\filelanguage\test</code>. And we configure out endpoint to use the absolute starting directory <code>\workspace\camel\camel-core\target\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class=" confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel- core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h3 id="BookInOnePage-Samples.4">Samples</h3><p>You can enter a fixed <a shape="rect" href="constant.html">Constant</a> expression such as <code>myfile.txt</code>:</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[fileName="myfile.txt" ]]></script> </div></div><p>Lets assume we use the file consumer to read files and want to move the read files to backup folder with the current date as a sub folder. This can be archieved using an expression like:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> @@ -18853,11 +18853,11 @@ template.send("direct:alias-verify& </div> </div> <p>The <strong>cxf:</strong> component provides integration with <a shape="rect" href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1424711855867 {padding: 0px;} -div.rbtoc1424711855867 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1424711855867 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1424776663967 {padding: 0px;} +div.rbtoc1424776663967 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1424776663967 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1424711855867"> +/*]]>*/</style></p><div class="toc-macro rbtoc1424776663967"> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-CXFComponent">CXF Component</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-URIformat">URI format</a></li><li><a shape="rect" href="#CXF-Options">Options</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-Thedescriptionsofthedataformats">The descriptions of the dataformats</a> Modified: websites/production/camel/content/book-languages-appendix.html ============================================================================== --- websites/production/camel/content/book-languages-appendix.html (original) +++ websites/production/camel/content/book-languages-appendix.html Tue Feb 24 11:18:49 2015 @@ -1350,7 +1350,7 @@ from("direct:start") <p>From Camel 2.2 onwards, the file language is now merged with <a shape="rect" href="simple.html">Simple</a> language which means you can use all the file syntax directly within the simple language.</p> </div> </div> -<p>The File Expression Language is an extension to the <a shape="rect" href="simple.html">Simple</a> language, adding file related capabilities. These capabilities are related to common use cases working with file path and names. The goal is to allow expressions to be used with the <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp.html">FTP</a> components for setting dynamic file patterns for both consumer and producer.</p><h3 id="BookLanguagesAppendix-Syntax">Syntax</h3><p>This language is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language so the <a shape="rect" href="simple.html">Simple</a> syntax applies also. So the table below only lists the additional. <br clear="none"> As opposed to <a shape="rect" href="simple.html">Simple</a> language <a shape="rect" href="file-language.html">File Language</a> also supports <a shape="rect" href="constant.html">Constant</a> expressions so you can enter a fixed filename.</p><p>Al l the file tokens use the same expression name as the method on the <code>java.io.File</code> object, for instance <code>file:absolute</code> refers to the <code>java.io.File.getAbsolute()</code> method. Notice that not all expressions are supported by the current Exchange. For instance the <a shape="rect" href="ftp.html">FTP</a> component supports some of the options, where as the <a shape="rect" href="file2.html">File</a> component supports all of them.</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td ><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel >2.3:</strong> refers to the file extension only</p></td></tr><tr><td >colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td >colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>refers to the file name with no extension (is >relative to the starting directory, see note below)</p></td></tr><tr><td >colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td >colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd "><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no extension and with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file parent</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" clas s="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to whether the file is regarded as absolute or relative</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan ="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the absolute file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:length</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:size</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class= "confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:modified</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Date</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>efers to the file last modified returned as a Date type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>date:<em>command:pattern</em></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan=" 1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for date formatting using the <code>java.text.SimepleDateFormate</code> patterns. Is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language. Additional command is: <strong>file</strong> (consumers only) for the last modified timestamp of the file. Notice: all the commands from the <a shape="rect" href="simple.html">Simple</a> language can also be used.</p></td></tr></tbody></table></div></div><h3 id="BookLanguagesAppendix-Filetokenexample">File token example</h3><h4 id="BookLanguagesAppendix-Relativepaths">Relative paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>relative</strong> directory: <code>.\filelanguage\test</code>. And we configure our endpoint to use thi s starting directory <code>.\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluen ceTd"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h4 id="BookLanguagesAppendix-Absolutepaths">Absolute paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the f ollowing <strong>absolute</strong> directory: <code>\workspace\camel\camel-core\target\filelanguage\test</code>. And we configure out endpoint to use the absolute starting directory <code>\workspace\camel\camel-core\target\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td>< td colspan="1" rowspan="1" class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="conflu enceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h3 id="BookLanguagesAppendix-Samples.4">Samples</h3><p>You can enter a fixed <a shape="rect" href="constant.html">Constant</a> expression such as <code>myfile.txt</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<p>The File Expression Language is an extension to the <a shape="rect" href="simple.html">Simple</a> language, adding file related capabilities. These capabilities are related to common use cases working with file path and names. The goal is to allow expressions to be used with the <a shape="rect" href="file2.html">File</a> and <a shape="rect" href="ftp.html">FTP</a> components for setting dynamic file patterns for both consumer and producer.</p><h3 id="BookLanguagesAppendix-Syntax">Syntax</h3><p>This language is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language so the <a shape="rect" href="simple.html">Simple</a> syntax applies also. So the table below only lists the additional. <br clear="none"> As opposed to <a shape="rect" href="simple.html">Simple</a> language <a shape="rect" href="file-language.html">File Language</a> also supports <a shape="rect" href="constant.html">Constant</a> expressions so you can enter a fixed filename.</p><p>Al l the file tokens use the same expression name as the method on the <code>java.io.File</code> object, for instance <code>file:absolute</code> refers to the <code>java.io.File.getAbsolute()</code> method. Notice that not all expressions are supported by the current Exchange. For instance the <a shape="rect" href="ftp.html">FTP</a> component supports some of the options, where as the <a shape="rect" href="file2.html">File</a> component supports all of them.</p><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Consumer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>FTP Producer</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name (is relative to the starting directory, see note below)</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td ><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel >2.3:</strong> refers to the file extension only</p></td></tr><tr><td >colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td >colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p>refers to the file name with no extension (is >relative to the starting directory, see note below)</p></td></tr><tr><td >colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td >colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" >class="confluenceTd "><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file name only with no extension and with no leading paths.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file extension only</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file parent</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" clas s="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to whether the file is regarded as absolute or relative</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan ="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the absolute file path</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:length</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:size</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Long</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class= "confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> refers to the file length returned as a Long type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:modified</td><td colspan="1" rowspan="1" class="confluenceTd"><p>Date</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>no</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>efers to the file last modified returned as a Date type</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>date:<em>command:pattern</em></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan=" 1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>yes</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>for date formatting using the <code>java.text.SimpleDateFormat</code> patterns. Is an <strong>extension</strong> to the <a shape="rect" href="simple.html">Simple</a> language. Additional command is: <strong>file</strong> (consumers only) for the last modified timestamp of the file. Notice: all the commands from the <a shape="rect" href="simple.html">Simple</a> language can also be used.</p></td></tr></tbody></table></div></div><h3 id="BookLanguagesAppendix-Filetokenexample">File token example</h3><h4 id="BookLanguagesAppendix-Relativepaths">Relative paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the following <strong>relative</strong> directory: <code>.\filelanguage\test</code>. And we configure our endpoint to use this starting directory <code>.\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluence Td"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>false</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h4 id="BookLanguagesAppendix-Absolutepaths">Absolute paths</h4><p>We have a <code>java.io.File</code> handle for the file <code>hello.txt</code> in the fol lowing <strong>absolute</strong> directory: <code>\workspace\camel\camel-core\target\filelanguage\test</code>. And we configure out endpoint to use the absolute starting directory <code>\workspace\camel\camel-core\target\filelanguage</code>. The file tokens will return as:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Expression</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Returns</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:name.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>test\hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:onlyname.noext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>hello</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:ext</td><td colspan="1" rowspan="1" class="confluenceTd"><p>txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:parent</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:path</td><td colspan="1" rowspan="1" class="confluenceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute</td><td colspan="1" rowspan="1" class="confluenceTd"><p>true</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">file:absolute.path</td><td colspan="1" rowspan="1" class="confluen ceTd"><p>\workspace\camel\camel-core\target\filelanguage\test\hello.txt</p></td></tr></tbody></table></div><h3 id="BookLanguagesAppendix-Samples.4">Samples</h3><p>You can enter a fixed <a shape="rect" href="constant.html">Constant</a> expression such as <code>myfile.txt</code>:</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[fileName="myfile.txt" ]]></script> </div></div><p>Lets assume we use the file consumer to read files and want to move the read files to backup folder with the current date as a sub folder. This can be archieved using an expression like:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> Modified: websites/production/camel/content/cache/main.pageCache ============================================================================== Binary files - no diff available.