Files
spring-cloud-stream-samples/README.adoc
Artem Bilan 1204d0fcb4 Some improvement for testing sample
* Add JavaDocs
* Demonstrate more test utilities usage and testing approaches
2017-10-16 13:38:20 -04:00

45 lines
2.5 KiB
Plaintext

== Samples
There are several samples, most running on the RabbitMQ transport (so you need RabbitMQ running locally to test them).
To build the samples do:
```
./mvnw clean build
```
* `double` is an example of an aggregate application, the Source and Sink are combined into one single application.
* `dynamic-source` publishes messages to dynamically created destinations.
* `kinesis-produce-consume` An example application using spring-cloud-stream-binder-aws-kinesis. Presents a web endpoint to send Orders, these are placed on a Kinesis stream and then consumed by the application from that stream.
* `multi-io` shows how to use configure multiple input/output channels inside a single application.
* `multibinder-differentsystems` shows how an application could use same binder implementation but different configurations for its channels. In this case, a processor's input/output channels connect to same binder implementation but with two separate broker configurations.
* `multibinder` shows how an application could use multiple binders. In this case, the processor's input/output channels connect to different brokers using their own binder configurations.
* `non-self-contained-aggregate-app` shows how to write a non self-contained aggregate application.
* `reactive-processor-kafka` shows how to create a reactive Apache Kafka processor application.
* `rxjava-processor` shows how to create an RxJava processor application.
* `sink` A simple sink that logs the incoming payload. It has no options (but some could easily be added), and just logs incoming messages at INFO level.
* `source` A simple time source example. It has a "fixedDelay" option (in milliseconds) for the period between emitting messages.
* `stream-listener` shows how to use StreamListener support to enable message mapping and automatic type conversion.
* `test-embedded-kafka` is a sample that shows how to test with an embedded Apache Kafka broker.
We generally recommend testing with the http://docs.spring.io/spring-cloud-stream/docs/current/reference/htmlsingle/#_testing[TestSupportBinder] but if you have a need for testing with an embedded broker, you can use the techniques in this sample.
* `transform` is a simple pass through logging transformer (just logs the incoming message and passes it on).
* `kstream` is a collection of applications that demonstrate the capabilities of the Spring Cloud Stream support for Kafka Streams
* `testing` is a bunch of applications and tests for them to demonstrate the capabilities of testing for the the Spring Cloud Stream applications.