Пример #1
0
        /// <summary>
        /// Implementation of the ZephyrDirectory GetDirectories method using Windows FileSystem.
        /// </summary>
        /// <returns>An enumeration of WindowsZephyrFile objects.</returns>
        public override IEnumerable <ZephyrFile> GetFiles()
        {
            String[]          files    = Directory.GetFiles(FullName);
            List <ZephyrFile> synFiles = new List <ZephyrFile>();

            foreach (string file in files)
            {
                ZephyrFile synFile = new WindowsZephyrFile(Path.Combine(FullName, file));
                synFiles.Add(synFile);
            }

            return(synFiles);
        }
Пример #2
0
        /// <summary>
        /// Gets a ZephyrFile implementation matching the URL type passed in.
        /// </summary>
        /// <param name="url">The Fullname or URL of the file.</param>
        /// <param name="clients">A collection of connection clients.</param>
        /// <returns>A ZephyrFile implementation.</returns>
        public static ZephyrFile GetZephyrFile(string url, Clients clients = null)
        {
            ZephyrFile file = null;
            UrlType    type = GetUrlType(url);

            switch (type)
            {
            case UrlType.LocalFile:
                file = new WindowsZephyrFile(url);
                break;

            case UrlType.NetworkFile:
                file = new WindowsZephyrFile(url);
                break;

            case UrlType.AwsS3File:
                file = new AwsS3ZephyrFile(clients?.aws, url);
                break;
            }

            return(file);
        }