diff options
| author | Jake Mannens <jake@asger.xyz> | 2023-09-29 16:20:23 +1000 |
|---|---|---|
| committer | Jake Mannens <jake@asger.xyz> | 2023-09-29 16:28:00 +1000 |
| commit | c5ff0b57a12b605a5ae5ae8a92ce7a4e8eaec77a (patch) | |
| tree | a59c3ef10b277a7733a274f107472dc8f00cfc9a /LocalPrincipal.cs | |
| parent | 76e4bf609c3d196bd20619188a317fca66f4a04a (diff) | |
Separated HBPrincipal into IPrincipal and LocalPrincipal
Diffstat (limited to 'LocalPrincipal.cs')
| -rw-r--r-- | LocalPrincipal.cs | 48 |
1 files changed, 8 insertions, 40 deletions
diff --git a/LocalPrincipal.cs b/LocalPrincipal.cs index 28a2721..36428ef 100644 --- a/LocalPrincipal.cs +++ b/LocalPrincipal.cs @@ -1,49 +1,17 @@ -namespace HyperBooru; +using Microsoft.EntityFrameworkCore; -public class LocalPrincipal : HBObject { +namespace HyperBooru; + +[Index(nameof(Name))] +[Index(nameof(Sid))] +public class LocalPrincipal : IPrincipal { public string Name { get; set; } public SecurityIdentifier Sid { get; set; } public List<LocalGroup> MemberOf { get; set; } - - public static implicit operator Principal(LocalPrincipal principal) => - new() { - Name = principal.Name, - Sid = principal.Sid, - }; - - public static implicit operator LocalPrincipal(Principal principal) => - new() { - Name = principal.Name, - Sid = principal.Sid - }; } -public class LocalUser : LocalPrincipal { +public class LocalUser : LocalPrincipal, IUser { public string PasswordHash { get; set; } - - public static implicit operator User(LocalUser user) => - new() { - Name = user.Name, - Sid = user.Sid, - }; - - public static implicit operator LocalUser(User user) => - new() { - Name = user.Name, - Sid = user.Sid - }; } -public class LocalGroup : LocalPrincipal { - public static implicit operator Group(LocalGroup group) => - new() { - Name = group.Name, - Sid = group.Sid, - }; - - public static implicit operator LocalGroup(Group group) => - new() { - Name = group.Name, - Sid = group.Sid - }; -} +public class LocalGroup : LocalPrincipal, IGroup {} |
