diff --git a/docs/src/reference/docbook/index.xml b/docs/src/reference/docbook/index.xml index 9306eb97b0..cdbe7e9041 100644 --- a/docs/src/reference/docbook/index.xml +++ b/docs/src/reference/docbook/index.xml @@ -126,16 +126,18 @@ + - - + + - - - - - - + + + + + + + diff --git a/docs/src/reference/docbook/mongodb.xml b/docs/src/reference/docbook/mongodb.xml new file mode 100644 index 0000000000..10ffdb6f16 --- /dev/null +++ b/docs/src/reference/docbook/mongodb.xml @@ -0,0 +1,116 @@ + + + + MongoDb Support + + + As of version 2.1 Spring Integration introduces support for MongoDB: + a "high-performance, open source, document-oriented database". + This support comes in the form of a MongoDB-based MessageStore. + + +
+ Introduction + + To download, install, and run MongoDB please refer to the MongoDB documentation. + +
+ +
+ Connecting to MongoDb + + To begin interacting with MongoDB you first need to connect to it. Spring Integration builds on the support provided by another + Spring project, Spring Data MongoDB, which provides a factory + class called MongoDbFactory that simplifies integration with the MongoDB Client API. + + MongoDbFactory + + + To connect to MongoDB you can use an implementation of the MongoDbFactory interface: + + + + + The example below shows SimpleMongoDbFactory, the out-of-the-box implementation: + + In Java: + + + + Or in Spring's XML configuration: + + + + + +]]> + + + + As you can see SimpleMongoDbFactory takes two arguments: 1) a Mongo instance and + 2) a String specifying the name of the database. If you need to configure properties such as host, port, etc, + you can pass those using one of the constructors provided by the underlying Mongo class. + For more information on how to configure MongoDB, please refer to the +Spring-Data-Document reference. + +
+ +
+ MongoDB Message Store + + + As described in EIP, a Message Store allows you to persist Messages. + This can be very useful when dealing with components that have a capability to buffer messages + (QueueChannel, Aggregator, Resequencer, etc.) if reliability is a concern. + In Spring Integration, the MessageStore strategy also provides the foundation for the + ClaimCheck pattern, which is described in EIP as well. + + + + Spring Integration's MongoDB module provides the MongoDbMessageStore which is an implementation of both + the MessageStore strategy (mainly used by the QueueChannel and ClaimCheck + patterns) and the MessageGroupStore strategy (mainly used by the Aggregator and + Resequencer patterns). + + + + + + + + + + + +]]> + + + + Above is a sample MongoDbMessageStore configuration that shows its usage by a QueueChannel + and an Aggregator. As you can see it is a simple bean configuration, and it expects a + MongoDbFactory as a constructor argument. + +
+ +
\ No newline at end of file diff --git a/docs/src/reference/docbook/redis.xml b/docs/src/reference/docbook/redis.xml index b6508e8b72..8022ef84a7 100644 --- a/docs/src/reference/docbook/redis.xml +++ b/docs/src/reference/docbook/redis.xml @@ -186,13 +186,14 @@ rt.setConnectionFactory(redisConnectionFactory);]]> This can be very useful when dealing with components that have a capability to buffer messages (QueueChannel, Aggregator, Resequencer, etc.) if reliability is a concern. In Spring Integration, the MessageStore strategy also provides the foundation for the - ClaimCheck pattern, described in EIP as well. + ClaimCheck pattern, which is described in EIP as well. Spring Integration's Redis module provides the RedisMessageStore which is an implementation of both the - MessageStore strategy (mainly used by the QueueChannel and ClaimCheck patterns) and - the MessageGroupStore strategy (mainly used by Aggregator and Resequencer patterns). + the MessageStore strategy (mainly used by the QueueChannel and ClaimCheck + patterns) and the MessageGroupStore strategy (mainly used by the Aggregator and + Resequencer patterns).