Item Attributes
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace FileTime.Providers.Local
|
||||
{
|
||||
partial class LocalContentProvider
|
||||
{
|
||||
private static string GetDirectoryAttributes(DirectoryInfo directoryInfo)
|
||||
{
|
||||
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "d"
|
||||
+ ((directoryInfo.Attributes & FileAttributes.Archive) == FileAttributes.Archive ? "a" : "-")
|
||||
+ ((directoryInfo.Attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly ? "r" : "-")
|
||||
+ ((directoryInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden ? "h" : "-")
|
||||
+ ((directoryInfo.Attributes & FileAttributes.System) == FileAttributes.System ? "s" : "-");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace FileTime.Providers.Local
|
||||
{
|
||||
partial class LocalContentProvider
|
||||
{
|
||||
private static string GetFileAttributes(FileInfo fileInfo)
|
||||
{
|
||||
if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
|
||||
{
|
||||
return "";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "-"
|
||||
+ ((fileInfo.Attributes & FileAttributes.Archive) == FileAttributes.Archive ? "a" : "-")
|
||||
+ ((fileInfo.Attributes & FileAttributes.ReadOnly) == FileAttributes.ReadOnly ? "r" : "-")
|
||||
+ ((fileInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden ? "h" : "-")
|
||||
+ ((fileInfo.Attributes & FileAttributes.System) == FileAttributes.System ? "s" : "-");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,7 +5,7 @@ using FileTime.Core.Services;
|
||||
|
||||
namespace FileTime.Providers.Local
|
||||
{
|
||||
public class LocalContentProvider : ContentProviderBase, ILocalContentProvider
|
||||
public partial class LocalContentProvider : ContentProviderBase, ILocalContentProvider
|
||||
{
|
||||
protected bool IsCaseInsensitive { get; init; }
|
||||
public LocalContentProvider() : base("local")
|
||||
@@ -73,8 +73,10 @@ namespace FileTime.Providers.Local
|
||||
fullName.GetParent()!,
|
||||
(directoryInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden,
|
||||
directoryInfo.Exists,
|
||||
directoryInfo.CreationTime,
|
||||
SupportsDelete.True,
|
||||
true,
|
||||
GetDirectoryAttributes(directoryInfo),
|
||||
this,
|
||||
GetItemsByContainer(directoryInfo)
|
||||
);
|
||||
@@ -91,8 +93,10 @@ namespace FileTime.Providers.Local
|
||||
fullName.GetParent()!,
|
||||
(fileInfo.Attributes & FileAttributes.Hidden) == FileAttributes.Hidden,
|
||||
fileInfo.Exists,
|
||||
fileInfo.CreationTime,
|
||||
SupportsDelete.True,
|
||||
true,
|
||||
GetFileAttributes(fileInfo),
|
||||
this
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user