camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r981815 [6/8] - in /websites/production/camel/content: book-architecture.html book-in-one-page.html cache/main.pageCache component-list.html component.html components.html mongodb-gridfs.html transport.html uris.html
Date Fri, 04 Mar 2016 17:21:13 GMT
Added: websites/production/camel/content/mongodb-gridfs.html
==============================================================================
--- websites/production/camel/content/mongodb-gridfs.html (added)
+++ websites/production/camel/content/mongodb-gridfs.html Fri Mar  4 17:21:12 2016
@@ -0,0 +1,218 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html>
+<head>
+    <link href="//camel.apache.org/styles/site.css" rel="stylesheet" type="text/css">
+    <link href="//camel.apache.org/styles/type-settings.css" rel="stylesheet" type="text/css">
+    <script src="//camel.apache.org/styles/prototype.js" type="text/javascript"></script>
+    <script src="//camel.apache.org/styles/rico.js" type="text/javascript"></script>
   
+    <script src="//camel.apache.org/styles/site.js" type="text/javascript"></script>
+
+    <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
+
+    <style type="text/css">
+      .maincontent { overflow:hidden; }
+    </style>
+    <!--[if IE]>
+    <style type="text/css">
+      .maincontent { width:100%; }
+    </style>
+    <![endif]-->
+
+
+  <link href='//camel.apache.org/styles/highlighter/styles/shCoreCamel.css' rel='stylesheet'
type='text/css' />
+  <link href='//camel.apache.org/styles/highlighter/styles/shThemeCamel.css' rel='stylesheet'
type='text/css' />
+  <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 type="text/javascript">
+  SyntaxHighlighter.defaults['toolbar'] = false;
+  SyntaxHighlighter.all();
+  </script>
+
+    <title>
+    Apache Camel: MongoDB GridFS
+    </title>
+</head>
+<body>
+<div class="white_box">
+<div class="header">
+  <div class="header_l">
+    <div class="header_r">
+    </div>
+  </div>
+</div>
+<div class="content">
+  <div class="content_l">
+    <div class="content_r">
+      <div>
+          <!-- Banner -->
+<div id="banner-content"><div id="asf_logo">
+	<div id="activemq_logo" style="height:108px; background:transparent url(banner.data/apache-camel-7.png)
no-repeat scroll left top;">
+            <a shape="rect" style="float:left; width:310px;display:block;text-indent:-5000px;text-decoration:none;line-height:140px;
margin-top:20px; margin-left:18px;" href="http://camel.apache.org/">Camel</a>
+            <a shape="rect" style="float:right; width:180px;display:block;text-indent:-5000px;text-decoration:none;line-height:80px;
margin-top:45px; margin-right:10px;" href="http://www.apache.org">Apache</a>
+	</div>
+</div></div>
+          <!-- Banner -->
+        <div class="top_red_bar">
+          <div id="site-breadcrumbs">
+                <!-- Breadcrumbs -->
+<a href="index.html">Apache Camel</a>&nbsp;&gt;&nbsp;<a href="site.html">Site</a>&nbsp;&gt;&nbsp;<a
href="includes.html">Includes</a>&nbsp;&gt;&nbsp;<a href="component-list.html">Component
List</a>&nbsp;&gt;&nbsp;<a href="mongodb-gridfs.html">MongoDB GridFS</a>
+          </div>
+          <!-- Quicklinks -->
+<div id="site-quicklinks"><p><a shape="rect" href="download.html">Download</a>
| <a shape="rect" href="javadoc.html">JavaDoc</a> | <a shape="rect" href="source.html">Source</a>
| <a shape="rect" href="discussion-forums.html">Forums</a> | <a shape="rect"
href="support.html">Support</a></p></div>
+          <!-- Quicklinks -->
+        </div>
+
+	<table border="0">
+	<tbody>
+        <tr>
+        <td valign="top" width="100%">
+<div class="wiki-content maincontent"><h2 id="MongoDBGridFS-CamelMongoDBGridFScomponent">Camel
MongoDB GridFS component</h2><p><strong>Available as of Camel 2.17</strong></p><p>Maven
users will need to add the following dependency to their <code>pom.xml</code>
for this component:</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-mongodb-gridfs&lt;/artifactId&gt;
+    &lt;version&gt;x.y.z&lt;/version&gt;
+    &lt;!-- use the same version as your Camel core version --&gt;
+&lt;/dependency&gt;
+]]></script>
+</div></div><h2 id="MongoDBGridFS-URIformat">URI format</h2><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[gridfs:connectionBean?database=databaseName&amp;bucket=bucketName[&amp;moreOptions...]
+]]></script>
+</div></div><h2 id="MongoDBGridFS-Endpointoptions">Endpoint options</h2><p>GridFS
endpoints support the following options, depending on whether they are acting like a Producer
or as a Consumer (options vary based on the consumer type too).</p><p>&#160;</p><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Producer</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Consumer</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>database</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>none</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Required.</strong> The name
of the database to which this endpoint will be bound. All operations will be execu
 ted against this database.</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><img
