in src/main/csharp/Session.cs [50:77]
public void Close()
{
List<Destination> closingDestinations = null;
lock(destinationLock)
{
if(destinations.Count > 0)
{
closingDestinations = new List<Destination>(destinations);
}
destinations.Clear();
}
if(null != closingDestinations)
{
foreach(Destination dest in closingDestinations)
{
dest.Dispose();
}
}
if(MessageQueueTransaction != null)
{
MessageQueueTransaction.Dispose();
MessageQueueTransaction = null;
}
}