CSharpUtils.VirtualFileSystem.FileSystem.Access C# (CSharp) Метод

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

protected Access ( String Path, FileSystem &NewFileSystem, String &NewPath ) : void
Path String
NewFileSystem FileSystem
NewPath String
Результат void
		virtual protected void Access(String Path, out FileSystem NewFileSystem, out String NewPath)
		{
			// Normalize Components
			Path = AbsoluteNormalizePath(Path, CurrentWorkingPath);
			var ComparePath = ComparablePath(Path);

			// Check MountedFileSystems.
			foreach (var Item in MountedFileSystems)
			{
				var CheckMountedPath = ComparablePath(Item.Key);
				var MountInfo = Item.Value;

				if (
					ComparePath.StartsWith(CheckMountedPath) &&
					(
						(CheckMountedPath.Length == ComparePath.Length) ||
						(ComparePath.Substring(CheckMountedPath.Length, 1) == "/")
					)
				) {
					var NewAccessPath = ComparePath.Substring(CheckMountedPath.Length);
					if (MountInfo.Path != "/")
					{
						NewAccessPath = MountInfo.Path + "/" + NewAccessPath;
					}
					// Use Mounted File System.
					MountInfo.FileSystem.Access(NewAccessPath, out NewFileSystem, out NewPath);
					return;
				}
			}
			NewFileSystem = this;
			NewPath = Path;
		}