CMIS Component
Available as of Camel 2.11
The cmis component uses the Apache Chemistry client API and allows you to add/read nodes to/from a CMIS compliant content repositories.
cmis://cmisServerUrl[?options]
You can append query options to the URI in the following format, ?options=value&option2=value&...
URI Options
Name | Default Value | Context | Description |
---|
queryMode | false | Producer | If true, will execute the cmis query from the message body and return result, otherwise will create a node in the cmis repository |
query | String | Consumer | The cmis query to execute against the repository. If not specified, the consumer will retrieve every node from the content repository by iterating the content tree recursively |
username | null | Both | Username for the cmis repository |
password | null | Both | Password for the cmis repository |
repositoryId | null | Both | The Id of the repository to use. If not specified the first available repository is used |
pageSize | 100 | Both | Number of nodes to retrieve per page |
readCount | 0 | Both | Max number of nodes to read |
readContent | false | Both | If set to true, the content of document node will be retrieved in addition to the properties |
Usage
Header | Default Value | Description |
---|
CamelCMISFolderPath | / | The current folder to use during the execution. If not specified will use the root folder |
CamelCMISRetrieveContent | false | In queryMode this header will force the producer to retrieve the content of document nodes. |
CamelCMISReadSize | 0 | Max number of nodes to read. |
cmis:path | null | If CamelCMISFolderPath is not set, will try to find out the path of the node from this cmis property and it is name |
cmis:name | null | If CamelCMISFolderPath is not set, will try to find out the path of the node from this cmis property and it is path |
cmis:objectTypeId | null | The type of the node |
cmis:contentStreamMimeType | null | The mimetype to set for a document |
Header | Type | Description |
---|
CamelCMISResultCount | Integer | Number of nodes returned from the query. |
The message body will contain a list of maps, where each entry in the map is cmis property and its value.
If CamelCMISRetrieveContent
header is set to true, one additional entry in the map with key CamelCMISContent
will contain InputStream
of the document type of nodes.
Dependencies
Maven users will need to add the following dependency to their pom.xml.
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-cmis</artifactId>
<version>${camel-version}</version>
</dependency>
where ${camel-version
} must be replaced by the actual version of Camel (2.11 or higher).