protected internal SecurableResourceInfo(Url url) { if (url == null) { throw new ArgumentNullException("url"); } Url = url; SecurityRequirements = new ResourceSecurityInfo(); }
/// <summary>Merges specifications overriding settings with those taken from <paramref name="specificSecurityInfo"/>.</summary> /// <param name="specificSecurityInfo">The specific security information to merge with.</param> /// <returns>Merged specifications.</returns> public ResourceSecurityInfo OverrideWith(ResourceSecurityInfo specificSecurityInfo) { if (specificSecurityInfo == null) { throw new ArgumentNullException("specificSecurityInfo"); } var result = Clone(); result.Merge(specificSecurityInfo.Allowed, securitySpecification => securitySpecification.Allow(null, null)); result.Merge(specificSecurityInfo.Denied, securitySpecification => securitySpecification.Deny(null, null)); return(result); }
/// <summary>Merges specifications overriding settings with those taken from <paramref name="specificSecurityInfo"/>.</summary> /// <param name="specificSecurityInfo">The specific security information to merge with.</param> /// <returns>Merged specifications.</returns> public ResourceSecurityInfo OverrideWith(ResourceSecurityInfo specificSecurityInfo) { if (specificSecurityInfo == null) { throw new ArgumentNullException("specificSecurityInfo"); } var result = Clone(); result.Merge(specificSecurityInfo.Allowed, securitySpecification => securitySpecification.Allow(null, null)); result.Merge(specificSecurityInfo.Denied, securitySpecification => securitySpecification.Deny(null, null)); return result; }