class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>bucket</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>fs</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The name of the GridFS bucket within the Database.
The default is the GridFS.DEFAULT_BUCKET value ("fs").</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><img class="emoticon emoticon-tick" src="https://cwiki
 .apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>operation</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>create</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The id of the operation this endpoint
will execute. Pick from the following:</p><ul><li>Query operations: <code>findOne</code>,
<code>listAll</code>, <code>count</code></li><li>Write
operations: <code>create</code></li><li>Delete operations: <code>remove</code></li></ul></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><img class="emoticon emoti
 con-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>&#160;</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd">query</td><td colspan="1" rowspan="1"
class="confluenceTd">none</td><td colspan="1" rowspan="1" class="confluenceTd">Combined
with the query strategy parameters to create the query used to search for new files.</td><td
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1"
class="confluenceTd"><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">queryStrategy</td><td colspan="1" rowspan="1"
class="confluenceTd">TimeStamp</td><td c
 olspan="1" rowspan="1" class="confluenceTd"><p>The strategy that is used to find
new files. Can be one of:</p><ul><li>TimeStamp - files that are uploaded
after the Consumer starts are processed</li><li>PersistentTimestamp - Like TimeStamp,
but the last timestamp used is persisted to a collection so when the Consumer restarts, it
can resume where it left off</li><li>FileAttribute - finds files that do NOT have
the give attribute. After processing, it adds the attribute.</li><li>TimestampAndFileAttribute
- finds files that are newer than the TimeStamp and are missing the attribute</li><li>PersistentTimestampAndFileAttribute</li></ul></td><td
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1"
class="confluenceTd"><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></td></tr><tr><td colspan="1"
rowspa
 n="1" class="confluenceTd">persistentTSCollection</td><td colspan="1" rowspan="1"
class="confluenceTd">camel-timestamps</td><td colspan="1" rowspan="1" class="confluenceTd">When
using persistent timestamps, this is the Collection that the timestamp is stored into.</td><td
colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1"
class="confluenceTd"><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">persistenTSObject</td><td colspan="1" rowspan="1"
class="confluenceTd">camel-timestamp</td><td colspan="1" rowspan="1" class="confluenceTd">When
using persistent timestamps, this is the object ID for the timestamp object. Each consumer
can have it's own timestamp ID stored in a common Collection</td><td colspan="1"
rowspan="1" class="confluenceTd
 ">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd"><img
class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">fileAttributeName</td><td colspan="1" rowspan="1"
class="confluenceTd">camel-processed</td><td colspan="1" rowspan="1" class="confluenceTd">When
using FileAttribute, this is the name of the attribute that is used. When a file is about
to be processed, the attribute is set to "processing" and then set to "done" when the file
processing is done.</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td
colspan="1" rowspan="1" class="confluenceTd"><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick
 )"></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">delay</td><td
