Пример #1
0
        //----------------------------------------------------------
        public CLicenceDemo()
            : base()
        {
            IdLys = -1;
            DateDeMiseEnService = DateTime.Now;
            Numero = Guid.NewGuid().ToString();
            Info   = I.T("Free Licence|20006");
            DateLimiteUtilisation = null;
            Password = "";
            //Contrat
            CContratPrtct contrat = new CContratPrtct();

            contrat.AppliName = "Timos SMT";
            contrat.IdAppli   = "TIMOS_SMT";
            contrat.Date      = DateTime.Now;
            //Client
            CClientPrtct client = new CClientPrtct();

            client.Nom     = I.T("Unregistered company|20007");
            client.Inactif = false;
            contrat.Client = client;

            //Modules App
            CApplicationProtegeeTimos app = new CApplicationProtegeeTimos();

            foreach (CLicenceModuleAppPrtct moduleApp in app.ModulesApp)
            {
                ModulesApp.Add(moduleApp);
            }

            //Profile administrateur
            CUserProfilPrtct profilAdmin = new CUserProfilPrtct();

            profilAdmin.Description = I.T("Application administrator|20008");
            profilAdmin.Id          = "ADMIN";
            profilAdmin.Nom         = I.T("Administrator|20009");
            profilAdmin.Nombre      = 1000;
            profilAdmin.Priorite    = 0;
            foreach (CLicenceModuleClientPrtct moduleClient in app.ModulesClient)
            {
                profilAdmin.ModulesClient.Add(moduleClient);
            }
            ProfilsUtilisateurs.Add(profilAdmin);

            //Profil utilisateur
            CUserProfilPrtct profilUser = new CUserProfilPrtct();

            profilUser.Description = I.T("Standard user|20010");
            profilUser.Id          = "USER";
            profilUser.Nom         = I.T("User|20011");
            profilUser.Nombre      = 1000;
            profilUser.Priorite    = 1;
            ProfilsUtilisateurs.Add(profilUser);

            CUserLicencePrtct licenceUser = new CUserLicencePrtct();

            licenceUser.IdLys       = -1;
            licenceUser.NbSimultane = 1000;
            UserLicences.Add(licenceUser);
        }
Пример #2
0
        //-------------------------------------------------------------------
        private CResultAErreur InitialiserSessionCliente(CSessionClient session, CDonneesActeurUtilisateur donneesUser)
        {
            CResultAErreur result = VerifInitialisationsTimosServeur();

            if (!result)
            {
                return(result);
            }

            //Recupération de la licence
            result = GetUserLicence(session, donneesUser);
            if (!result)
            {
                return(result);
            }
            CUserLicencePrtct licence = (CUserLicencePrtct)result.Data;

            //Recuperation d'un profil
            result = GetUserProfil(donneesUser);
            if (!result)
            {
                return(result);
            }
            CUserProfilPrtct profil = (CUserProfilPrtct)result.Data;

            //Enregistrement des infos de session
            CInfoSessionTimos info = new CInfoSessionTimos(donneesUser, licence, profil);

            result.Data = info;

            return(result);
        }
        /// ///////////////////////////////////////////////////
        public override void MyCloseSession()
        {
            //Détruit le contexte de données

            /*if ( m_contexteDonnees != null )
             * {
             *  m_contexteDonnees.Dispose();
             *  m_contexteDonnees = null;
             * }*/
            CTimosServeur timosServeur = CTimosServeur.GetInstance();

            if (timosServeur.LicenceLogiciel != null)
            {
                if (UserProfil != null)
                {
                    timosServeur.LicenceLogiciel.FreeProfil(UserProfil);
                }
                UserProfil = null;
                if (UserLicence != null)
                {
                    timosServeur.LicenceLogiciel.FreeLicence(UserLicence);
                }
                m_userLicence = null;
            }
        }
Пример #4
0
 public CInfoSessionTimos(
     CDonneesActeurUtilisateur donneesUtilisateur,
     CUserLicencePrtct userLicence,
     CUserProfilPrtct userProfil)
 {
     m_donneesUtilisateur = donneesUtilisateur;
     m_userLicence        = userLicence;
     m_userProfil         = userProfil;
 }
Пример #5
0
        //-------------------------------------------------------------------------------------------------
        public CResultAErreur GetUserLicence(CParametresLicence parametre)
        {
            CResultAErreur result = CResultAErreur.True;

            if (TimosServeur.LicenceLogiciel.UserLicences.Count == 0)
            {
                result.EmpileErreur(I.T("No license for user|2"));
                return(result);
            }

            int i = 0;

            string[] gr = new string[parametre.GroupeID.Length];
            foreach (int id in parametre.GroupeID)
            {
                gr.SetValue(id.ToString(), i);
                i++;
            }
            CUserLicencePrtct licence = TimosServeur.LicenceLogiciel.GetLicence(parametre.MACs.ToArray(), parametre.UserID, gr, parametre.IDsSupports.ToArray());

            if (licence == null)
            {
                //Tente de récuperer des licences perdues
                RecalculeAffectationLicencesEtProfils();
                licence = TimosServeur.LicenceLogiciel.GetLicence(parametre.MACs.ToArray(), parametre.UserID, gr, parametre.IDsSupports.ToArray());
            }
            if (licence == null)
            {
                result.EmpileErreur(I.T("No license for user|2"));
            }
            else
            {
                result.Data = licence;
            }

            return(result);
        }
Пример #6
0
 public CInfoSession(CDonneesActeurUtilisateur acteurUtilisateur, CUserLicencePrtct userLicence)
 {
     ActeurUtilisateur = acteurUtilisateur;
     UserLicence       = userLicence;
 }