|
- using Alphaleonis.Win32.Filesystem;
- using System.Security.AccessControl;
-
- namespace Security2
- {
- public partial class FileSystemAuditRule2
- {
- #region Properties
- private FileSystemAuditRule fileSystemAuditRule;
- private string fullName;
- private bool inheritanceEnabled;
- private string inheritedFrom;
-
- public string Name { get { return System.IO.Path.GetFileName(fullName); } }
- public string FullName { get { return fullName; } set { fullName = value; } }
- public bool InheritanceEnabled { get { return inheritanceEnabled; } set { inheritanceEnabled = value; } }
- public string InheritedFrom { get { return inheritedFrom; } set { inheritedFrom = value; } }
- public AuditFlags AuditFlags { get { return fileSystemAuditRule.AuditFlags; } }
- public FileSystemRights2 AccessRights { get { return (FileSystemRights2)fileSystemAuditRule.FileSystemRights; } }
- public IdentityReference2 Account { get { return (IdentityReference2)fileSystemAuditRule.IdentityReference; } }
- public InheritanceFlags InheritanceFlags { get { return fileSystemAuditRule.InheritanceFlags; } }
- public bool IsInherited { get { return fileSystemAuditRule.IsInherited; } }
- public PropagationFlags PropagationFlags { get { return fileSystemAuditRule.PropagationFlags; } }
- #endregion
-
- public FileSystemAuditRule2(FileSystemAuditRule fileSystemAuditRule)
- {
- this.fileSystemAuditRule = fileSystemAuditRule;
- }
-
- public FileSystemAuditRule2(FileSystemAuditRule fileSystemAuditRule, FileSystemInfo item)
- {
- this.fileSystemAuditRule = fileSystemAuditRule;
- this.fullName = item.FullName;
- }
-
- public FileSystemAuditRule2(FileSystemAuditRule fileSystemAuditRule, string path)
- {
- this.fileSystemAuditRule = fileSystemAuditRule;
- }
-
- #region Conversion
- public static implicit operator FileSystemAuditRule(FileSystemAuditRule2 ace2)
- {
- return ace2.fileSystemAuditRule;
- }
- public static implicit operator FileSystemAuditRule2(FileSystemAuditRule ace)
- {
- return new FileSystemAuditRule2(ace);
- }
- //REQUIRED BECAUSE OF CONVERSION OPERATORS
- public override bool Equals(object obj)
- {
- return this.fileSystemAuditRule == (FileSystemAuditRule)obj;
- }
- public override int GetHashCode()
- {
- return this.fileSystemAuditRule.GetHashCode();
- }
- public override string ToString()
- {
- return fileSystemAuditRule.ToString();
- }
- public SimpleFileSystemAuditRule ToSimpleFileSystemAuditRule2()
- {
- return new SimpleFileSystemAuditRule(this.fullName, this.Account, this.AccessRights);
- }
- #endregion
- }
- }
|