diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-01 21:26:10 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2013-03-01 21:26:10 -0800 |
commit | 74b6b4efd2be2680e3067f716829b0c9385ceebe (patch) | |
tree | 5f241db63080c6547d9cc635b0bf36dd587b5354 /samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs | |
parent | 798fa1c5f55058eb241f257d15e2dd630eb3d4fd (diff) | |
download | DotNetOpenAuth-74b6b4efd2be2680e3067f716829b0c9385ceebe.zip DotNetOpenAuth-74b6b4efd2be2680e3067f716829b0c9385ceebe.tar.gz DotNetOpenAuth-74b6b4efd2be2680e3067f716829b0c9385ceebe.tar.bz2 |
Adds a WebAPI sample that is its own authorization server and resource server.
Diffstat (limited to 'samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs')
-rw-r--r-- | samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs b/samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs new file mode 100644 index 0000000..3bff848 --- /dev/null +++ b/samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs @@ -0,0 +1,41 @@ +namespace OAuth2ProtectedWebApi.Code { + using System; + using System.Collections.Generic; + using System.Linq; + using System.Web; + using System.Web.Mvc; + + /// <summary> + /// Represents an attribute that is used to add HTTP Headers to a Controller Action response. + /// </summary> + public class HttpHeaderAttribute : ActionFilterAttribute { + /// <summary> + /// Initializes a new instance of the <see cref="HttpHeaderAttribute"/> class. + /// </summary> + /// <param name="name">The HTTP header name.</param> + /// <param name="value">The HTTP header value.</param> + public HttpHeaderAttribute(string name, string value) { + this.Name = name; + this.Value = value; + } + + /// <summary> + /// Gets or sets the name of the HTTP Header. + /// </summary> + public string Name { get; set; } + + /// <summary> + /// Gets or sets the value of the HTTP Header. + /// </summary> + public string Value { get; set; } + + /// <summary> + /// Called by the MVC framework after the action result executes. + /// </summary> + /// <param name="filterContext">The filter context.</param> + public override void OnResultExecuted(ResultExecutedContext filterContext) { + filterContext.HttpContext.Response.AppendHeader(this.Name, this.Value); + base.OnResultExecuted(filterContext); + } + } +}
\ No newline at end of file |