Merge pull request #257 from olegz/SONAR

INT-2323
This commit is contained in:
Mark Fisher
2011-12-20 12:14:51 -05:00
9 changed files with 30 additions and 24 deletions

View File

@@ -289,6 +289,11 @@ project('spring-integration-http') {
optional = true
exclude group: 'junit', module: 'junit'
}
compile("net.java.dev.rome:rome-fetcher:1.0.0") {
optional = true
exclude group: 'junit', module: 'junit'
}
compile ("net.java.dev.rome:rome:1.0.0") { optional = true }
testCompile project(":spring-integration-test")
}
}

View File

@@ -81,8 +81,12 @@ public class UnicastingDispatcher extends AbstractDispatcher {
public void setLoadBalancingStrategy(LoadBalancingStrategy loadBalancingStrategy) {
Lock lock = rwLock.writeLock();
lock.lock();
this.loadBalancingStrategy = loadBalancingStrategy;
lock.unlock();
try {
this.loadBalancingStrategy = loadBalancingStrategy;
}
finally {
lock.unlock();
}
}
public final boolean dispatch(final Message<?> message) {

View File

@@ -243,10 +243,10 @@ public abstract class MessagingGatewaySupport extends AbstractEndpoint implement
if (error != null) {
if (this.errorChannel != null) {
Message<?> errorMessage = null;
Message<?> errorMessage = new ErrorMessage(error);
Message<?> errorFlowReply = null;
try {
errorFlowReply = this.messagingTemplate.sendAndReceive(this.errorChannel, new ErrorMessage(error));
errorFlowReply = this.messagingTemplate.sendAndReceive(this.errorChannel, errorMessage);
}
catch (Exception errorFlowFailure) {
throw new MessagingException(errorMessage, "failure occurred in error-handling flow", errorFlowFailure);

View File

@@ -132,11 +132,13 @@ public class MessageGroupStoreReaper implements Runnable, DisposableBean, Initia
destroy();
if (logger.isInfoEnabled()){
logger.info("stopped " + this);
};
} catch (Exception e) {
logger.error("failed to stop bean",e);
} finally {
}
running = false;
}
catch (Exception e) {
logger.error("failed to stop bean",e);
}
finally {
this.lifecycleLock.unlock();
}
}

View File

@@ -497,13 +497,11 @@ public class MessagingMethodInvokerHelper<T> extends AbstractExpressionEvaluator
sb.append(this.determineHeaderExpression(headerAnnotation, new MethodParameter(method, i)));
}
}
else if (parameterTypeDescriptor != null
&& parameterTypeDescriptor.isAssignableTo(messageTypeDescriptor)) {
else if (parameterTypeDescriptor.isAssignableTo(messageTypeDescriptor)) {
sb.append("message");
this.setExclusiveTargetParameterType(parameterTypeDescriptor);
}
else if (parameterTypeDescriptor != null
&& (parameterTypeDescriptor.isAssignableTo(messageListTypeDescriptor) || parameterTypeDescriptor
else if ((parameterTypeDescriptor.isAssignableTo(messageListTypeDescriptor) || parameterTypeDescriptor
.isAssignableTo(messageArrayTypeDescriptor))) {
sb.append("messages");
this.setExclusiveTargetParameterType(parameterTypeDescriptor);

View File

@@ -126,11 +126,7 @@ public abstract class AbstractFtpSessionFactory<T extends FTPClient> implements
public Session<FTPFile> getSession() {
try {
T client = this.createClient();
if (client == null) {
return null;
}
return new FtpSession(client);
return new FtpSession(this.createClient());
}
catch (Exception e) {
throw new IllegalStateException("failed to create FTPClient", e);

View File

@@ -42,6 +42,8 @@ import org.springframework.http.converter.ByteArrayHttpMessageConverter;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.ResourceHttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.http.converter.feed.AtomFeedHttpMessageConverter;
import org.springframework.http.converter.feed.RssChannelHttpMessageConverter;
import org.springframework.http.converter.json.MappingJacksonHttpMessageConverter;
import org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter;
import org.springframework.http.converter.xml.SourceHttpMessageConverter;
@@ -103,7 +105,7 @@ abstract class HttpRequestHandlingEndpointSupport extends MessagingGatewaySuppor
HttpRequestHandlingEndpointSupport.class.getClassLoader())
&& ClassUtils.isPresent("org.codehaus.jackson.JsonGenerator", HttpRequestHandlingEndpointSupport.class
.getClassLoader());
private static boolean romePresent = ClassUtils.isPresent("com.sun.syndication.feed.WireFeed",
HttpRequestHandlingEndpointSupport.class.getClassLoader());
@@ -151,9 +153,8 @@ abstract class HttpRequestHandlingEndpointSupport extends MessagingGatewaySuppor
this.messageConverters.add(new MappingJacksonHttpMessageConverter());
}
if (romePresent) {
// TODO add deps for:
// this.messageConverters.add(new AtomFeedHttpMessageConverter());
// this.messageConverters.add(new RssChannelHttpMessageConverter());
this.messageConverters.add(new AtomFeedHttpMessageConverter());
this.messageConverters.add(new RssChannelHttpMessageConverter());
}
}

View File

@@ -421,7 +421,7 @@ public class IntegrationMBeanExporter extends MBeanExporter implements BeanPostP
@ManagedAttribute
public String[] getHandlerNames() {
return handlersByName.keySet().toArray(new String[0]);
return handlersByName.keySet().toArray(new String[handlersByName.size()]);
}
@ManagedMetric(metricType = MetricType.GAUGE, displayName = "Active Handler Count")
@@ -446,7 +446,7 @@ public class IntegrationMBeanExporter extends MBeanExporter implements BeanPostP
@ManagedAttribute
public String[] getChannelNames() {
return channelsByName.keySet().toArray(new String[0]);
return channelsByName.keySet().toArray(new String[channelsByName.size()]);
}
public Statistics getHandlerDuration(String name) {

View File

@@ -289,7 +289,7 @@ public abstract class AbstractMailReceiver extends IntegrationObjectSupport impl
if (this.shouldDeleteMessages()) {
this.deleteMessages(messages);
}
return copiedMessages.toArray(new Message[]{});
return copiedMessages.toArray(new Message[copiedMessages.size()]);
}
finally {
MailTransportUtils.closeFolder(this.folder, this.shouldDeleteMessages);