...
| Code Block |
|---|
|
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-mongodb-gridfs</artifactId>
<version>x.y.z</version>
<!-- use the same version as your Camel core version -->
</dependency>
|
URI format
| Code Block |
|---|
mongodb-gridfs:connectionBean?database=databaseName&bucket=bucketName[&moreOptions...]
|
URI format ( camel < 2.19 )
| Code Block |
|---|
gridfs:connectionBean?database=databaseName&bucket=bucketName[&moreOptions...] |
Endpoint options
GridFS endpoints support the following options, depending on whether they are acting like a Producer or as a Consumer (options vary based on the consumer type too).
...
| Code Block |
|---|
| language | xml |
|---|
| title | Get a file from GridFS |
|---|
|
<route>
<from uri="direct:start" />
<!-- using bean 'mongoBean' defined above -->
<to uri="mongodb-gridfs:mongoBean?database=${mongodb.database}&operation=findOne" />
<to uri="direct:result" />
</route> |
...
| Code Block |
|---|
// from("direct:count").to("mongodb-gridfs?database=tickets&operation=count");
Integer result = template.requestBodyAndHeader("direct:count", "irrelevantBody");
assertTrue("Result is not of type Long", result instanceof Integer);
|
...
| Code Block |
|---|
// from("direct:listAll").to("mongodb-gridfs?database=tickets&operation=listAll");
Reader result = template.requestBodyAndHeader("direct:listAll", "irrelevantBody");
filename1.txt 1252314321
filename2.txt 2897651254 |
...
| Code Block |
|---|
// from("direct:findOne").to("mongodb-gridfs?database=tickets&operation=findOne");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
InputStream result = template.requestBodyAndHeaders("direct:findOne", "irrelevantBody", headers);
|
...
| Code Block |
|---|
// from("direct:create").to("mongodb-gridfs?database=tickets&operation=create");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
InputStream stream = ... the data for the file ...
template.requestBodyAndHeaders("direct:create", stream, headers); |
...
| Code Block |
|---|
// from("direct:remove").to("mongodb-gridfs?database=tickets&operation=remove");
Map<String, Object> headers = new HashMap<String, Object>();
headers.put(Exchange.FILE_NAME, "filename.txt");
template.requestBodyAndHeaders("direct:remove", "", headers); |
...
| Code Block |
|---|
|
from("mongodb-gridfs?database=tickets&queryStrategy=FileAttribute").process(.....);
from("mongodb-gridfs?database=myData&queryStrategy=PersistentTimestamp&persistentTSCollection=CamelTimestamps&persistentTSObject=myDataTS").process(...) |
...