THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
- As a consumer, monitors couch changesets for inserts, updates and deletes and publishes these as messages into camel routes.
- As a producer, can save or update documents , update and from Camel 2.18 delete (by using CouchDbMethod with DELETE value) documents into couch.
- Can support as many endpoints as required, eg for multiple databases across multiple instances.
- Ability to have events trigger for only deletes, only inserts/updates or all (default).
- Headers set for sequenceId, document revision, document id, and HTTP method type.
Maven users will need to add the following dependency to their pom.xml
for this component:
Code Block | ||||
---|---|---|---|---|
| ||||
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-couchdb</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
|
URI format
Code Block |
---|
couchdb:http://hostname[:port]/database?[options]
|
...
For example if you wish to consume all inserts, updates and deletes from a CouchDB instance running locally, on port 9999 then you could use the following:
Code Block |
---|
from("couchdb:http://localhost:9999").process(someProcessor);
|
If you were only interested in deletes, then you could use the following
Code Block |
---|
from("couchdb:http://localhost:9999?updates=false").process(someProcessor);
|
If you wanted to insert a message as a document, then the body of the exchange is used
Code Block |
---|
from("someProducingEndpoint").process(someProcessor).to("couchdb:http://localhost:9999")
|