colspan="1" rowspan="1" class="confluenceTd">500 (ms)</td><td colspan="1" rowspan="1"
class="confluenceTd">The delay between polling GridFS for new files</td><td colspan="1"
rowspan="1" class="confluenceTd">&#160;</td><td colspan="1" rowspan="1" class="confluenceTd"><img
class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png"
data-emoticon-name="tick" alt="(tick)"></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">initialDelay</td><td colspan="1" rowspan="1"
class="confluenceTd">1000 (ms)</td><td colspan="1" rowspan="1" class="confluenceTd">The
initial delay before the first poll</td><td colspan="1" rowspan="1" class="confluenceTd">&#160;</td><td
colspan="1" rowspan="1" class="confluenceTd"><img class="emoticon emoticon-tick" src="https://cwiki.apache.org/confluence/s/en_GB/5982/f2b47fb
 3d636c8bc9fd0b11c0ec6d0ae18646be7.1/_/images/icons/emoticons/check.png" data-emoticon-name="tick"
alt="(tick)"></td></tr></tbody></table></div><h2 id="MongoDBGridFS-ConfigurationofdatabaseinSpringXML">Configuration
of database in Spring XML</h2><p>The following Spring XML creates a bean defining
the connection to a MongoDB instance.</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;beans
xmlns=&quot;http://www.springframework.org/schema/beans&quot;
+    xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot;
+    xsi:schemaLocation=&quot;http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd&quot;&gt;
+    &lt;bean id=&quot;mongoBean&quot; class=&quot;com.mongodb.Mongo&quot;&gt;
+        &lt;constructor-arg name=&quot;host&quot; value=&quot;${mongodb.host}&quot;
/&gt;
+        &lt;constructor-arg name=&quot;port&quot; value=&quot;${mongodb.port}&quot;
/&gt;
+    &lt;/bean&gt;
+&lt;/beans&gt;]]></script>
+</div></div><h3 id="MongoDBGridFS-Sampleroute">Sample route</h3><p>The
following route defined in Spring XML executes the operation <a shape="rect" href="#MongoDBGridFS-findOne">
<strong>findOne</strong> </a> on a collection.</p><div class="code
panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width:
1px;"><b>Get a file from GridFS</b></div><div class="codeContent panelContent
pdl">
+<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[&lt;route&gt;
+  &lt;from uri=&quot;direct:start&quot; /&gt;
+  &lt;!-- using bean &#39;mongoBean&#39; defined above --&gt;
+  &lt;to uri=&quot;gridfs:mongoBean?database=${mongodb.database}&amp;amp;operation=findOne&quot;
/&gt;
+  &lt;to uri=&quot;direct:result&quot; /&gt;
+&lt;/route&gt;]]></script>
+</div></div><p>&#160;</p><h2 id="MongoDBGridFS-GridFSoperations-producerendpoint">GridFS
operations - producer endpoint</h2><h4 id="MongoDBGridFS-count">count</h4><p>Returns
the total number of file in the collection, returning an Integer as the OUT message body.<br
clear="none"><br clear="none"></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[//
from(&quot;direct:count&quot;).to(&quot;gridfs?database=tickets&amp;operation=count&quot;);
+Integer result = template.requestBodyAndHeader(&quot;direct:count&quot;, &quot;irrelevantBody&quot;);
+assertTrue(&quot;Result is not of type Long&quot;, result instanceof Integer);
+]]></script>
+</div></div><p>You can provide a filename header to provide a count of
files matching that filename.</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[Map&lt;String,
Object&gt; headers = new HashMap&lt;String, Object&gt;();
+headers.put(Exchange.FILE_NAME, &quot;filename.txt&quot;);
+Integer count = template.requestBodyAndHeaders(&quot;direct:count&quot;, query, headers);
+]]></script>
+</div></div><h4 id="MongoDBGridFS-listAll">listAll</h4><p>Returns
an Reader that lists all the filenames and their IDs in a tab separated stream.</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[//
from(&quot;direct:listAll&quot;).to(&quot;gridfs?database=tickets&amp;operation=listAll&quot;);
+Reader result = template.requestBodyAndHeader(&quot;direct:listAll&quot;, &quot;irrelevantBody&quot;);
+
+filename1.txt	1252314321
+filename2.txt	2897651254]]></script>
+</div></div><p>&#160;</p><h4 id="MongoDBGridFS-findOne"><strong>findOne</strong></h4><p>Finds
a file in the GridFS system and sets the body to an InputStream of the content. &#160;
Also provides the metadata has headers. &#160;It uses Exchange.FILE_NAME from the incoming
headers to determine the file to find.</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[//
from(&quot;direct:findOne&quot;).to(&quot;gridfs?database=tickets&amp;operation=findOne&quot;);
+Map&lt;String, Object&gt; headers = new HashMap&lt;String, Object&gt;();
+headers.put(Exchange.FILE_NAME, &quot;filename.txt&quot;);
+InputStream result = template.requestBodyAndHeaders(&quot;direct:findOne&quot;, &quot;irrelevantBody&quot;,
headers);
+
+]]></script>
+</div></div><p>&#160;</p><h4 id="MongoDBGridFS-create">create</h4><p>Creates
a new file in the GridFs database. It uses the Exchange.FILE_NAME from the incoming headers
for the name and the body contents (as an InputStream) as the content.</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[//
from(&quot;direct:create&quot;).to(&quot;gridfs?database=tickets&amp;operation=create&quot;);
+Map&lt;String, Object&gt; headers = new HashMap&lt;String, Object&gt;();
+headers.put(Exchange.FILE_NAME, &quot;filename.txt&quot;);
+InputStream stream = ... the data for the file ...
+template.requestBodyAndHeaders(&quot;direct:create&quot;, stream, headers);]]></script>
+</div></div><h4 id="MongoDBGridFS-remove">remove</h4><p>Removes
a file from the GridFS database.</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[//
from(&quot;direct:remove&quot;).to(&quot;gridfs?database=tickets&amp;operation=remove&quot;);
+Map&lt;String, Object&gt; headers = new HashMap&lt;String, Object&gt;();
+headers.put(Exchange.FILE_NAME, &quot;filename.txt&quot;);
+template.requestBodyAndHeaders(&quot;direct:remove&quot;, &quot;&quot;, headers);]]></script>
+</div></div><h3 id="MongoDBGridFS-GridFSConsumer">GridFS Consumer</h3><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>&#160;</p><p>See
also</p><ul><li><a shape="rect" class="external-link" href="http://www.mongodb.org/"
rel="nofollow">MongoDB website</a></li><li><a shape="rect" class="external-link"
href="http://en.wikipedia.org/wiki/NoSQL" rel="nofollow">NoSQL Wikipedia article</a></li><li><a
shape="rect" class="external-link" href="http://api.mongodb.org/java/current/" rel="nofollow">MongoDB
Java driver API docs - current version</a></li><li><a shape="rect" class="external-link"
href="http://svn.apache.org/viewvc/camel/trunk/components/camel-mongodb/src/test/">Unit
tests</a> for more examples of usage</li></ul></div>
+        </td>
+        <td valign="top">
+          <div class="navigation">
+            <div class="navigation_top">
+                <!-- NavigationBar -->
+<div class="navigation_bottom" id="navigation_bottom"><h3 id="Navigation-Overview"><a
shape="rect" href="overview.html">Overview</a></h3><ul class="alternate"><li><a
shape="rect" href="index.html">Home</a></li><li><a shape="rect" href="download.html">Download</a></li><li><a
shape="rect" href="getting-started.html">Getting Started</a></li><li><a
shape="rect" href="faq.html">FAQ</a></li></ul><h3 id="Navigation-Documentation"><a
shape="rect" href="documentation.html">Documentation</a></h3><ul class="alternate"><li><a
shape="rect" href="user-guide.html">User Guide</a></li><li><a shape="rect"
href="manual.html">Manual</a></li><li><a shape="rect" href="books.html">Books</a></li><li><a
shape="rect" href="tutorials.html">Tutorials</a></li><li><a shape="rect"
href="examples.html">Examples</a></li><li><a shape="rect" href="cookbook.html">Cookbook</a></li><li><a
shape="rect" href="architecture.html">Architecture</a></li><li><a
shape="rect" href="enterprise-integration-patterns.html">Enterprise
  Integration Patterns</a></li><li><a shape="rect" href="dsl.html">DSL</a></li><li><a
