/// <summary> /// Add a <see cref="NamespaceSecurable"/> to the <see cref="CommandSecurityTarget"/> for a given namespace. /// </summary> /// <param name="target"><see cref="CommandSecurityTarget"/> to add to.</param> /// <param name="namespace">Namespace to secure.</param> /// <param name="continueWith">Callback for continuing the fluent interface.</param> /// <returns><see cref="NamespaceSecurable"/> for the specific namespace.</returns> public static CommandSecurityTarget InNamespace(this CommandSecurityTarget target, string @namespace, Action <NamespaceSecurable> continueWith) { var securable = new NamespaceSecurable(@namespace); target.AddSecurable(securable); continueWith(securable); return(target); }
/// <summary> /// Add a <see cref="TypeSecurable"/> to the <see cref="CommandSecurityTarget"/> for a given type /// </summary> /// <typeparam name="T">Type of <see cref="CommandRequest"/> to secure</typeparam> /// <param name="target"><see cref="CommandSecurityTarget"/> to add to</param> /// <param name="continueWith">Callback for continuing the fluent interface</param> /// <returns><see cref="TypeSecurable"/> for the specific type</returns> public static CommandSecurityTarget InstanceOf <T>(this CommandSecurityTarget target, Action <TypeSecurable> continueWith) where T : CommandRequest { var securable = new TypeSecurable(typeof(T)); target.AddSecurable(securable); continueWith(securable); return(target); }