Fix EnricherSpec for method choice ambiguity

This commit is contained in:
abilan
2023-07-28 12:33:55 -04:00
parent b6fe685873
commit 0c7d40d1e2

View File

@@ -219,10 +219,11 @@ public class EnricherSpec extends ConsumerEndpointSpec<EnricherSpec, ContentEnri
* Set a header with the value if it is not already present.
* @param name the header name.
* @param value the value.
* @param <V> the value type.
* @return the enricher spec.
* @see ContentEnricher#setHeaderExpressions(Map)
*/
public EnricherSpec header(String name, Object value) {
public <V> EnricherSpec header(String name, V value) {
return header(name, value, null);
}
@@ -302,10 +303,11 @@ public class EnricherSpec extends ConsumerEndpointSpec<EnricherSpec, ContentEnri
* Set a header value using an explicit {@link HeaderValueMessageProcessor}.
* @param headerName the header name.
* @param headerValueMessageProcessor the headerValueMessageProcessor.
* @param <V> the value type.
* @return the enricher spec.
* @see ContentEnricher#setHeaderExpressions(Map)
*/
public EnricherSpec header(String headerName, HeaderValueMessageProcessor<Object> headerValueMessageProcessor) {
public <V> EnricherSpec header(String headerName, HeaderValueMessageProcessor<V> headerValueMessageProcessor) {
Assert.hasText(headerName, "'headerName' must not be empty");
this.headerExpressions.put(headerName, headerValueMessageProcessor);
return _this();