9. Endpoint Quick Reference Table
As discussed in the sections above, Spring Integration provides a number of endpoints used
to interface with external systems, file systems etc. The following is a summary of the various
endpoints with quick links to the appropriate chapter.
To recap, Inbound Channel Adapters are used for one-way integration
bringing data into the messagng application. Outbound Channel Adapters
are used for one-way integration to send data out of the messaging application.
Inbound Gateways are used for a bidirectional integration flow where
some other system invokes the messaging application and receives a reply.
Outbound Gateways are used for a bidirectional integration flow where
the messaging application invokes some external service or entity, expecting a result.
Table 9.1.
Module | Inbound Adapter | Outbound Adapter | Inbound Gateway | Outbound Gateway |
---|
AMQP | Section 10.2, “Inbound Channel Adapter” | Section 10.5, “Outbound Channel Adapter” | Section 10.3, “Inbound Gateway” | Section 10.6, “Outbound Gateway” |
Events | Section 11.1, “Receiving Spring ApplicationEvents” | Section 11.2, “Sending Spring ApplicationEvents” | N | N |
Feed | Section 12.2, “Feed Inbound Channel Adapter” | N | N | N |
File | Section 13.2, “Reading Files” and Section 13.2.1, “'Tail'ing Files” | Section 13.3, “Writing files” | N | Section 13.3, “Writing files” |
FTP(S) | Section 14.3, “FTP Inbound Channel Adapter” | Section 14.4, “FTP Outbound Channel Adapter” | N | Section 14.5, “FTP Outbound Gateway” |
Gemfire | Section 15.2, “Inbound Channel Adapter” and Section 15.3, “Continuous Query Inbound Channel Adapter” | Section 15.4, “Outbound Channel Adapter” | N | N |
HTTP | Section 16.4, “HTTP Namespace Support” | Section 16.4, “HTTP Namespace Support” | Section 16.2, “Http Inbound Gateway” | Section 16.3, “Http Outbound Gateway” |
JDBC | Section 17.1, “Inbound Channel Adapter” and Section 17.5.6, “Stored Procedure Inbound Channel Adapter” | Section 17.2, “Outbound Channel Adapter” and Section 17.5.7, “Stored Procedure Outbound Channel Adapter” | N | Section 17.3, “Outbound Gateway” and Section 17.5.8, “Stored Procedure Outbound Gateway” |
JMS | Section 19.1, “Inbound Channel Adapter” and Section 19.2, “Message-Driven Channel Adapter” | Section 19.3, “Outbound Channel Adapter” | Section 19.4, “Inbound Gateway” | Section 19.5, “Outbound Gateway” |
JMX | Section 8.1.1, “Notification Listening Channel Adapter” and
Section 8.1.3, “Attribute Polling Channel Adapter” and
Section 8.1.4, “Tree Polling Channel Adapter” | Section 8.1.2, “Notification Publishing Channel Adapter” and
Section 8.1.5, “Operation Invoking Channel Adapter” | N | Section 8.1.6, “Operation Invoking Outbound Gateway” |
JPA | Section 18.4, “Inbound Channel Adapter” | Section 18.5, “Outbound Channel Adapter” | N | Section 18.6.2, “Updating Outbound Gateway” and Section 18.6.3, “Retrieving Outbound Gateway” |
Mail | Section 20.2, “Mail-Receiving Channel Adapter” | Section 20.1, “Mail-Sending Channel Adapter” | N | N |
MongoDB | Section 21.4, “MongoDB Inbound Channel Adapter” | Section 21.5, “MongoDB Outbound Channel Adapter” | N | N |
MQTT | Section 22.2, “Inbound (message-driven) Channel Adapter” | Section 22.3, “Outbound Channel Adapter” | N | N |
Redis | Section 23.3.2, “Redis Inbound Channel Adapter” and
Section 23.3.4, “Redis Queue Inbound Channel Adapter” and
Section 23.6, “RedisStore Inbound Channel Adapter” | Section 23.3.3, “Redis Outbound Channel Adapter” and
Section 23.3.5, “Redis Queue Outbound Channel Adapter” and
Section 23.7, “RedisStore Outbound Channel Adapter” | N | Section 23.8, “Redis Outbound Command Gateway” |
Resource | Section 24.2, “Resource Inbound Channel Adapter” | N | N | N |
RMI | N | N | Section 25.3, “Inbound RMI” | Section 25.2, “Outbound RMI” |
SFTP | Section 26.5, “SFTP Inbound Channel Adapter” | Section 26.6, “SFTP Outbound Channel Adapter” | N | Section 26.7, “SFTP Outbound Gateway” |
Stream | Section 27.2, “Reading from streams” | Section 27.3, “Writing to streams” | N | N |
Syslog | Section 28.2, “Syslog <inbound-channel-adapter>” | N | N | N |
TCP | Section 29.6, “TCP Adapters” | Section 29.6, “TCP Adapters” | Section 29.7, “TCP Gateways” | Section 29.7, “TCP Gateways” |
Twitter | Section 30.4, “Twitter Inbound Adapters” | Section 30.5, “Twitter Outbound Adapter” | N | Section 30.6, “Twitter Search Outbound Gateway” |
UDP | Section 29.2, “UDP Adapters” | Section 29.2, “UDP Adapters” | N | N |
Web Services | N | N | Section 31.2, “Inbound Web Service Gateways” | Section 31.1, “Outbound Web Service Gateways” |
XMPP | Section 33.3, “XMPP Messages” and Section 33.4, “XMPP Presence” | Section 33.3, “XMPP Messages” and Section 33.4, “XMPP Presence” | N | N |
In addition, as discussed in Part III, “Core Messaging”, endpoints are provided
for interfacing with Plain Old Java Objects
(POJOs). As discussed in Section 3.3, “Channel Adapter”, the <int:inbound-channel-adapter>
allows polling a java method for data; the
<int:outbound-channel-adapter>
allows sending data to a void
method, and
as discussed in Section 7.2, “Messaging Gateways”, the <int:gateway>
allows any Java program
to invoke a messaging flow. Each of these without requiring any source level
dependencies on Spring Integration. The equivalent of an outbound gateway in this context would be to use a
Section 7.3, “Service Activator” to invoke a method that returns an Object of some kind.