- Add `MessageChannelConfigurer` that any class that configures the message channel would implement
- Have `message-converter` and `message-history-tracking` configurer implement this interface
- Autowire all available configurers and use them to configure the message channel
- For the message history tracking
- add `channel-binding` properties as part of message header along with `timestamp`
- Introduce CompositeMessageChannelConfigurer
Remove field injection of messageChannelConfigurer
Add tests for message track history configurer
Add content-type configurer test
Address review comments
- Add `toString` to BindingProperties
- Add test case to depict producer/consumer properties
Remove processor channels from tests
* tidy up pom to remove redundant section
* provide simple fall back for building non branch changes in travis
* Add -s .settings.xml to .mvn/maven.config
Resolvesspring-cloud/spring-cloud-stream#92
Also
* Remove publishing build configuration from .travis.yml
This are not needed as we use Bamboo for release managment
* javadoc and surefire plugins added to pom.xml
- Moved contents of `spring-cloud-stream-binder-spi` into `spring-cloud-stream`
- Removed `spring-cloud-stream-binder-local` and used local binder implementation for tests exclusively
- This is a temporary location for the `tuple` project and would eventually be moved to something like `spring-data-commons`
- Note: This project currently removes `batch` package from the tuple project in XD
- The corresponding test classes are yet to be moved.
- Add a way to enable `RxJava` module
- Add `EnableRxJavaModule` annotation that inherits `EnableModule` for `Processor` type.
- It also registers the custom `MessageHandler` that sets up RxJava `Observable/Subscriber` to process the incoming message reactively.
- Introduce `RxJavaProcessor` that is expected to be implemented by the module author with the input/output being `Observable`. This processor is autowired into the message handler registered above.
- Add moving average sample
Add project `spring-cloud-stream-rxjava`
- This project extends `spring-cloud-stream` so that any RxJava processing module would have this as a dependency
- Remove lattice and cf connector dependencies from core S-C-S and binder
- The idea is to have these dependencies defined in s-c-s-modules so that they
are specified in one place and make the module run on local/cloud environment in a
self contained manner
- Keep the `spring-cloud-core` dependency to binder so that the Cloud configuration
is used to get the appropriate services for the redis/rabbit binder
In order to join the Spring Cloud release train we have to align the
dependencies and (more importantly) the dependency management strategy.
The strategy is to not put version ids in <dependencies> (only
in <dependencyManagement>) where possible. And more importantly
we cannot use the releae train itself (creates a cycle).
This change achieves most of that (and mkae it possible for client
apps to use spring-cloud-starter-parent:Brixton.BUILD-SNAPSHOT)
Add spring-integration bom
Port MessageBus code from XD (XD-3244)
Fix Deprecated API Usage; Fix Imports (GH-9)
Change poms to compile using JDK7
Move transport specific test classes into binding-<transport> projects