Fix new Sonar Smells
* Change `whats-new.adoc#x5.2-behavior` to point for the whole `5.1-to-5.2-Migration-Guide`
This commit is contained in:
@@ -290,7 +290,7 @@ public class NullChannel implements PollableChannel,
|
||||
}
|
||||
|
||||
private CounterFacade buildReceiveCounter() {
|
||||
CounterFacade counterFacade = this.metricsCaptor
|
||||
return this.metricsCaptor
|
||||
.counterBuilder(RECEIVE_COUNTER_NAME)
|
||||
.tag("name", getComponentName() == null ? "unknown" : getComponentName())
|
||||
.tag("type", "channel")
|
||||
@@ -298,7 +298,6 @@ public class NullChannel implements PollableChannel,
|
||||
.tag("exception", "none")
|
||||
.description("Messages received")
|
||||
.build();
|
||||
return counterFacade;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
|
||||
package org.springframework.integration.transaction;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import org.springframework.expression.EvaluationContext;
|
||||
@@ -142,28 +143,7 @@ public class ExpressionEvaluatingTransactionSynchronizationProcessor extends Int
|
||||
EvaluationContext evaluationContextToUse = prepareEvaluationContextToUse(holder);
|
||||
Object value = expression.getValue(evaluationContextToUse, message);
|
||||
if (value != null && messageChannel != null) {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Sending expression result message to " + messageChannel + " " +
|
||||
"as part of '" + expressionType + "' transaction synchronization");
|
||||
}
|
||||
Message<?> spelResultMessage = null;
|
||||
try {
|
||||
if (value instanceof Message<?>) {
|
||||
spelResultMessage = (Message<?>) value;
|
||||
}
|
||||
else {
|
||||
spelResultMessage =
|
||||
getMessageBuilderFactory()
|
||||
.withPayload(value)
|
||||
.copyHeaders(message.getHeaders())
|
||||
.build();
|
||||
}
|
||||
|
||||
sendMessage(messageChannel, spelResultMessage);
|
||||
}
|
||||
catch (Exception e) {
|
||||
logger.error("Failed to send " + expressionType + " evaluation result " + spelResultMessage, e);
|
||||
}
|
||||
sendMessageForExpressionResult(value, message.getHeaders(), messageChannel, expressionType);
|
||||
}
|
||||
else {
|
||||
if (logger.isTraceEnabled()) {
|
||||
@@ -189,6 +169,33 @@ public class ExpressionEvaluatingTransactionSynchronizationProcessor extends Int
|
||||
}
|
||||
}
|
||||
|
||||
private void sendMessageForExpressionResult(Object value, Map<String, ?> headers,
|
||||
MessageChannel messageChannel, String expressionType) {
|
||||
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Sending expression result message to " + messageChannel + " " +
|
||||
"as part of '" + expressionType + "' transaction synchronization");
|
||||
}
|
||||
Message<?> spelResultMessage = null;
|
||||
try {
|
||||
if (value instanceof Message<?>) {
|
||||
spelResultMessage = (Message<?>) value;
|
||||
}
|
||||
else {
|
||||
spelResultMessage =
|
||||
getMessageBuilderFactory()
|
||||
.withPayload(value)
|
||||
.copyHeaders(headers)
|
||||
.build();
|
||||
}
|
||||
|
||||
sendMessage(messageChannel, spelResultMessage);
|
||||
}
|
||||
catch (Exception e) {
|
||||
logger.error("Failed to send " + expressionType + " evaluation result " + spelResultMessage, e);
|
||||
}
|
||||
}
|
||||
|
||||
private void sendMessage(MessageChannel channel, Message<?> message) {
|
||||
channel.send(message, 0);
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ If you are interested in more details, see the Issue Tracker tickets that were r
|
||||
[[x5.2-behavior]]
|
||||
=== Behavior Changes
|
||||
|
||||
See the https://github.com/spring-projects/spring-integration/wiki/Spring-Integration-5.1-to-5.2-Migration-Guide#dsl-publishsubscribechannel-behavior-change[Migration Guide] about a behavior change when using `publishSubscribeChannel` within a dynamically registered DSL integration flow.
|
||||
See the https://github.com/spring-projects/spring-integration/wiki/Spring-Integration-5.1-to-5.2-Migration-Guide[Migration Guide] about behavior changes in this version.
|
||||
|
||||
[[x5.2-new-components]]
|
||||
=== New Components
|
||||
|
||||
Reference in New Issue
Block a user