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:
Artem Bilan
2019-09-29 10:28:09 -04:00
parent 9994997917
commit eeb951b0da
3 changed files with 31 additions and 25 deletions

View File

@@ -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

View File

@@ -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);
}

View File

@@ -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