Gary Russell b29fc5491a Add test-embedded-kafka Sample
Also some general README and pom cleanup.

README Polishing

Resolves #37

Polishing - Use Boot Config for Test Consumer

Possible now that https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/pull/137 is merged.
2017-08-17 13:33:20 -04:00
2016-02-23 11:11:15 -05:00
2017-05-24 16:49:51 +05:30
2017-04-07 13:37:47 -04:00
2017-04-06 11:01:21 +05:30
2017-04-06 11:01:21 +05:30
2017-04-06 11:01:21 +05:30
2017-04-06 11:01:21 +05:30
2017-04-06 11:01:21 +05:30
2017-04-06 11:01:21 +05:30
2016-02-23 11:11:15 -05:00
2016-02-19 09:32:27 -05:00
2016-02-23 11:11:15 -05:00
2016-02-23 11:11:15 -05:00
2017-08-17 13:33:20 -04:00
2017-08-17 13:33:20 -04:00

== Samples

There are several samples, all running on the RabbitMQ transport (so you need RabbitMQ running locally to test them).

To build the samples do:

```
   ./mvnw clean build
```

NOTE: The main set of samples are "vanilla" in the sense that they are not deployable as XD modules by the current generation (1.x) of XD. You can still interact with an XD system using the appropriate naming convention for input and output channel names (`<stream>.<index>` format).

* `double` is a combination of 2 modules defined locally (a source and a sink, so the whole app is self contained).

* `dynamic-source` publishes messages to dynamically created destinations.

* `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` is a Java config version of the classic "log" module from Spring XD. It has no options (but some could easily be added), and just logs incoming messages at INFO level.

* `source` is a Java config version of the classic "time" module from Spring XD. 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).

If you run the source and the sink and point them at the same redis instance (e.g. do nothing to get the one on localhost, or the one they are both bound to as a service on Cloud Foundry) then they will form a "stream" and start talking to each other. All the samples have friendly JMX and Actuator endpoints for inspecting what is going on in the system.
Description
No description provided
Readme Apache-2.0 3.9 MiB
Languages
Java 100%