示例#1
0
 /// <summary>
 /// Transmet le nom de la machine
 /// </summary>
 /// <param name="parametres">Non utilisé</param>
 /// <returns>{ CJS.PARAM__NOM_MACHINE : nom de la machine }</returns>
 public WebReponse getNomMachine(Dictionary <string, string> parametres)
 {
     return(WebReponse.OnePropJson(CJS.PARAM__NOM_MACHINE, System.Net.Dns.GetHostEntry("").HostName.Split('.')[0]));
 }
示例#2
0
        /// <summary>
        /// Renvoie les sous dossiers et/ou fichiers d'un dossier
        /// </summary>
        /// <param name="parametres"> - CJS.PARAM__DOSSIER : dossier à parcourir ("" si racine)
        ///  - CJS.PARAM__FICHIERS_SEUL : renvoie uniquement les fichiers si défini
        ///  - CJS.PARAM__DOSSIERS_SEUL : renvoie uniquement les dossiers si défini.</param>
        /// <returns></returns>
        public WebReponse getDossiers(Dictionary <string, string> parametres)
        {
            string[]    fichiers;
            DriveInfo[] listeDisques;

            var donnees = new List <Fichier>();

            if (parametres.ContainsKey(CJS.PARAM__DOSSIER))
            {
                // Retourne la liste des disques
                if (parametres[CJS.PARAM__DOSSIER].Trim() == "" && !C.IS_LINUX)
                {
                    listeDisques = DriveInfo.GetDrives();
                    foreach (DriveInfo disque in listeDisques)
                    {
                        if (disque.DriveType == DriveType.Fixed || disque.DriveType == DriveType.Network)
                        {
                            donnees.Add(new Fichier(disque.Name, disque.VolumeLabel));
                        }
                    }
                    return(new WebReponse(Mime.json, JsonConvert.SerializeObject(donnees)));

                    // retourne la liste des sous-dossiers / fichiers
                }
                else
                {
                    if (parametres [CJS.PARAM__DOSSIER].Trim() == "" && C.IS_LINUX)
                    {
                        parametres [CJS.PARAM__DOSSIER] = "/";
                    }

                    parametres[CJS.PARAM__DOSSIER] = parametres[CJS.PARAM__DOSSIER].WithEndingSlash();

                    if (Directory.Exists(parametres[CJS.PARAM__DOSSIER]))
                    {
                        try {
                            if (!parametres.ContainsKey(CJS.PARAM__FICHIERS_SEUL))
                            {
                                fichiers = Directory.GetDirectories(parametres[CJS.PARAM__DOSSIER]);
                                for (var i = 0; i < fichiers.Length; i++)
                                {
                                    if (!U.IsSystem(fichiers[i]))
                                    {
                                        donnees.Add(new Fichier(fichiers[i]));
                                    }
                                }
                            }

                            if (!parametres.ContainsKey(CJS.PARAM__DOSSIERS_SEUL))
                            {
                                fichiers = Directory.GetFiles(parametres[CJS.PARAM__DOSSIER]);
                                for (var i = 0; i < fichiers.Length; i++)
                                {
                                    if (!U.IsSystem(fichiers[i]))
                                    {
                                        donnees.Add(new Fichier(fichiers[i]));
                                    }
                                }
                            }
                        }
                        catch (Exception e)     {
                            return(WebReponse.OnePropJson(CJS.PARAM__ERREUR, e.Message.Replace(@"\", @"\\")));
                        }

                        return(new WebReponse(JsonConvert.SerializeObject(donnees)));
                    }
                    else
                    {
                        return(WebReponse.OnePropJson(CJS.PARAM__ERREUR, "Le disque " + parametres[CJS.PARAM__DOSSIER] + " n'existe pas"));
                    }
                }
            }
            else
            {
                return(_reponseErreurParams);
            }
        }