public ICollection <Guid> CascadeRemoveShopOwner(Guid userGuid, Guid ownerToRemoveGuid) { var removedOwners = new HashSet <Guid>(); removedOwners.Add(ownerToRemoveGuid); foreach (var owner in Owners.ToList()) { if (owner.AppointerGuid.Equals(ownerToRemoveGuid)) { removedOwners.Add(owner.OwnerGuid); var cascadeRemovedOwners = CascadeRemoveShopOwner(ownerToRemoveGuid, owner.OwnerGuid); foreach (var cascRemovedOwner in cascadeRemovedOwners) { removedOwners.Add(cascRemovedOwner); } } } Owners.Remove(Owners.FirstOrDefault(o => o.OwnerGuid.Equals(ownerToRemoveGuid))); return(removedOwners); }
public TrustedSignerAllowListEntry ToAllowListEntry() { return(new TrustedSignerAllowListEntry(Target, Placement, Certificate.Fingerprint, Certificate.HashAlgorithm, Certificate.AllowUntrustedRoot, Owners?.ToList())); }