Example #1
0
        private uint LoadPackage(string Filename)
        {
            string PackagePath = Path.GetDirectoryName(Filename);

            ConfigFile PackageConfig = m_ConfigEngine.LoadFile(Filename);

            ConfigElement[] PackageElements = PackageConfig["package"];

            Console.WriteLine("  [{0}] : {1}", PackageElements[0].GetString("id"), PackageElements[0].GetString("name"));
            Console.WriteLine("  - Path: {0}", PackagePath);
            Console.WriteLine();

            ConfigElement[] FileGroups = PackageElements[0].GetSubElements("files");
            if (FileGroups.Length > 0)
            {
                ConfigElement[] PackageFiles = FileGroups[0].GetSubElements("file");
                foreach (ConfigElement PackageFile in PackageFiles)
                {
                    string PackageFilename = PackageFile.GetString("file_Column");
                    string PackageFilePath = Path.Combine(PackagePath, PackageFilename);

                    if (!m_Filenames.Contains(PackageFilePath))
                    {
                        m_Filenames.Add(PackageFilePath);
                    }
                    else
                    {
                        Console.WriteLine("   Note: File \"{0}\" has already been declared in a previous package.", PackageFilePath);
                    }
                }

                return((uint)PackageFiles.Length);
            }

            return(0);
        }