822 Commits

Author SHA1 Message Date
Marius Bogoevici
63ff75f766 Set next development version 1.2.2.BUILD-SNAPSHOT 2017-04-11 22:21:03 -04:00
Marius Bogoevici
a33b9bfbe4 Release 1.2.1.RELEASE 2017-04-11 22:11:24 -04:00
Marius Bogoevici
6bdca86660 Minor: line ending doc 2017-04-11 18:37:40 -04:00
Marius Bogoevici
98ca7f978a Update metrics sample
Fix #918
2017-04-11 18:09:28 -04:00
Marius Bogoevici
1459400158 Clear the exportProperties cache on refresh
Fix #910
2017-04-11 12:02:01 -04:00
Marius Bogoevici
523a3cfdab Observe priority when populating the exported properties
Fix #909

- If a property is already present in the exported list
  it means that it's been put there by a higher priority
  source - so we can skip it
2017-04-10 21:00:50 -04:00
Marius Bogoevici
ab76178b82 Handle placeholders and SpEL in metrics properties
Fix #907

- Placeholders are replaced and expressions are evaluated
  before on attached properties

Add test for default value
2017-04-10 21:00:39 -04:00
Marius Bogoevici
d6fe841a63 Align the exporter and the trigger name
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
2017-04-10 15:37:52 -04:00
Marius Bogoevici
161011fcde Restrict shading to classes in rxjava-reactive-streams
Fix #906
2017-04-07 13:17:09 -04:00
Marius Bogoevici
ec05e6cf44 Fix metrics properties prefix
Fixes #900
2017-04-06 11:19:43 -04:00
Soby Chacko
92fc292386 Next version:1.2.1.BUILD-SNAPSHOT 2017-04-04 15:02:03 -04:00
Soby Chacko
54678571df Release 1.2.0.RELEASE 2017-04-04 14:51:35 -04:00
Marius Bogoevici
e7fec479ee Additional refactoring
- 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
2017-04-04 10:30:30 -04:00
Ilayaperumal Gopinathan
a309fa772e Make spring-boot actuator as optional dependency
- 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
2017-04-04 10:30:30 -04:00
Marius Bogoevici
9ea4ff324c Convert byte[] via text/plain to String
Fix #898

When the payload is `byte[]` ensure that the
String is the String representation, not the
toString() conversion result.
2017-04-04 14:29:52 +05:30
Marius Bogoevici
8f3e448f07 Schema support documentation polishing 2017-04-03 18:47:06 -04:00
Vinicius Carvalho
44f66543d0 Adding improved section on schema evolution support
Fix #898
2017-04-03 18:46:51 -04:00
Marius Bogoevici
d17e70ddaf Metrics refactoring
- 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
2017-03-31 17:33:58 -04:00
Marius Bogoevici
c5632cd5f3 Add reference to Kryo 2017-03-31 10:45:12 -04:00
Marius Bogoevici
334ed57c00 Update test binder documentation
Fix #867

* Switch to Spring Boot 1.4 and later configuration
* Add artifact reference
* Remove @DirtiesContext and autowired BinderFactory field
2017-03-31 10:30:48 -04:00
Ilayaperumal Gopinathan
934e36ab09 Apply metrics channel name in RelaxedPropertiesUtilsTests 2017-03-31 15:57:04 +05:30
Vinicius Carvalho
7438fde088 Changing metrics channel name to align with boot 2017-03-31 15:48:09 +05:30
Dave Syer
07d0328d68 Convert BinderMetricsEmitter to an Exporter
Re-organize and re-name a bit
Rename config package
Use spring.metrics.export.* to configure the includes and excludes
2017-03-30 09:41:27 -04:00
Ilayaperumal Gopinathan
c812fa0374 Add test for EmbeddedHeaderUtils.headersToEmbed 2017-03-30 13:59:34 +05:30
Marius Bogoevici
27184a4cfc Internal refactoring - expose header embedding and serialization
Fix #888

- Rename `EmbeddedHeaderMessageConverter` to `EmbeddedHeaderUtils`;
- Add method to populate default header set;
- Make `serializePayloadIfNecessary` protected so it can be accessed by subclasses;
2017-03-30 13:08:39 +05:30
Ilayaperumal Gopinathan
6592c1a8cd Minor polishing
- Refactor conditional clause
2017-03-30 11:55:31 +05:30
Marius Bogoevici
ab9cf91803 Allow StreamListenerParameterAdapter to be applied more broadly
Fix #890
2017-03-30 01:24:40 -04:00
Marius Bogoevici
7dd5e50f82 Leniently support treating input Strings as JSON
Fixes #871

