private UriString UpdatePath(UriString uri) { var expandedPath = Environment.ExpandEnvironmentVariables(uri.Path.Decoded.ToString()); var normalizedPath = UriStringHelper.Normalize(expandedPath); uri = uri.With(x => x.Path, new UriStringComponent(normalizedPath)); if (!uri.Scheme && Path.IsPathRooted(uri.Path.Decoded.ToString())) { uri = uri.With(x => x.Scheme, "file"); } return(uri); }
public static Task <IResourceInfo> GetAnyAsync(this IResourceProvider resourceProvider, UriString uri, IImmutableSession metadata = default) { return(resourceProvider.GetAsync(uri.With(x => x.Scheme, ResourceProvider.DefaultScheme), metadata)); }