Ejemplo n.º 1
0
        /// ///////////////////////////////////////////////////
        public static void CloseSession(CSessionClientSurServeur session)
        {
            CDonneeNotificationConnection donnee = new CDonneeNotificationConnection(session.IdSession, false);

            CEnvoyeurNotification.EnvoieNotifications(new IDonneeNotification[] { donnee });

            lock (typeof(CLockerListeSessions))
            {
                m_listeSessions.Remove(session.IdSession);
            }

            CSessionClient.OnCloseSessionServeur(session.IdSession);
        }
Ejemplo n.º 2
0
        /// ///////////////////////////////////////////////////
        public CResultAErreur ReconnecteSession(CSessionClient sessionSurClient)
        {
            CResultAErreur           result            = CResultAErreur.True;
            ISessionClientSurServeur sessionSurServeur = GetSessionClientSurServeur(sessionSurClient.IdSession);

            if (sessionSurServeur != null)
            {
                sessionSurClient.SessionSurServeur = sessionSurServeur;
                return(result);
            }
            result = CanOpenSession(sessionSurClient);
            if (result)
            {
                sessionSurServeur = GetNewSessionSurServeur(sessionSurClient, result.Data);
                result.Data       = null;
                if (sessionSurServeur == null)
                {
                    result.EmpileErreur(I.T("Server session allocation impossible|105"));
                }
                else
                {
                    sessionSurClient.SessionSurServeur = sessionSurServeur;
                    lock (typeof(CLockerListeSessions))
                    {
                        m_listeSessions[sessionSurClient.IdSession] = sessionSurServeur;
                    }
                    string strMessage = I.T("Session Reconnection n°|111") + sessionSurClient.IdSession +
                                        "\r\n" + I.T("Type|107") + sessionSurClient.TypeApplicationCliente.ToString();
                    strMessage += I.T("\r\n|108") + sessionSurServeur.DescriptionApplicationCliente;
                    try
                    {
                        strMessage += I.T("\r\n|108") + sessionSurClient.GetInfoUtilisateur().NomUtilisateur;
                    }
                    catch
                    { }
                    C2iEventLog.WriteInfo(strMessage, NiveauBavardage.VraiPiplette);
                    CDonneeNotificationConnection donnee = new CDonneeNotificationConnection(sessionSurClient.IdSession, true);
                    CEnvoyeurNotification.EnvoieNotifications(new IDonneeNotification[] { donnee });
                }
            }
            return(result);
        }