summaryrefslogtreecommitdiffstats
path: root/samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2013-03-01 21:26:10 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2013-03-01 21:26:10 -0800
commit74b6b4efd2be2680e3067f716829b0c9385ceebe (patch)
tree5f241db63080c6547d9cc635b0bf36dd587b5354 /samples/OAuth2ProtectedWebApi/Code/HttpHeaderAttribute.cs
parent798fa1c5f55058eb241f257d15e2dd630eb3d4fd (diff)
downloadDotNetOpenAuth-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.cs41
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