private void LogoutAllSessions(bool force)
{
foreach(Session session in sessions_.Values)
{
try
{
session.Logout();
}
catch(System.Exception e)
{
/// FIXME logError(session.getSessionID(), "Error during logout", e);
System.Console.WriteLine("Error during logout of Session " + session.SessionID + ": " + e.Message);
}
}
if (force && IsLoggedOn())
{
foreach (Session session in sessions_.Values)
{
try
{
if (session.IsLoggedOn)
session.Disconnect("Forcibly disconnecting session");
}
catch(System.Exception e)
{
/// FIXME logError(session.getSessionID(), "Error during disconnect", e);
System.Console.WriteLine("Error during disconnect of Session " + session.SessionID + ": " + e.Message);
}
}
}
if (!force)
WaitForLogout();
}