Fix new Sonar smells
This commit is contained in:
committed by
Gary Russell
parent
5421574ef5
commit
5b84936a40
@@ -146,23 +146,24 @@ public class JsonToObjectTransformer extends AbstractTransformer implements Bean
|
||||
|
||||
|
||||
private ResolvableType obtainResolvableTypeFromHeadersIfAny(MessageHeaders headers) {
|
||||
ResolvableType valueType = null;
|
||||
if (headers.containsKey(JsonHeaders.TYPE_ID) || headers.containsKey(JsonHeaders.RESOLVABLE_TYPE)) {
|
||||
valueType = headers.get(JsonHeaders.RESOLVABLE_TYPE, ResolvableType.class);
|
||||
if (valueType == null) {
|
||||
Class<?> targetClass = getClassForValue(headers.get(JsonHeaders.TYPE_ID));
|
||||
Class<?> contentClass = null;
|
||||
Class<?> keyClass = null;
|
||||
if (headers.containsKey(JsonHeaders.CONTENT_TYPE_ID)) {
|
||||
contentClass = getClassForValue(headers.get(JsonHeaders.CONTENT_TYPE_ID));
|
||||
}
|
||||
if (headers.containsKey(JsonHeaders.KEY_TYPE_ID)) {
|
||||
keyClass = getClassForValue(headers.get(JsonHeaders.KEY_TYPE_ID));
|
||||
}
|
||||
|
||||
valueType = JsonObjectMapper.buildResolvableType(targetClass, contentClass, keyClass);
|
||||
ResolvableType valueType = headers.get(JsonHeaders.RESOLVABLE_TYPE, ResolvableType.class);
|
||||
Object typeIdHeader = headers.get(JsonHeaders.TYPE_ID);
|
||||
if (valueType == null && typeIdHeader != null) {
|
||||
Class<?> targetClass = getClassForValue(typeIdHeader);
|
||||
Class<?> contentClass = null;
|
||||
Class<?> keyClass = null;
|
||||
Object contentTypeHeader = headers.get(JsonHeaders.CONTENT_TYPE_ID);
|
||||
if (contentTypeHeader != null) {
|
||||
contentClass = getClassForValue(contentTypeHeader);
|
||||
}
|
||||
Object keyTypeHeader = headers.get(JsonHeaders.KEY_TYPE_ID);
|
||||
if (keyTypeHeader != null) {
|
||||
keyClass = getClassForValue(keyTypeHeader);
|
||||
}
|
||||
|
||||
valueType = JsonObjectMapper.buildResolvableType(targetClass, contentClass, keyClass);
|
||||
}
|
||||
|
||||
return valueType;
|
||||
}
|
||||
|
||||
|
||||
@@ -120,11 +120,9 @@ public class ObjectToJsonTransformer extends AbstractTransformer {
|
||||
headers.putAll(message.getHeaders());
|
||||
|
||||
if (headers.containsKey(MessageHeaders.CONTENT_TYPE)) {
|
||||
if (this.contentTypeExplicitlySet) {
|
||||
// override, unless empty
|
||||
if (StringUtils.hasLength(this.contentType)) {
|
||||
headers.put(MessageHeaders.CONTENT_TYPE, this.contentType);
|
||||
}
|
||||
// override, unless empty
|
||||
if (this.contentTypeExplicitlySet && StringUtils.hasLength(this.contentType)) {
|
||||
headers.put(MessageHeaders.CONTENT_TYPE, this.contentType);
|
||||
}
|
||||
}
|
||||
else if (StringUtils.hasLength(this.contentType)) {
|
||||
|
||||
@@ -1038,26 +1038,10 @@ public class IntegrationMBeanExporter extends MBeanExporter implements Applicati
|
||||
|
||||
String endpointName = null;
|
||||
String source = "endpoint";
|
||||
Object endpoint = null;
|
||||
AbstractEndpoint endpoint = getEndpointForMonitor(monitor);
|
||||
|
||||
String[] names = this.applicationContext.getBeanNamesForType(AbstractEndpoint.class);
|
||||
for (String beanName : names) {
|
||||
endpoint = this.applicationContext.getBean(beanName);
|
||||
Object target = null;
|
||||
if (monitor instanceof MessagingGatewaySupport && endpoint.equals(monitor)) {
|
||||
target = monitor;
|
||||
}
|
||||
else if (endpoint instanceof SourcePollingChannelAdapter) {
|
||||
target = ((SourcePollingChannelAdapter) endpoint).getMessageSource();
|
||||
}
|
||||
if (monitor.equals(target)) {
|
||||
endpointName = beanName;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (endpointName == null) {
|
||||
endpoint = null;
|
||||
if (endpoint != null) {
|
||||
endpointName = endpoint.getBeanName();
|
||||
}
|
||||
if (endpointName != null && endpointName.startsWith('_' + SI_PACKAGE)) {
|
||||
endpointName = getInternalComponentName(endpointName);
|
||||
@@ -1072,6 +1056,22 @@ public class IntegrationMBeanExporter extends MBeanExporter implements Applicati
|
||||
return messageSourceMetrics;
|
||||
}
|
||||
|
||||
private AbstractEndpoint getEndpointForMonitor(MessageSourceMetrics monitor) {
|
||||
for (AbstractEndpoint endpoint : this.applicationContext.getBeansOfType(AbstractEndpoint.class).values()) {
|
||||
Object target = null;
|
||||
if (monitor instanceof MessagingGatewaySupport && endpoint.equals(monitor)) {
|
||||
target = monitor;
|
||||
}
|
||||
else if (endpoint instanceof SourcePollingChannelAdapter) {
|
||||
target = ((SourcePollingChannelAdapter) endpoint).getMessageSource();
|
||||
}
|
||||
if (monitor.equals(target)) {
|
||||
return endpoint;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private MessageSourceMetrics buildMessageSourceMetricsIfAny(MessageSourceMetrics monitor, String name,
|
||||
String source, Object endpoint) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user