Spring Cloud Stream App Starters Reference Guide

Authors

Sabby Anandan, Artem Bilan, Marius Bogoevici, Eric Bottard, Mark Fisher, Ilayaperumal Gopinathan, Gunnar Hillert, Mark Pollack, Patrick Peralta, Glenn Renfro, Gary Russell, Thomas Risberg, David Turanski, Janne Valkealahti

Avogadro.SR1

Copies of this document may be made for your own use and for distribution to others, provided that you do not charge any fee for such copies and further provided that each copy contains this Copyright Notice, whether distributed in print or electronically.


Table of Contents

I. Reference Guide
1. Introduction
1.1. Starters and pre-built applications
1.2. Classification
1.3. Using the artifacts
1.3.1. Maven and Docker access
1.3.2. Building the artifacts
1.4. Creating custom artifacts
1.4.1. Using a different binder
1.4.2. Creating your own applications
Using generic Spring Cloud Stream applications
Using the starters to create custom components
1.5. Patching pre-built applications
1.6. Creating New Stream Application Starters and Generating Artifacts
II. Starters
2. Sources
2.1. File Source
2.1.1. Options
2.2. FTP Source
2.2.1. Options
2.3. Gemfire Source
2.3.1. Options
2.4. Gemfire-CQ Source
2.4.1. Options
2.5. Http Source
2.5.1. Options
2.6. JDBC Source
2.6.1. Options
2.7. JMS Source
2.7.1. Options
2.8. Load Generator Source
2.8.1. Options
2.9. Mail Source
2.9.1. Options
2.10. MongoDB Source
2.10.1. Options
2.11. RabbitMQ Source
2.11.1. Options
A Note About Retry
2.12. Amazon S3 Source
2.12.1. Options
2.12.2. Amazon AWS common options
2.13. SFTP Source
2.13.1. Options
2.14. SYSLOG Source
2.14.1. Options
2.15. TCP
2.15.1. Options
2.15.2. Available Decoders
2.16. TCP Client as a Source which connects to a TCP server and receives data
2.16.1. Options
2.17. Time Source
2.17.1. Options
2.18. Trigger Source
2.18.1. Options
2.19. TriggerTask Source
2.19.1. Options
2.19.2. Using the triggertask
2.20. Twitter Stream Source
2.20.1. Options
3. Processors
3.1. Bridge Processor
3.2. Filter Processor
3.2.1. Options
3.3. Groovy Filter Processor
3.3.1. Options
3.4. Groovy Transform Processor
3.4.1. Options
3.5. Http Client Processor
3.5.1. Options
3.6. PMML Processor
3.6.1. Options
3.7. Scripable Transform Processor
3.7.1. Options
3.8. Splitter Processor
3.8.1. Options
3.8.2. JSON Example
3.9. TCP Client as a processor which connects to a TCP server, sends data to it and also receives data.
3.9.1. Options
4. Sinks
4.1. Aggregate Counter Sink
4.1.1. Options
4.2. Cassandra Sink
4.2.1. Options
4.3. Counter Sink
4.3.1. Options
4.4. Field Value Counter Sink
4.4.1. Options
4.5. File Sink
4.5.1. Options
4.6. FTP Sink
4.6.1. Options
4.7. Gemfire Sink
4.7.1. Options
4.8. Gpfdist Sink
4.8.1. Options
4.8.2. Implementation Notes
4.8.3. Detailed Option Descriptions
4.8.4. How Data Is Sent Into Segments
4.8.5. Example Usage
4.8.6. Tuning Transfer Rate
4.9. HDFS Sink
4.9.1. Options
4.10. HDFS Dataset Sink
4.10.1. Options
4.11. Jdbc Sink
4.11.1. Options
4.12. Log Sink
4.12.1. Options
4.13. RabbitMQ Sink
4.13.1. Options
4.14. Redis Sink
4.14.1. Options
4.15. Router Sink
4.15.1. Options
4.15.2. SpEL-based Routing
4.15.3. Groovy-based Routing
4.16. Amazon S3 Sink
4.16.1. Options
4.16.2. Amazon AWS common options
4.17. SFTP Sink
4.17.1. Options
4.18. TCP Sink
4.18.1. Options
4.18.2. Available Encoders
4.19. Throughput Sink
4.20. Websocket Sink
4.20.1. Options
4.20.2. Example
Step 1: Start Redis
Step 2: Deploy a time-source
Step 3: Deploy a websocket-sink (the app that contains this starter jar)
4.20.3. Actuators
III. Appendices
A. Building
A.1. Basic Compile and Test
A.2. Documentation
A.3. Working with the code
A.3.1. Importing into eclipse with m2eclipse
A.3.2. Importing into eclipse without m2eclipse
5. Contributing
5.1. Sign the Contributor License Agreement
5.2. Code Conventions and Housekeeping