h2. CMIS Component *Available as of Camel 2.11* The cmis component allows you to add/read nodes to/from a CMIS compliant content repository (for example, Alfresco). h3. URI Format {code} cmis://cmisServerUrl[?options] {code} You can append query options to the URI in the following format, ?options=value&option2=value&... h3. 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| h3. Usage h4. Message headers evaluated by the producer {div:class=confluenceTableSmall} || 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 | {div} h4. Message headers set during querying Producer operation {div:class=confluenceTableSmall} || Header || Type || Description || | {{CamelCMISResultCount}} | {{Integer}} | Number of nodes returned from the query. | {div} 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. h3. Dependencies Maven users will need to add the following dependency to their pom.xml. {code:xml|title=pom.xml} <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-cmis</artifactId> <version>${camel-version}</version> </dependency> {code} where {{$\{camel-version\}}} must be replaced by the actual version of Camel (2.11 or higher). {include:Endpoint See Also} |