diff --git a/spring-integration-reference/src/bridge.xml b/spring-integration-reference/src/bridge.xml new file mode 100644 index 0000000000..07514fa3d4 --- /dev/null +++ b/spring-integration-reference/src/bridge.xml @@ -0,0 +1,58 @@ + + + + Messaging Bridge + +
+ Introduction + + A Messaging Bridge is a relatively trivial endpoint that simply connects two Message Channels or Channel + Adapters. For example, you may want to connect a PollableChannel to a + SubscribableChannel so that the subscribing endpoints do not have to worry + about any polling configuration. Instead, the Messaging Bridge provides the polling configuration. + + + By providing an intermediary poller between two channels, a Messaging Bridge can be used to throttle inbound + Messages. The poller's trigger will determine the rate at which messages arrive on the second channel, and the + poller's "maxMessagesPerPoll" property will enforce a limit on the throughput. + + + Another valid use for a Messaging Bridge is to connect two different systems. In such a scenario, Spring + Integration's role would be limited to making the connection between these systems and managing a poller + if necessary. It is probably more common to have at least a Transformer between the + two systems to translate between their formats, and in that case, the channels would be provided as the + 'input-channel' and 'output-channel' of a Transformer endpoint. If data format translation is not required, + the Messaging Bridge may indeed be sufficient. + +
+ +
+ The <bridge> Element + + The <bridge> element is used to create a Messaging Bridge between two Message Channels or Channel Adapters. + Simply provide the "input-channel" and "output-channel" attributes: + ]]> + As mentioned above, a common use case for the Messaging Bridge is to connect a + PollableChannel to a SubscribableChannel, and when + performing this role, the Messaging Bridge may also serve as a throttler: + + + + + ]]> + + + Connecting Channel Adapters is just as easy. Here is a simple echo example between the "stdin" and "stdout" + adapters from Spring Integration's "stream" namespace. + + + + + ]]> + Of course, the configuration would be similar for other (potentially more useful) Channel Adapter bridges, such + as File to JMS, or Mail to File. The various Channel Adapters will be discussed in upcoming chapters. + +
+ +
\ No newline at end of file diff --git a/spring-integration-reference/src/spring-integration-reference.xml b/spring-integration-reference/src/spring-integration-reference.xml index fe031c0ee1..b63dfeca44 100644 --- a/spring-integration-reference/src/spring-integration-reference.xml +++ b/spring-integration-reference/src/spring-integration-reference.xml @@ -53,6 +53,7 @@ + diff --git a/spring-integration-reference/src/stream.xml b/spring-integration-reference/src/stream.xml index 03904a8421..7336b843fa 100644 --- a/spring-integration-reference/src/stream.xml +++ b/spring-integration-reference/src/stream.xml @@ -41,8 +41,8 @@ OutputStream for byte streams or Writer for character streams, and each provides a second constructor that adds the optional 'bufferSize'. Since both of these ultimately implement the MessageHandler interface, they can be referenced from a - channel-adapter configuration as will be described in more detail in - . + channel-adapter configuration as described in more detail in + .