shape="rect" href="components.html">Components</a></li><li><a shape="rect"
href="data-format.html">Data Format</a></li><li><a shape="rect" href="languages.html">Languages</a></li><li><a
shape="rect" href="security.html">Security</a></li><li><a shape="rect"
href="security-advisories.html">Security Advisories</a></li></ul><h3
id="Navigation-Search">Search</h3><form enctype="application/x-www-form-urlencoded"
method="get" id="cse-search-box" action="http://www.google.com/cse">
+  <div>
+    <input type="hidden" name="cx" value="007878419884033443453:m5nhvy4hmyq">
+    <input type="hidden" name="ie" value="UTF-8">
+    <input type="text" name="q" size="21">
+    <input type="submit" name="sa" value="Search">
+  </div>
+</form>
+<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&amp;lang=en"></script><h3
id="Navigation-Community"><a shape="rect" href="community.html">Community</a></h3><ul
class="alternate"><li><a shape="rect" href="support.html">Support</a></li><li><a
shape="rect" href="contributing.html">Contributing</a></li><li><a
shape="rect" href="discussion-forums.html">Discussion Forums</a></li><li><a
shape="rect" href="mailing-lists.html">Mailing Lists</a></li><li><a
shape="rect" href="user-stories.html">User Stories</a></li><li><a
shape="rect" href="news.html">News</a></li><li><a shape="rect" href="articles.html">Articles</a></li><li><a
shape="rect" href="site.html">Site</a></li><li><a shape="rect" href="team.html">Team</a></li><li><a
shape="rect" class="external-link" href="http://camel-extra.googlecode.com/" rel="nofollow">Camel
Extra</a></li></ul><h3 id="Navigation-Developers"><a shape="rect"
href="developers.html">Developers</a></h3><ul class="alternate"
 ><li><a shape="rect" href="developers.html">Developer Guide</a></li><li><a
