CSharpUtils.VirtualFileSystem.Ssh.SftpFileSystem.ImplFindFiles C# (CSharp) Метод

ImplFindFiles() защищенный Метод

protected ImplFindFiles ( String Path ) : IEnumerable
Path String
Результат IEnumerable
		protected override IEnumerable<FileSystemEntry> ImplFindFiles(String Path)
		{
			foreach (var i in csftp.ListEntries(RealPath(Path)))
			{
				var LsEntry = (Tamir.SharpSsh.jsch.ChannelSftp.LsEntry)i;
				var FileSystemEntry = new FileSystemEntry(this, Path + "/" + LsEntry.FileName);
				FileSystemEntry.Size = LsEntry.Attributes.Size;
				FileSystemEntry.GroupId = LsEntry.Attributes.getGId();
				FileSystemEntry.UserId = LsEntry.Attributes.getUId();
				if (LsEntry.Attributes.IsDirectory) {
					FileSystemEntry.Type = VirtualFileSystem.FileSystemEntry.EntryType.Directory;
				} else if (LsEntry.Attributes.IsLink) {
					FileSystemEntry.Type = VirtualFileSystem.FileSystemEntry.EntryType.Link;
				} else {
					FileSystemEntry.Type = VirtualFileSystem.FileSystemEntry.EntryType.File;
				}
				FileSystemEntry.Time.CreationTime = LsEntry.Attributes.getMTime();
				FileSystemEntry.Time.LastWriteTime = LsEntry.Attributes.getMTime();
				FileSystemEntry.Time.LastAccessTime = LsEntry.Attributes.getATime();
				//Console.WriteLine("FILE(" + LsEntry.getFilename() + ") : (" + LsEntry.getAttrs().getPermissions() + ") (" + String.Join(",", LsEntry.getAttrs().getExtended()) + ")");
				//Console.WriteLine(String.Format("FILE({}) : ({})", LsEntry.getFilename(), Convert.ToString(LsEntry.getAttrs().getPermissions(), 2)));
				//Console.WriteLine("FILE(" + LsEntry.getFilename() + ") : (" + Convert.ToString(LsEntry.getAttrs().getPermissions(), 2) + ")");

				// Version 3 supported.
				// http://tools.ietf.org/wg/secsh/draft-ietf-secsh-filexfer/
				if (FileSystemEntry.Name.Substring(0, 1) == ".")
				{
					FileSystemEntry.ExtendedFlags |= VirtualFileSystem.FileSystemEntry.ExtendedFlagsTypes.Hidden;
				}
				yield return FileSystemEntry;
			}
		}