Example #1
0
        internal static void recurseResources(List <FileResource> resources, DirectoryObj DirObj, String Host)
        {
            foreach (var d in DirObj.DirectoryInfo.GetDirectories())
            {
                recurseResources(resources, new DirectoryObj()
                {
                    Root = DirObj.Root, DirectoryInfo = d
                }, Host);
            }

            foreach (var f in DirObj.DirectoryInfo.GetFiles())
            {
                int    version = 0;
                string name;
                var    regobj      = Regex.Match(f.FullName, @"(\.\d{1,3})?(\.[a-zA-Z]{1,4})$");
                var    newresource = new FileResource();

                // Version + File Extension Match
                if (regobj.Groups[1].Success && regobj.Groups[2].Success)
                {
                    int.TryParse(regobj.Groups[1].Value.Substring(1), out version);
                    newresource.Version = version;
                    // strip version from fullname
                    name = String.Format("{0}{1}", f.FullName.Substring(0, regobj.Groups[1].Index), f.Extension);
                }
                else
                {
                    name = f.FullName;
                }

                resources.Add(new FileResource()
                {
                    RelativeName = Paths.BeginWhack(f.FullName.Substring(DirObj.Root.Length).ToLower().Replace("\\", "/")),
                    Name         = name,
                    Host         = Host,
                    Extension    = Path.GetExtension(f.FullName.ToLower()),
                    Version      = version
                });
            }
        }
Example #2
0
        internal static void recurseResources(List<FileResource> resources, DirectoryObj Dir)
        {
            foreach (var d in Dir.DirectoryInfo.GetDirectories())
                recurseResources(resources, new DirectoryObj() { Root = Dir.Root, DirectoryInfo = d } );

            foreach (var f in Dir.DirectoryInfo.GetFiles())
            {
                resources.Add(new FileResource()
                {
                    FullName = f.FullName.Substring(Dir.Root.Length).ToLower().Replace("\\", "/"),
                    Name = Path.GetFileName(f.FullName.Substring(Dir.Root.Length).ToLower()),
                    Extension = Path.GetExtension(f.FullName.ToLower())
                });
            }
        }