* Only support conversion based on `text/plain` header if target type is String;
2017-03-29 09:17:23 -04:00
Vinicius Carvalho
9fdd7f9fc5 Metrics: rename applicationName to key
Fix #879
2017-03-27 12:16:03 -04:00
Ilayaperumal Gopinathan
ba18c01602 Avoid eager creation of bound target beans
- 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
2017-03-24 16:12:30 -04:00
Julian Hanhart
d250022250 Fix URLs used by ConfluentSchemaRegistryClient
Fix #845

Fixed resource path for fetch by SchemaReference in the ConfluentSchemaRegistryClient.
2017-03-20 11:39:48 -04:00
Vinicius Carvalho
d78adea895 Avoiding duplicate entries on properties map
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
2017-03-18 19:13:17 -04:00
Ilayaperumal Gopinathan
69cbc7f05b Exclude test support binder from binder type registry
- 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
2017-03-17 14:08:38 -04:00
Ilayaperumal Gopinathan
8e87f2bece Add doc for using errorChannel subscription
Resolves #849
2017-03-15 16:17:04 -04:00
Soby Chacko
edc37ce53e Allow non byte array payload with raw HeaderMode
Fixes #855
2017-03-15 13:54:15 -04:00
Marius Bogoevici
fddf3fb29b Set version to 1.2.0.BUILD-SNAPSHOT 2017-03-13 18:53:55 -04:00
Marius Bogoevici
23a738d3f9 Release 1.2.0.RC1 2017-03-13 18:53:17 -04:00
Marius Bogoevici
3544fe4899 Use Spring Cloud Build 1.3.1.RELEASE 2017-03-13 18:50:47 -04:00
Vinicius Carvalho
e05d5e03bd Initial metrics implementation 2017-03-13 18:13:27 -04:00
Ilayaperumal Gopinathan
8230a8b348 Fix StreamListener method with no explicit declarative method params
- Treat methods with Object arguments as 'handler' as opposed to 'declarative'
 - Add test

Resolves #844

Check object type to decide handler method
2017-03-13 14:13:27 -04:00
Ilayaperumal Gopinathan
567bdb4b2c Clarify content type conversion in doc
Resolves #797
2017-03-13 13:47:52 -04:00
Gary Russell
c9e83bb62c Fix Partition-Capable Tests 2017-03-10 15:22:38 -05:00
Gary Russell
bd1454bfff kGH-21: Add BinderHeaders.PARTITION_OVERRIDE
See spring-cloud/spring-cloud-stream-binder-kafka#109
See #851

Add Prefix to Partition Headers

originalContentType remains as-is for backwards-compatibility.

Enhance Javadoc
2017-03-10 13:38:18 -05:00
Ilayaperumal Gopinathan
f14d4d85c5 Add tests for PartitionInterceptor's preSend
- Check header updates with/without explicit 'partition' header in the message
2017-03-10 15:04:20 +05:30
Gary Russell
34acc2d190 Kafka GH-21: Don't Override User Partition
See spring-cloud/spring-cloud-stream-binder-kafka#109

If the user app sets the `BinderHeader.PARTITION_HEADER`, don't override it in the binder.
2017-03-10 14:07:10 +05:30
Marius Bogoevici
21cc1e9b58 Polishing 2017-03-08 16:09:55 -05:00
Vinicius Carvalho
4cd9b0c3ec Introducing caching
Fix #832 #752

Adds caching capabilities to the converter. Remote calls to the
registry, Schema Parsing and toString were very expensive operations
that are now being cached

Adds a decorator to the registryClient that allows caching of remote
invocations.

Fixing review comments
2017-03-08 12:45:19 -05:00
Marius Bogoevici
a67fe02fd7 Handle @StreamListener properly as meta-annotation
Fix #841

* Use `AnnotatedElementUtils`
* Formatting for the additional test
2017-03-07 14:34:11 -05:00
David Turanski
ddce282147 Add failing test 2017-03-07 12:29:39 -05:00
Ilayaperumal Gopinathan
841e05b266 Add note on aggregate application doc
Resolves #785

Fix review comments
2017-03-06 11:42:45 -05:00