shape="rect" href="source.html">Source</a></li><li><a shape="rect"
href="building.html">Building</a></li><li><a shape="rect" href="javadoc.html">JavaDoc</a></li><li><a
shape="rect" href="irc-room.html">IRC Room</a></li></ul><h3 id="Navigation-ApacheSoftwareFoundation">Apache
Software Foundation</h3><ul class="alternate"><li><a shape="rect" class="external-link"
href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect"
class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a></li><li><a
shape="rect" class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a
shape="rect" class="external-link" href="http://www.apache.org/security/">Security</a></li></ul></div>
+                <!-- NavigationBar -->
+            </div>
+          </div>
+        </td>
+        </tr>
+	</tbody>
+        </table>
+
+
+        <div class="bottom_red_bar"></div>
+      </div>
+    </div>
+  </div>
+</div>
+<div class="black_box">
+<div class="footer">
+  <div class="footer_l">
+    <div class="footer_r">
+      <div>
+        <a href="$base/privacy-policy.html">Privacy Policy</a> -
+        (<a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=62685622">edit
page</a>)
+   	 (<a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=62685622&amp;showComments=true&amp;showCommentArea=true#addcomment">add
comment</a>)
+      </div>
+    </div>
+  </div>
+</div>
+</div>
+</div>
+<div class="design_attribution">
+&copy; 2004-2015 The Apache Software Foundation.
+<br>          
+Apache Camel, Camel, Apache, the Apache feather logo, and the Apache Camel project logo are
trademarks of The Apache Software Foundation.  All other marks mentioned may be trademarks
or registered trademarks of their respective owners.
+<br>
+<a href="http://hiramchirino.com">Graphic Design By Hiram</a>
+</div>
+
+<!-- Camel committers that would like access to the Analytics, send a note to private@camel.apache.org
-->
+<script type="text/javascript">
+
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', 'UA-25976253-1']);
+  _gaq.push(['_trackPageview']);
+
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
+  })();
+
+</script>
+
+</body>
+</html>
+
+



Mime
View raw message