Fix#965
Original implementation was getting the schema id and using it as the
version. This made deserialization fail since it would endeavor to
retrieve the schema by version using the id value.
Add 'eclipse' folder containing Eclipse code
formatter configuration and instructions how to use
it.
Update rule for join_wrapped_lines
- Set to `false`
Resolves#930
Update README
Address review comments
- Added a new constructor which takes CacheManager as an argument
- Deprecated the old constructor and setter for CacheManager
- Added fallback to NoOpsCacheManager to the deprecatd construtor to avoid the possiblity of NPE.
- Added warning to notify user that caching is _effectively disabled_ if NoOpCacheManager is used.
Fix#897
Fixes https://github.com/spring-cloud/spring-cloud-stream/issues/931
While the resolver binds the channel and registers the bean in a synchronized block,
it does not re-check that another thread has already done the work.
Add a second `super.resolveDestination()` to the synchronized block.
Fix#903
Use 'application' as the trigger name consistently.
Since 'application' would be a too generic name for
the Exporter bean, use a BeanPostProcessor to install
the exporter in the `MetricExporters` bean.
Additional updates
- rename binding to `applicationMetrics` (we can decide later how
the channel is named)
- remove the default setting for `spring.metrics.export`
- Improve documentation
Fix#904
Docs updates
Properly escape asciidoc control characters
- Rename `BindingFactoryListener` to `Listener` and reduce
its visibility, making it effective only when used with
a `DefaultBinderFactory` implementation.
- Rename a couple methods
- Make `ChannelEndpointConfiguration` an autoconfiguration
in its own right
- BinderFactoryConfiguration has a conditional configuration that creates `BinderFactory` with binder health indicators only if the spring-boot `actuator` is in classpath
- Move Channels endpoint configuration into a separate conditional configuration class
Resolves#869
Use listener approach instead of subclassing
Use auto-configuration for binders healthIndicator configuration
- Change the metrics channel name to `applicationMetricsChannel`
- Update documentation
- Remove `instanceIndex` to reduce coupling to
Spring Cloud Stream semantics and because it can be sent via
the `properties` metadata set
Fix#888
- Rename `EmbeddedHeaderMessageConverter` to `EmbeddedHeaderUtils`;
- Add method to populate default header set;
- Make `serializePayloadIfNecessary` protected so it can be accessed by subclasses;
- At StreamListenerBeanPostProcessor, avoid eager creation of inbound/outbound target beans whenever possible
- Use `applicationContext.getType(targetName)` instead of `applicationContext.getBean(targetName)` which checks the type of target beans from bean factory instead of creating the bean eagerly.
- For declarative method invocation, `applicationContext.getBean` is needed as it requires the actual bean as its argument
Resolves#767
Update the test
- ignore bean definition not found exception when the bean definition doesn't exist
Fix#859
Instead of sending out all matching relaxed properties
we now pick up one single canonical format and send
the data to consumers using it.
Formatting settings
- Given the TestSupportBinder has its own BinderFactory that returns the TestSupportBinder, we need to exclude the BinderType entry of TestSupportBinder detected from classpath
- This will make sure to exclude test support binder when TestSupportBinderAutoConfiguration is excluded when using other explicit binder in tests
Resolves#827
Set defaultCandidate to false for TestSupportBinder
- Set `defaultCandidate` to false for the TestSupportBinder using an environment post processor
- At BinderFactoryConfiguration, don't override the 'BinderProperties' set via declared binders
- Set `defaultCandidate` to `true` only for the binders set via BinderTypeRegistry without overriding their binder properties