Author: buildbot Date: Thu Jan 16 03:44:46 2014 New Revision: 894346 Log: Production update by buildbot for camel
Modified: websites/production/camel/content/cache/main.pageCache websites/production/camel/content/jcr.html Modified: websites/production/camel/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/camel/content/jcr.html ============================================================================== --- websites/production/camel/content/jcr.html (original) +++ websites/production/camel/content/jcr.html Thu Jan 16 03:44:46 2014 @@ -86,80 +86,45 @@ <tbody> <tr> <td valign="top" width="100%"> -<div class="wiki-content maincontent"><h2 id="JCR-JCRComponent">JCR Component</h2> - -<p>The <strong><code>jcr</code></strong> component allows you to add/read nodes to/from a JCR compliant content repository (for example, <a shape="rect" class="external-link" href="http://jackrabbit.apache.org/">Apache Jackrabbit</a>) with its producer, or register an EventListener with the consumer.</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="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -<dependency> +<div class="wiki-content maincontent"><h2 id="JCR-JCRComponent">JCR Component</h2><p>The <strong><code>jcr</code></strong> component allows you to add/read nodes to/from a JCR compliant content repository (for example, <a shape="rect" class="external-link" href="http://jackrabbit.apache.org/">Apache Jackrabbit</a>) with its producer, or register an EventListener with the consumer.</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="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-jcr</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency> ]]></script> -</div></div> - -<h3 id="JCR-URIformat">URI format</h3> - -<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[ -jcr://user:password@repository/path/to/node +</div></div><h3 id="JCR-URIformat">URI format</h3><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[jcr://user:password@repository/path/to/node ]]></script> -</div></div> - - <div class="aui-message success shadowed information-macro"> +</div></div> <div class="aui-message success shadowed information-macro"> <p class="title">Consumer added</p> <span class="aui-icon icon-success">Icon</span> <div class="message-content"> - -<p>From <strong>Camel 2.10</strong> onwards you can use consumer as an EventListener in JCR or a producer to read a node by identifier.</p> + <p>From <strong>Camel 2.10</strong> onwards you can use consumer as an EventListener in JCR or a producer to read a node by identifier.</p> </div> </div> - - -<h3 id="JCR-Usage">Usage</h3> -<p>The <code>repository</code> element of the URI is used to look up the JCR <code>Repository</code> object in the Camel context registry.</p> - -<h4 id="JCR-Producer">Producer</h4> - -<div class="confluenceTableSmall"> +<h3 id="JCR-Usage">Usage</h3><p>The <code>repository</code> element of the URI is used to look up the JCR <code>Repository</code> object in the Camel context registry.</p><h4 id="JCR-Producer">Producer</h4><div class="confluenceTableSmall"> <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></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelJcrOperation</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelJcrInsert</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> CamelJcrInsert or CamelJcrGetById operation to use </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>CamelJcrNodeName</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Used to determine the node name to use. </p></td></tr></tbody></table> -</div> - -<p>When a message is sent to a JCR producer endpoint:</p> -<ul><li>If the operation is CamelJcrInsert: A new node is created in the content repository, all the message properties of the IN message are transformed to JCR <code>Value</code> instances and added to the new node and the node's UUID is returned in the OUT message.</li><li>If the operation is CamelJcrGetById: A new node is retrieved from the repository using the message body as node identifier.</li></ul> - - -<h4 id="JCR-Consumer">Consumer</h4> -<p>The consumer will connect to JCR periodically and return a List<javax.jcr.observation.Event> in the message body. </p> -<div class="confluenceTableSmall"> +</div><p>When a message is sent to a JCR producer endpoint:</p><ul><li>If the operation is CamelJcrInsert: A new node is created in the content repository, all the message headers of the IN message are transformed to <code>javax.jcr.Value</code> instances and added to the new node and the node's UUID is returned in the OUT message.</li><li>If the operation is CamelJcrGetById: A new node is retrieved from the repository using the message body as node identifier.</li></ul> <div class="aui-message warning shadowed information-macro"> + <span class="aui-icon icon-warning">Icon</span> + <div class="message-content"> + <p>Please note that the JCR Producer used message properties instead of message headers in Camel versions earlier than 2.12.3. See <a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CAMEL-7067">https://issues.apache.org/jira/browse/CAMEL-7067</a> for more details.</p> + </div> + </div> +<p> </p><h4 id="JCR-Consumer">Consumer</h4><p>The consumer will connect to JCR periodically and return a List<javax.jcr.observation.Event> in the message body.</p><div class="confluenceTableSmall"> <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></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>eventTypes</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>0</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> A combination of one or more event types encoded as a bit mask value such as javax.jcr.observation.Event.NODE_ADDED, javax.jcr.observation.Event.NODE_REMOVED, etc. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>deep</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> When it is true, events whose associated parent node is at current path or within its subgraph are received. </p></td ></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> ><code>uuids</code> </p></td><td colspan="1" rowspan="1" >class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p> Only events whose associated parent node >has one of the identifiers in the comma separated uuid list will be >received.</p></td></tr><tr><td colspan="1" rowspan="1" >class="confluenceTd"><p> <code>nodeTypeNames</code> </p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p> Only events whose associated >parent node has one of the node types (or a subtype of one of the node types) >in this list will be received. </p></td></tr><tr><td colspan="1" rowspan="1" >class="confluenceTd"><p> <code>noLocal</code> </p></td><td colspan="1" >rowspan="1" class="confluenceTd"><p> <code>false</code> </p></td><td >colspan="1" rowspan="1" class="confluenceTd"><p> If <code>noLocal</code> is ><code>true</cod e>, then events generated by the session through which the listener was registered are ignored. Otherwise, they are not ignored. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>sessionLiveCheckInterval</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>60000</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Interval in milliseconds to wait before each session live checking. </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>sessionLiveCheckIntervalOnStart</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>3000</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> Interval in milliseconds to wait before the first session live checking. </p></td></tr></tbody></table> -</div> - -<h3 id="JCR-Example">Example</h3> -<p>The snippet below creates a node named <code>node</code> under the <code>/home/test</code> node in the content repository. One additional attribute is added to the node as well: <code>my.contents.property</code> which will contain the body of the message being sent.</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[ -from("direct:a").setProperty(JcrConstants.JCR_NODE_NAME, constant("node")) - .setProperty("my.contents.property", body()) - .to("jcr://user:pass@repository/home/test"); -]]></script> -</div></div> - -<p>The following code will register an EventListener under the path import-application/inbox for Event.NODE_ADDED and Event.NODE_REMOVED events (event types 1 and 2, both masked as 3) and listening deep for all the children.</p> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ -<route> +</div><h3 id="JCR-Example">Example</h3><p>The snippet below creates a node named <code>node</code> under the <code>/home/test</code> node in the content repository. One additional property is added to the node as well: <code>my.contents.property</code> which will contain the body of the message being sent.</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[from("direct:a").setHeader(JcrConstants.JCR_NODE_NAME, constant("node")) + .setHeader("my.contents.property", body()) + .to("jcr://user:pass@repository/home/test");]]></script> +</div></div><p> </p><p>The following code will register an EventListener under the path import-application/inbox for Event.NODE_ADDED and Event.NODE_REMOVED events (event types 1 and 2, both masked as 3) and listening deep for all the children.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[<route> <from uri="jcr://user:pass@repository/import-application/inbox?eventTypes=3&deep=true" /> <to uri="direct:execute-import-application" /> </route> ]]></script> -</div></div> - -<h3 id="JCR-SeeAlso">See Also</h3> +</div></div><p></p><h3 id="JCR-SeeAlso">See Also</h3> <ul><li><a shape="rect" href="configuring-camel.html">Configuring Camel</a></li><li><a shape="rect" href="component.html">Component</a></li><li><a shape="rect" href="endpoint.html">Endpoint</a></li><li><a shape="rect" href="getting-started.html">Getting Started</a></li></ul></div> </td> <td valign="top">