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

ModuleInbound AdapterOutbound AdapterInbound GatewayOutbound Gateway

AMQP

Section 11.2, “Inbound Channel Adapter”

Section 11.5, “Outbound Channel Adapter”

Section 11.3, “Inbound Gateway”

Section 11.6, “Outbound Gateway”

Events

Section 12.1, “Receiving Spring Application Events”

Section 12.2, “Sending Spring Application Events”

N

N

Feed

Section 13.2, “Feed Inbound Channel Adapter”

N

N

N

File

Section 14.2, “Reading Files” and Section 14.2.6, “'Tail’ing Files”

Section 14.3, “Writing files”

N

Section 14.3, “Writing files”

FTP(S)

Section 15.4, “FTP Inbound Channel Adapter”

Section 15.7, “FTP Outbound Channel Adapter”

N

Section 15.8, “FTP Outbound Gateway”

Gemfire

Section 16.2, “Inbound Channel Adapter” and Section 16.3, “Continuous Query Inbound Channel Adapter”

Section 16.4, “Outbound Channel Adapter”

N

N

HTTP

Section 17.4, “HTTP Namespace Support”

Section 17.4, “HTTP Namespace Support”

Section 17.2, “Http Inbound Components”

Section 17.3, “Http Outbound Components”

JDBC

Section 18.1, “Inbound Channel Adapter” and Section 18.5.6, “Stored Procedure Inbound Channel Adapter”

Section 18.2, “Outbound Channel Adapter” and Section 18.5.7, “Stored Procedure Outbound Channel Adapter”

N

Section 18.3, “Outbound Gateway” and Section 18.5.8, “Stored Procedure Outbound Gateway”

JMS

Section 20.1, “Inbound Channel Adapter” and Section 20.2, “Message-Driven Channel Adapter”

Section 20.3, “Outbound Channel Adapter”

Section 20.4, “Inbound Gateway”

Section 20.5, “Outbound Gateway”

JMX

Section 9.2.1, “Notification Listening Channel Adapter” and Section 9.2.3, “Attribute Polling Channel Adapter” and Section 9.2.4, “Tree Polling Channel Adapter”

Section 9.2.2, “Notification Publishing Channel Adapter” and Section 9.2.5, “Operation Invoking Channel Adapter”

N

Section 9.2.6, “Operation Invoking Outbound Gateway”

JPA

Section 19.4, “Inbound Channel Adapter”

Section 19.5, “Outbound Channel Adapter”

N

Section 19.6.2, “Updating Outbound Gateway” and Section 19.6.5, “Retrieving Outbound Gateway”

Mail

Section 21.2, “Mail-Receiving Channel Adapter”

Section 21.1, “Mail-Sending Channel Adapter”

N

N

MongoDB

Section 22.4, “MongoDB Inbound Channel Adapter”

Section 22.5, “MongoDB Outbound Channel Adapter”

N

N

MQTT

Section 23.2, “Inbound (message-driven) Channel Adapter”

Section 23.3, “Outbound Channel Adapter”

N

N

Redis

Section 24.3.2, “Redis Inbound Channel Adapter” and Section 24.3.4, “Redis Queue Inbound Channel Adapter” and Section 24.6, “RedisStore Inbound Channel Adapter”

Section 24.3.3, “Redis Outbound Channel Adapter” and Section 24.3.5, “Redis Queue Outbound Channel Adapter” and Section 24.7, “RedisStore Outbound Channel Adapter”

Section 24.10, “Redis Queue Inbound Gateway”

Section 24.8, “Redis Outbound Command Gateway” and Section 24.9, “Redis Queue Outbound Gateway”

Resource

Section 25.2, “Resource Inbound Channel Adapter”

N

N

N

RMI

N

N

Section 26.3, “Inbound RMI”

Section 26.2, “Outbound RMI”

SFTP

Section 27.7, “SFTP Inbound Channel Adapter”

Section 27.10, “SFTP Outbound Channel Adapter”

N

Section 27.11, “SFTP Outbound Gateway”

STOMP

Section 28.3, “STOMP Inbound Channel Adapter”

Section 28.4, “STOMP Outbound Channel Adapter”

N

N

Stream

Section 29.2, “Reading from streams”

Section 29.3, “Writing to streams”

N

N

Syslog

Section 30.2, “Syslog <inbound-channel-adapter>”

N

N

N

TCP

Section 31.6, “TCP Adapters”

Section 31.6, “TCP Adapters”

Section 31.7, “TCP Gateways”

Section 31.7, “TCP Gateways”

Twitter

Section 32.4, “Twitter Inbound Adapters”

Section 32.5, “Twitter Outbound Adapter”

N

Section 32.6, “Twitter Search Outbound Gateway”

UDP

Section 31.2, “UDP Adapters”

Section 31.2, “UDP Adapters”

N

N

Web Services

N

N

Section 35.2, “Inbound Web Service Gateways”

Section 35.1, “Outbound Web Service Gateways”

Web Sockets

Section 34.3, “WebSocket Inbound Channel Adapter”

Section 34.4, “WebSocket Outbound Channel Adapter”

N

N

XMPP

Section 37.3, “XMPP Messages” and Section 37.4, “XMPP Presence”

Section 37.3, “XMPP Messages” and Section 37.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.