private void InitSaslHandler() { if (m_SaslHandler == null) { m_SaslHandler = new SaslHandler(this); m_SaslHandler.OnSaslStart += new SaslEventHandler(m_SaslHandler_OnSaslStart); m_SaslHandler.OnSaslEnd += new ObjectHandler(m_SaslHandler_OnSaslEnd); } }
/// <summary> /// Does the Clieanup of the Session and sends the OnClose Event /// </summary> private void CleanupSession() { m_CleanUpDone = true; // TODO, check if this is always OK if (ClientSocket.Connected) ClientSocket.Disconnect(); DoChangeXmppConnectionState(XmppConnectionState.Disconnected); StreamParser.Reset(); m_IqGrabber.Clear(); m_MessageGrabber.Clear(); if (m_SaslHandler != null) { m_SaslHandler.Dispose(); m_SaslHandler = null; } m_Authenticated = false; m_Binded = false; DestroyKeepAliveTimer(); if (OnClose!=null) OnClose(this); }