Exemplo n.º 1
0
        //Méthodes

        //-----------------------------------------------------------------------
        // Alimentation des select Serveur / Flux / Application
        //-----------------------------------------------------------------------
        public void PopulateList(IDal dal, bool keepDesktop = false)
        {
            //Recherche dans le cache la liste des serveurs définit en bdd
            string listName = "serveurBddList";
            List <Models.Serveur> _serveursBdd = (List <Models.Serveur>)Common.GetObjectInCache(listName);

            //List<Models.Serveur> _serveurs = (List<Models.Serveur>)Common.GetObjectInCache(listName);
            //Si la liste des serveurs définit en bdd n'existe pas dans le cache, on la recherche en base et on sauvegarde
            if (_serveursBdd == null)
            {
                _serveursBdd = dal.ObtenirListeServeurs();
                //Sauvegarde en cache des serveurs défini en Bdd
                Common.SetObjectInCache(listName, _serveursBdd);
            }
            //Initialise la liste de serveur avec celle de bdd
            List <Models.Serveur> _serveurs = new List <Models.Serveur>(_serveursBdd);

            ///Si le serveur desktop ne doit pas etre dans la liste, on s'assure de sa suppression
            if (!keepDesktop)
            {
                _serveurs.RemoveAll(isDesktop);
            }

            //Si le serveur desktop doit etre dans la liste, on l'ajoute
            //if ( keepDesktop && _serveurs.Where(s => s.Url == ConfigurationManager.AppSettings["Localhost"]).Count() < 1)
            if (keepDesktop && _serveurs.Where(s => s.Url == qpmConfig.Global.Environnements["Localhost"]).Count() < 1)
            {
                //Models.Serveur serveurLocalhost = new Models.Serveur { Id = "3", Nom = Common.GetHostName(), Url = ConfigurationManager.AppSettings["Localhost"], Description = "Desktop" };
                Models.Serveur serveurLocalhost = new Models.Serveur {
                    Id = "3", Nom = Common.GetHostName(), Url = qpmConfig.Global.Environnements["Localhost"], Description = "Desktop"
                };
                _serveurs.Add(serveurLocalhost);
            }

            //Liste finale des serveurs
            _Serveur = Common.ToSelectListItem(_serveurs);

            //Liste flux et application
            if (QEngineConnexion != null)
            {
                //Recherche liste des Stream par application
                //Collection renvoyées (clé soit Id, soit Name et value = objet issu du JSON)
                QEngineConnexion.InitListeApplication(qpmConfig.Global.Repertoires["ImportDirectory"]);
                ServeurInfos = QEngineConnexion.GetHtmlServeurInfos();
            }

            //Liste Streams
            _Flux = Common.ToSelectListItem(QEngineConnexion);
            //Liste applications
            _Application = Common.ToSelectListItem(QEngineConnexion, Flux);

            //Ajout des info bulle sur la coche
            if (QEngineConnexion != null && !string.IsNullOrEmpty(Flux))
            {
                string fluxName = _Flux.Where(x => x.Value == Flux).DefaultIfEmpty(new SelectListItem()
                {
                }).First().Text;
                FluxInfos         = QEngineConnexion.GetHtmlFluxInfos(fluxName);
                ApplicationsInfos = QEngineConnexion.GetHtmlApplicationsInfos(fluxName);
            }
        }
Exemplo n.º 2
0
 private bool isDesktop(Models.Serveur item)
 {
     //return (item.Url == ConfigurationManager.AppSettings["Localhost"]);
     return(item.Url == qpmConfig.Global.Environnements["Localhost"]);
 }