public AbstractPermission addPermission(string duz, AbstractPermission p)
{
if (p.Type == PermissionType.MenuOption)
{
p.RecordId = addMenuOption(duz, p);
return p;
}
if (p.Type == PermissionType.DelegatedOption)
{
p.RecordId = addDelegatedOption(duz, p);
return p;
}
if (p.Type == PermissionType.SecurityKey)
{
return addSecurityKey(duz, p);
}
throw new ArgumentException("Invalide permission type");
}