Camel Component: JCR - 6.3

Talend ESB Mediation Developer Guide

EnrichVersion
6.3
EnrichProdName
Talend Data Fabric
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
task
Design and Development
EnrichPlatform
Talend ESB

The jcr component allows you to add nodes to a JCR (JSR-170) compliant content repository (for example, Apache Jackrabbit) using a producer, or listen for changes with a consumer.

Maven users will need to add the following dependency to their pom.xml for this component:

<dependency>
   <groupId>org.apache.camel</groupId>
   <artifactId>camel-jcr</artifactId>
   <!-- use the same version as your Camel core version -->
   <version>x.x.x</version>
</dependency>

URI format

jcr://user:password@repository/path/to/node

Usage

See the Camel website for the most up-to-date examples of this component in use.

The repository element of the URI is used to look up the JCR Repository object in the Camel context registry.

Producer

Name

Default Value

Description

CamelJcrOperation

CamelJcrInsert

CamelJcrInsert or CamelJcrGetById operation to use

CamelJcrNodeName

null

Used to determine the node name to use.

When a message is sent to a JCR producer endpoint:

  • 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 javax.jcr.Value instances and added to the new node and the node's UUID is returned in the OUT message.

  • If the operation is CamelJcrGetById: A new node is retrieved from the repository using the message body as node identifier.

Please note that the JCR Producer used message properties instead of message headers in Camel versions earlier than 2.12.3. See https://issues.apache.org/jira/browse/CAMEL-7067 for more details.

Consumer

The consumer will connect to JCR periodically and return a List<javax.jcr.observation.Event> in the message body.

Name

Default Value

Description

eventTypes

0

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.

deep

false

When it is true, events whose associated parent node is at current path or within its subgraph are received.

uuids

null

Only events whose associated parent node has one of the identifiers in the comma separated uuid list will be received.

nodeTypeNames

null

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.

noLocal

false

If noLocal is true, then events generated by the session through which the listener was registered are ignored. Otherwise, they are not ignored.

sessionLiveCheckInterval

60000

Interval in milliseconds to wait before each session live checking.

sessionLiveCheckIntervalOnStart

3000

Interval in milliseconds to wait before the first session live checking.