public void DestroySession(ServiceDestroyMessage serviceDestroy) { #if TRACE Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0)); #endif if (serviceDestroy == null) { throw new ArgumentNullException("serviceDestroy"); } ObjectBusSession session; lock (sessions) { //TODO:remove this line if (!sessions.ContainsKey(serviceDestroy.SessionID)) { return; } session = sessions [serviceDestroy.SessionID]; if (session == systemSession) { if (sessions.Count != 0) { throw new InvalidOperationException("System session must be the last session to be destroyed."); } } sessions.Remove(serviceDestroy.SessionID); } }
void DestroyHandler(ObjectBusSession session) { #if TRACE Console.WriteLine(new System.Diagnostics.StackTrace(true).GetFrame(0)); #endif ServiceDestroyMessage serviceDestroy = new ServiceDestroyMessage(session.SessionID); SendMessage(serviceDestroy); DestroySession(serviceDestroy); }
public void DestroySession(ServiceDestroyMessage serviceDestroy) { #if TRACE Console.WriteLine (new System.Diagnostics.StackTrace (true).GetFrame (0)); #endif if (serviceDestroy == null) throw new ArgumentNullException ("serviceDestroy"); ObjectBusSession session; lock (sessions) { //TODO:remove this line if (!sessions.ContainsKey (serviceDestroy.SessionID)) return; session = sessions [serviceDestroy.SessionID]; if (session == systemSession) { if (sessions.Count != 0) { throw new InvalidOperationException ("System session must be the last session to be destroyed."); } } sessions.Remove (serviceDestroy.SessionID); } }
void DestroyHandler(ObjectBusSession session) { #if TRACE Console.WriteLine (new System.Diagnostics.StackTrace (true).GetFrame (0)); #endif ServiceDestroyMessage serviceDestroy = new ServiceDestroyMessage (session.SessionID); SendMessage (serviceDestroy); DestroySession (serviceDestroy); }