public CookiePolicyMiddleware(
     RequestDelegate next,
     CookiePolicyOptions options)
 {
     Options = options;
     _next = next;
 }
 /// <summary>
 /// Adds a cookie policy middleware to your web application pipeline.
 /// </summary>
 /// <param name="app">The IApplicationBuilder passed to your configuration method</param>
 /// <param name="configureOptions">Used to configure the options for the middleware</param>
 /// <returns>The original app parameter</returns>
 public static IApplicationBuilder UseCookiePolicy(this IApplicationBuilder app, Action<CookiePolicyOptions> configureOptions)
 {
     var options = new CookiePolicyOptions();
     if (configureOptions != null)
     {
         configureOptions(options);
     }
     return app.UseCookiePolicy(options);
 }
 public CookiesWrapper(HttpContext context, CookiePolicyOptions options, IResponseCookiesFeature feature)
 {
     Context = context;
     Feature = feature;
     Policy = options;
 }
 public CookiesWrapperFeature(HttpContext context, CookiePolicyOptions options, IResponseCookiesFeature feature)
 {
     Wrapper = new CookiesWrapper(context, options, feature);
 }
 /// <summary>
 /// Adds a cookie policy middleware to your web application pipeline.
 /// </summary>
 /// <param name="app">The IApplicationBuilder passed to your configuration method</param>
 /// <param name="options">The options for the middleware</param>
 /// <returns>The original app parameter</returns>
 public static IApplicationBuilder UseCookiePolicy(this IApplicationBuilder app, CookiePolicyOptions options)
 {
     return app.UseMiddleware<CookiePolicyMiddleware>(options);
 }