Sonar fixes
Critical smells `0.s.i.r*` * Polishing - PR Comments.
This commit is contained in:
committed by
Artem Bilan
parent
271181247d
commit
e8bd31cc37
@@ -17,6 +17,7 @@
|
||||
package org.springframework.integration.context;
|
||||
|
||||
import java.util.Properties;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
@@ -44,7 +45,9 @@ import org.springframework.integration.support.utils.IntegrationUtils;
|
||||
import org.springframework.messaging.MessageChannel;
|
||||
import org.springframework.messaging.core.DestinationResolver;
|
||||
import org.springframework.scheduling.TaskScheduler;
|
||||
import org.springframework.util.AlternativeJdkIdGenerator;
|
||||
import org.springframework.util.Assert;
|
||||
import org.springframework.util.IdGenerator;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
@@ -68,10 +71,12 @@ public abstract class IntegrationObjectSupport implements BeanNameAware, NamedCo
|
||||
|
||||
protected static final ExpressionParser EXPRESSION_PARSER = new SpelExpressionParser();
|
||||
|
||||
private static final IdGenerator idGenerator = new AlternativeJdkIdGenerator(); // NOSONAR lower case
|
||||
|
||||
/**
|
||||
* Logger that is available to subclasses
|
||||
*/
|
||||
protected final Log logger = LogFactory.getLog(getClass());
|
||||
protected final Log logger = LogFactory.getLog(getClass()); // NOSONAR protected
|
||||
|
||||
private final ConversionService defaultConversionService = DefaultConversionService.getSharedInstance();
|
||||
|
||||
@@ -312,4 +317,8 @@ public abstract class IntegrationObjectSupport implements BeanNameAware, NamedCo
|
||||
return (this.beanName != null) ? this.beanName : super.toString();
|
||||
}
|
||||
|
||||
public static UUID generateId() {
|
||||
return idGenerator.generateId();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -293,7 +293,10 @@ public abstract class AbstractMappingMessageRouter extends AbstractMessageRouter
|
||||
addToCollection(channels, (Collection<?>) channelKey, message);
|
||||
}
|
||||
else if (getRequiredConversionService().canConvert(channelKey.getClass(), String.class)) {
|
||||
addChannelFromString(channels, getConversionService().convert(channelKey, String.class), message);
|
||||
String converted = getConversionService().convert(channelKey, String.class);
|
||||
if (converted != null) {
|
||||
addChannelFromString(channels, converted, message);
|
||||
}
|
||||
}
|
||||
else {
|
||||
throw new MessagingException("unsupported return type for router [" + channelKey.getClass() + "]");
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
package org.springframework.integration.router;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.springframework.core.convert.ConversionService;
|
||||
import org.springframework.core.convert.support.DefaultConversionService;
|
||||
@@ -171,24 +172,20 @@ public abstract class AbstractMessageRouter extends AbstractMessageHandler imple
|
||||
int sequenceSize = results.size();
|
||||
int sequenceNumber = 1;
|
||||
for (MessageChannel channel : results) {
|
||||
final Message<?> messageToSend =
|
||||
!this.applySequence ? message : (this.getMessageBuilderFactory()
|
||||
final Message<?> messageToSend;
|
||||
if (!this.applySequence) {
|
||||
messageToSend = message;
|
||||
}
|
||||
else {
|
||||
UUID id = message.getHeaders().getId();
|
||||
messageToSend = getMessageBuilderFactory()
|
||||
.fromMessage(message)
|
||||
.pushSequenceDetails(message.getHeaders().getId(), sequenceNumber++, sequenceSize)
|
||||
.build());
|
||||
.pushSequenceDetails(id == null ? generateId() : id,
|
||||
sequenceNumber++, sequenceSize)
|
||||
.build();
|
||||
}
|
||||
if (channel != null) {
|
||||
try {
|
||||
this.messagingTemplate.send(channel, messageToSend);
|
||||
sent = true;
|
||||
}
|
||||
catch (MessagingException e) {
|
||||
if (!this.ignoreSendFailures) {
|
||||
throw e;
|
||||
}
|
||||
else if (this.logger.isDebugEnabled()) {
|
||||
this.logger.debug(e);
|
||||
}
|
||||
}
|
||||
sent |= doSend(channel, messageToSend);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -204,4 +201,18 @@ public abstract class AbstractMessageRouter extends AbstractMessageHandler imple
|
||||
}
|
||||
}
|
||||
|
||||
private boolean doSend(MessageChannel channel, final Message<?> messageToSend) {
|
||||
try {
|
||||
this.messagingTemplate.send(channel, messageToSend);
|
||||
return true;
|
||||
}
|
||||
catch (MessagingException e) {
|
||||
if (!this.ignoreSendFailures) {
|
||||
throw e;
|
||||
}
|
||||
this.logger.debug("Send failure ignored", e);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user