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 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 9.1. Endpoint Quick Reference

ModuleInbound AdapterOutbound AdapterInbound GatewayOutbound 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.2, “'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”

Section 23.10, “Redis Queue Inbound Gateway”

Section 23.8, “Redis Outbound Command Gateway” and Section 23.9, “Redis Queue Outbound 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 32.2, “Inbound Web Service Gateways”

Section 32.1, “Outbound Web Service Gateways”

Web Sockets

Section 31.3, “WebSocket Inbound Channel Adapter”

Section 31.4, “WebSocket Outbound Channel Adapter”

N

N

XMPP

Section 34.3, “XMPP Messages” and Section 34.4, “XMPP Presence”

Section 34.3, “XMPP Messages” and Section 34.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 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.3, “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.4, “Service Activator” to invoke a method that returns an Object of some kind.