SPRNET-1070 - SimpleMessageListenerContainer to check for null sessions and consumers when shutting down.

This commit is contained in:
markpollack
2008-10-24 14:18:35 +00:00
parent 7f037207ac
commit 5b23f73bc0

View File

@@ -323,18 +323,27 @@ namespace Spring.Messaging.Nms.Listener
/// <throws>NMSException if destruction failed </throws>
protected override void DoShutdown()
{
logger.Debug("Closing NMS MessageConsumers");
foreach (IMessageConsumer messageConsumer in consumers)
lock (consumersMonitor)
{
NmsUtils.CloseMessageConsumer(messageConsumer);
if (consumers != null)
{
logger.Debug("Closing NMS MessageConsumers");
foreach (IMessageConsumer messageConsumer in consumers)
{
NmsUtils.CloseMessageConsumer(messageConsumer);
}
}
if (sessions != null)
{
logger.Debug("Closing NMS Sessions");
foreach (ISession session in sessions)
{
NmsUtils.CloseSession(session);
}
}
consumers = null;
sessions = null;
}
logger.Debug("Closing NMS Sessions");
foreach (ISession session in sessions)
{
NmsUtils.CloseSession(session);
}
consumers = null;
sessions = null;
}