removes an ambiguity relative to api

This commit is contained in:
Paul Schneider 2016-11-14 14:09:24 +01:00
commit 8255b02b98

View file

@ -8,6 +8,7 @@ namespace Yavsc.ViewModels.UserFiles
{ {
public class UserDirectoryInfo public class UserDirectoryInfo
{ {
public string UserName { get; private set; }
public string SubPath { get; private set; } public string SubPath { get; private set; }
public UserFileInfo [] Files { public UserFileInfo [] Files {
get; private set; get; private set;
@ -18,13 +19,14 @@ namespace Yavsc.ViewModels.UserFiles
private DirectoryInfo dInfo; private DirectoryInfo dInfo;
public UserDirectoryInfo(string username, string path) public UserDirectoryInfo(string username, string path)
{ {
SubPath = (path==null) ? username : username + Path.DirectorySeparatorChar + path; UserName = username;
if ( !SubPath.IsValidPath() ) var finalPath = (path==null) ? username : username + Path.DirectorySeparatorChar + path;
if ( !finalPath.IsValidPath() )
throw new InvalidOperationException( throw new InvalidOperationException(
$"File name contains invalid chars, using path {SubPath}"); $"File name contains invalid chars, using path {SubPath}");
dInfo = new DirectoryInfo( dInfo = new DirectoryInfo(
Path.Combine(Startup.UserFilesDirName,SubPath)); Path.Combine(Startup.UserFilesDirName,finalPath));
Files = dInfo.GetFiles().Select Files = dInfo.GetFiles().Select
( entry => new UserFileInfo { Name = entry.Name, Size = entry.Length, ( entry => new UserFileInfo { Name = entry.Name, Size = entry.Length,
CreationTime = entry.CreationTime, LastModified = entry.LastWriteTime }).ToArray(); CreationTime = entry.CreationTime, LastModified = entry.LastWriteTime }).ToArray();