11. 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 messaging 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 11.1. Endpoint Quick Reference
Module | Inbound Adapter | Outbound Adapter | Inbound Gateway | Outbound Gateway |
---|
AMQP | Section 12.2, “Inbound Channel Adapter” | Section 12.5, “Outbound Channel Adapter” | Section 12.3, “Inbound Gateway” | Section 12.6, “Outbound Gateway” |
Events | Section 13.1, “Receiving Spring Application Events” | Section 13.2, “Sending Spring Application Events” | N | N |
Feed | Section 14.2, “Feed Inbound Channel Adapter” | N | N | N |
File | Section 15.2, “Reading Files” and Section 15.2.6, “'Tail’ing Files” | Section 15.3, “Writing files” | N | Section 15.3, “Writing files” |
FTP(S) | Section 16.4, “FTP Inbound Channel Adapter” | Section 16.7, “FTP Outbound Channel Adapter” | N | Section 16.8, “FTP Outbound Gateway” |
Gemfire | Section 17.2, “Inbound Channel Adapter” and Section 17.3, “Continuous Query Inbound Channel Adapter” | Section 17.4, “Outbound Channel Adapter” | N | N |
HTTP | Section 18.4, “HTTP Namespace Support” | Section 18.4, “HTTP Namespace Support” | Section 18.2, “Http Inbound Components” | Section 18.3, “Http Outbound Components” |
JDBC | Section 19.1, “Inbound Channel Adapter” and Section 19.5.6, “Stored Procedure Inbound Channel Adapter” | Section 19.2, “Outbound Channel Adapter” and Section 19.5.7, “Stored Procedure Outbound Channel Adapter” | N | Section 19.3, “Outbound Gateway” and Section 19.5.8, “Stored Procedure Outbound Gateway” |
JMS | Section 21.1, “Inbound Channel Adapter” and Section 21.2, “Message-Driven Channel Adapter” | Section 21.3, “Outbound Channel Adapter” | Section 21.4, “Inbound Gateway” | Section 21.5, “Outbound Gateway” |
JMX | Section 10.2.1, “Notification Listening Channel Adapter” and Section 10.2.3, “Attribute Polling Channel Adapter” and Section 10.2.4, “Tree Polling Channel Adapter” | Section 10.2.2, “Notification Publishing Channel Adapter” and Section 10.2.5, “Operation Invoking Channel Adapter” | N | Section 10.2.6, “Operation Invoking Outbound Gateway” |
JPA | Section 20.4, “Inbound Channel Adapter” | Section 20.5, “Outbound Channel Adapter” | N | Section 20.6.2, “Updating Outbound Gateway” and Section 20.6.5, “Retrieving Outbound Gateway” |
Mail | Section 22.2, “Mail-Receiving Channel Adapter” | Section 22.1, “Mail-Sending Channel Adapter” | N | N |
MongoDB | Section 23.4, “MongoDB Inbound Channel Adapter” | Section 23.5, “MongoDB Outbound Channel Adapter” | N | N |
MQTT | Section 24.2, “Inbound (message-driven) Channel Adapter” | Section 24.3, “Outbound Channel Adapter” | N | N |
Redis | Section 25.3.2, “Redis Inbound Channel Adapter” and Section 25.3.4, “Redis Queue Inbound Channel Adapter” and Section 25.6, “RedisStore Inbound Channel Adapter” | Section 25.3.3, “Redis Outbound Channel Adapter” and Section 25.3.5, “Redis Queue Outbound Channel Adapter” and Section 25.7, “RedisStore Outbound Channel Adapter” | Section 25.10, “Redis Queue Inbound Gateway” | Section 25.8, “Redis Outbound Command Gateway” and Section 25.9, “Redis Queue Outbound Gateway” |
Resource | Section 26.2, “Resource Inbound Channel Adapter” | N | N | N |
RMI | N | N | Section 27.3, “Inbound RMI” | Section 27.2, “Outbound RMI” |
SFTP | Section 28.7, “SFTP Inbound Channel Adapter” | Section 28.10, “SFTP Outbound Channel Adapter” | N | Section 28.11, “SFTP Outbound Gateway” |
STOMP | Section 29.3, “STOMP Inbound Channel Adapter” | Section 29.4, “STOMP Outbound Channel Adapter” | N | N |
Stream | Section 30.2, “Reading from streams” | Section 30.3, “Writing to streams” | N | N |
Syslog | Section 31.2, “Syslog <inbound-channel-adapter>” | N | N | N |
TCP | Section 32.6, “TCP Adapters” | Section 32.6, “TCP Adapters” | Section 32.7, “TCP Gateways” | Section 32.7, “TCP Gateways” |
Twitter | Section 33.4, “Twitter Inbound Adapters” | Section 33.5, “Twitter Outbound Adapter” | N | Section 33.6, “Twitter Search Outbound Gateway” |
UDP | Section 32.2, “UDP Adapters” | Section 32.2, “UDP Adapters” | N | N |
Web Services | N | N | Section 36.2, “Inbound Web Service Gateways” | Section 36.1, “Outbound Web Service Gateways” |
Web Sockets | Section 35.3, “WebSocket Inbound Channel Adapter” | Section 35.4, “WebSocket Outbound Channel Adapter” | N | N |
XMPP | Section 38.3, “XMPP Messages” and Section 38.4, “XMPP Presence” | Section 38.3, “XMPP Messages” and Section 38.4, “XMPP Presence” | N | N |
In addition, as discussed in Part IV, “Core Messaging”, endpoints are provided for interfacing with Plain Old Java Objects (POJOs).
As discussed in Section 4.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 8.4, “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 8.5, “Service Activator” to invoke a method that returns an Object of some kind.