//---------------------------------------------------------- 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); }
//------------------------------------------------------------------- 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; } }
public CInfoSessionTimos( CDonneesActeurUtilisateur donneesUtilisateur, CUserLicencePrtct userLicence, CUserProfilPrtct userProfil) { m_donneesUtilisateur = donneesUtilisateur; m_userLicence = userLicence; m_userProfil = userProfil; }
//------------------------------------------------------------------------------------------------- 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); }
public CInfoSession(CDonneesActeurUtilisateur acteurUtilisateur, CUserLicencePrtct userLicence) { ActeurUtilisateur = acteurUtilisateur; UserLicence = userLicence; }