<PackageReference Include="Relativity.Transfer.Client" Version="7.0.11" />

DriveNodeResolverHelper

using Relativity.DataTransfer.Nodes.Internal.Helpers; using System; using System.Text; namespace Relativity.DataTransfer.Nodes.Internal.Utilities { internal class DriveNodeResolverHelper { public static IDrive Resolve(string path, INodeContext context, StringBuilder stringBuilder) { if (context.Equals(NullNodeContext.Instance)) { string rootName = GetRootName(stringBuilder); if (!IsUncPath(path)) return new LocalDrive($"{rootName}{PathConstants.DirectorySeparatorAsChar}"); return new UncDrive(PathConstants.UncPathShortPrefix + rootName); } return new RemoteDrive(context); } private static string GetRootName(StringBuilder stringBuilder) { return stringBuilder.CutOffBy(PathConstants.DirectorySeparatorAsChar); } private static bool IsUncPath(string path) { return path.StartsWith(PathConstants.UncPathShortPrefix, StringComparison.Ordinal); } } }