/// <summary>
        /// Initializes the instance.
        /// </summary>
        /// <param name="context"></param>
        public void Init(HttpApplication context)
        {
            lock (rootSyncRoot)
            {
                // only enable if Autofac.Web is configured
                if (context is IContainerProviderAccessor accessor)
                {
                    // connect the app domain proxy to the root container
                    var container = GetAutofacApplicationContext(context);
                    var rootProxy = new ComponentContextProxy(() => container);

                    // store reference to this application in the default app domain
                    var appDomainKey = $"{ComponentContextUtil.AppDomainItemPrefix}{HostingEnvironment.ApplicationID}";
                    new mscoree.CorRuntimeHost().GetDefaultDomain(out var adv);
                    if (adv is AppDomain ad && ad.IsDefaultAppDomain() && ad.GetData(appDomainKey) == null)
                    {
                        ad.SetData(appDomainKey, Marshal.GetIUnknownForObject(rootProxy));
                    }
                }
            }

            // register request events for context
            context.AddOnBeginRequestAsync(BeginOnBeginRequestAsync, EndOnBeginRequestAsync);
            context.AddOnEndRequestAsync(BeginOnEndRequestAsync, EndOnEndRequestAsync);
        }
Пример #2
0
 /// <summary>
 /// Initializes the instance.
 /// </summary>
 /// <param name="context"></param>
 public void Init(HttpApplication context)
 {
     if (config.Enabled)
     {
         context.AddOnBeginRequestAsync(BeginOnBeginRequestAsync, EndOnBeginRequestAsync);
         context.AddOnEndRequestAsync(OnBeginEndRequestAsync, OnEndEndRequestAsync);
     }
 }
Пример #3
0
    public void Init(HttpApplication context)
    {
        EventHandlerTaskAsyncHelper helper =
            new EventHandlerTaskAsyncHelper(DownloadWeb);

        context.AddOnBeginRequestAsync(
            helper.BeginEventHandler, helper.EndEventHandler);
    }
        public void Init(HttpApplication context)
        {
            context.BeginRequest        += CreateEventHandler(OnBeginRequest);
            context.EndRequest          += CreateEventHandler(OnEndRequest);
            context.AuthenticateRequest += CreateEventHandler(OnAuthenticateRequest);
            context.Error             += CreateEventHandler(OnError);
            context.MapRequestHandler += CreateEventHandler(OnMapRequest);
            var asynchelper = new EventHandlerTaskAsyncHelper(OnBeginRequestAsync);

            context.AddOnBeginRequestAsync(asynchelper.BeginEventHandler, asynchelper.EndEventHandler);
        }
Пример #5
0
        public void Init(HttpApplication context)
        {
            this._context    = context;
            _prerenderConfig = ConfigurationManager.GetSection(PRERENDER_SECTION_KEY) as PrerenderConfigSection;
            BuildCrawlerUsageAgentsList();
            BuildExtensionsToIgnoreList();
            BuildBlackList();
            BuildWhiteList();
            var wrapper = new EventHandlerTaskAsyncHelper(ContextBeginRequest);

            context.AddOnBeginRequestAsync(wrapper.BeginEventHandler, wrapper.EndEventHandler);
        }
Пример #6
0
        public void Init(HttpApplication app)
        {
            EventHandlerTaskAsyncHelper helper
                = new EventHandlerTaskAsyncHelper(async(src, args) => {
                if (app.Context.Request.Path == "/DisplayItemValue.aspx")
                {
                    string content = await new
                                     WebClient().DownloadStringTaskAsync("http://asp.net");
                    ((HttpApplication)src).Context.Items["length"] = content.Length;
                }
            });

            app.AddOnBeginRequestAsync(helper.BeginEventHandler, helper.EndEventHandler);
        }
Пример #7
0
        //public void Init(HttpApplication context)
        //{
        //    // 下面是如何处理 LogRequest 事件并为其
        //    // 提供自定义日志记录实现的示例
        //    context.LogRequest += new EventHandler(OnLogRequest);
        //    //Asp.net处理的第一个事件,表示处理的开始
        //    context.BeginRequest += context_BeginRequest;
        //    //已经获取请求用户的信息
        //    context.PostAuthenticateRequest += context_PostAuthenticateRequest;
        //    //用户请求已经得到授权
        //    context.PostAuthorizeRequest += context_PostAuthorizeRequest;
        //    //获取以前处理缓存的处理结果,如果以前缓存过,那么,不必再进行请求的处理工作,直接返回缓存结果
        //    context.ResolveRequestCache += context_ResolveRequestCache;
        //    //已经完成缓存的获取操作
        //    context.PostResolveRequestCache += context_PostResolveRequestCache;
        //    //已经根据用户的请求,创建了处理请求的处理器对象
        //    context.PostMapRequestHandler += context_PostMapRequestHandler;
        //    //已经取得了Session
        //    context.PostAcquireRequestState += context_PostAcquireRequestState;
        //    //准备执行处理程序
        //    context.PreRequestHandlerExecute += context_PreRequestHandlerExecute;
        //    //已经执行了处理程序
        //    context.PostRequestHandlerExecute += context_PostRequestHandlerExecute;
        //    //释放请求的状态
        //    context.ReleaseRequestState += context_ReleaseRequestState;
        //    //更新缓存
        //    context.UpdateRequestCache += context_UpdateRequestCache;
        //    //已经更新了缓存
        //    context.PostUpdateRequestCache += context_PostUpdateRequestCache;
        //    //已经完成了请求的日志操作
        //    context.PostLogRequest += context_PostLogRequest;
        //    //本次请求处理完成
        //    context.EndRequest += context_EndRequest;
        //    context.PreSendRequestContent += context_PreSendRequestContent;
        //    context.PreSendRequestHeaders += context_PreSendRequestHeaders;

        //    context.RequestCompleted += context_RequestCompleted;
        //}

        //void context_UpdateRequestCache(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的UpdateRequestCache<br/>");
        //    }
        //}

        //void context_ResolveRequestCache(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的ResolveRequestCache<br/>");
        //    }
        //}

        //void context_RequestCompleted(object sender, EventArgs e)
        //{
        //    //HttpApplication app = sender as HttpApplication;
        //    //if (app != null)
        //    //{
        //    //    HttpContext context = app.Context;
        //    //    HttpResponse response = app.Response;
        //    //    response.Write("自定义HttpModule中的RequestCompleted<br/>");
        //    //}
        //}

        //void context_PreSendRequestHeaders(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PreSendRequestHeaders<br/>");
        //    }
        //}

        //void context_PreSendRequestContent(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PreSendRequestContent<br/>");
        //    }
        //}

        //void context_PreRequestHandlerExecute(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PreRequestHandlerExecute<br/>");
        //    }
        //}

        //void context_PostUpdateRequestCache(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostUpdateRequestCache<br/>");
        //    }
        //}

        //void context_PostResolveRequestCache(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostResolveRequestCache<br/>");
        //    }
        //}

        //void context_PostRequestHandlerExecute(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostRequestHandlerExecut<br/>");
        //    }
        //}

        //void context_PostMapRequestHandler(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostMapRequestHandler<br/>");
        //    }
        //}

        //void context_PostLogRequest(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostLogRequest<br/>");
        //    }
        //}

        //void context_PostAuthorizeRequest(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostAuthorizeRequest<br/>");
        //    }
        //}

        //void context_PostAuthenticateRequest(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostAuthenticateRequest<br/>");
        //    }
        //}

        //void context_PostAcquireRequestState(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的PostAcquireRequestState<br/>");
        //    }
        //}

        //void context_ReleaseRequestState(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的ReleaseRequestState<br/>");
        //    }
        //}

        //void context_EndRequest(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的EndRequest<br/>");
        //    }
        //}

        //void context_BeginRequest(object sender, EventArgs e)
        //{
        //    HttpApplication app = sender as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("Out!!!!!!!!!<br/>");
        //    }
        //}

        //public void OnLogRequest(Object source, EventArgs e)
        //{
        //    HttpApplication app = source as HttpApplication;
        //    if (app != null)
        //    {
        //        HttpContext context = app.Context;
        //        HttpResponse response = app.Response;
        //        response.Write("自定义HttpModule中的LogRequest<br/>");
        //        return;
        //    }
        //}
        #endregion

        public void Init(HttpApplication context)
        {
            var asyncHelper = new EventHandlerTaskAsyncHelper(context_OnBeginRequestAsync);

            context.AddOnBeginRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);

            asyncHelper = new EventHandlerTaskAsyncHelper(context_OnAuthenticateRequestAsync);
            context.AddOnAuthenticateRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);

            //asyncHelper = new EventHandlerTaskAsyncHelper(context_OnPostAuthorizationRequestAsync);
            //context.AddOnPostAuthorizeRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);

            asyncHelper = new EventHandlerTaskAsyncHelper(context_OnEndRequestAsync);
            context.AddOnEndRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);
        }
Пример #8
0
        public void Init(HttpApplication context)
        {
            // Below is an example of how you can handle LogRequest event and provide
            // custom logging implementation for it
            //context.LogRequest += new EventHandler(OnLogRequest);
            EventHandlerTaskAsyncHelper helper = new EventHandlerTaskAsyncHelper(async(src, args) => {
                if (context.Context.Request.Path == "/DisplayItemValue.aspx")
                {
                    String content = await new WebClient().DownloadStringTaskAsync("http://asp.net");
                    ((HttpApplication)src).Context.Items["length"] = content.Length;
                }
            });

            context.AddOnBeginRequestAsync(helper.BeginEventHandler, helper.EndEventHandler);
        }
Пример #9
0
        public virtual void Init(HttpApplication context)
        {
            if (_logger == null)
            {
                _logger = ActuatorConfiguration.LoggerFactory?.CreateLogger <ActuatorModule>();
            }

            if (_handlers == null)
            {
                _handlers = ActuatorConfiguration.ConfiguredHandlers;
            }

            EventHandlerTaskAsyncHelper asyncHelper = new EventHandlerTaskAsyncHelper(FilterAndPreProcessRequest);

            context.AddOnBeginRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);
        }
Пример #10
0
        public void Init(HttpApplication httpApp)
        {
            var helper = new EventHandlerTaskAsyncHelper(async(sender, args) =>
            {
                if (httpApp.Context.Request.Path == "/DisplayItemValue.aspx")
                {
                    using (var client = new WebClient())
                    {
                        var content = await client.DownloadStringTaskAsync("http://asp.net");
                        var app     = sender as HttpApplication;
                        if (app != null)
                        {
                            app.Context.Items["length"] = content.Length;
                        }
                    }
                }
            });

            httpApp.AddOnBeginRequestAsync(helper.BeginEventHandler, helper.EndEventHandler);
        }
Пример #11
0
        public void Init(HttpApplication context)
        {
            var handler = new CachingHttpHandler(
                new HttpClientHandler(),
                new MemoryCache(new MemoryCacheOptions()));

            if (TimeSpan.TryParse(
                    ConfigurationManager.AppSettings["whitelist:DefaultCacheDuration"],
                    out var duration))
            {
                handler.DefaultCacheDuration = duration;
            }

            _client = new HttpClient(handler);
            _url    = ConfigurationManager.AppSettings["whitelist:Url"];

            var eventHandler = new EventHandlerTaskAsyncHelper(beginRequest);

            context.AddOnBeginRequestAsync(
                eventHandler.BeginEventHandler,
                eventHandler.EndEventHandler);
        }
Пример #12
0
        public static void Initialize(HttpApplication app)
        {
            EventHandlerTaskAsyncHelper helper = new EventHandlerTaskAsyncHelper(Instance.HandleRequest);

            app.AddOnBeginRequestAsync(helper.BeginEventHandler, helper.EndEventHandler);
        }
Пример #13
0
        public void Init(HttpApplication init)
        {
            init.AddOnBeginRequestAsync(
                (sender, args, callback, state) =>
            {
                var taskCompletionSource = new TaskCompletionSource <Action>(state);
                if (callback != null)
                {
                    taskCompletionSource.Task.ContinueWith(task => callback(task), TaskContinuationOptions.ExecuteSynchronously);
                }

                var httpContext     = ((HttpApplication)sender).Context;
                var httpRequest     = httpContext.Request;
                var serverVariables = new ServerVariables(httpRequest.ServerVariables);

                var appRelCurExeFilPat = httpRequest.AppRelativeCurrentExecutionFilePath.Substring(1);

                var env = new Dictionary <string, object>();
                new Environment(env)
                {
                    Version    = "1.0",
                    Method     = httpRequest.HttpMethod,
                    UriScheme  = httpRequest.Url.Scheme,
                    ServerName = serverVariables.ServerName,
                    ServerPort = serverVariables.ServerPort,
                    BaseUri    = "",
                    RequestUri = appRelCurExeFilPat + "?" + serverVariables.QueryString,
                    Headers    = httpRequest.Headers.AllKeys.ToDictionary(x => x, x => httpRequest.Headers.Get(x)),
                    Body       = (next, error, complete) =>
                    {
                        var stream       = httpContext.Request.InputStream;
                        var buffer       = new byte[4096];
                        var continuation = new AsyncCallback[1];
                        bool[] stopped   = { false };
                        continuation[0]  = result =>
                        {
                            if (result != null && result.CompletedSynchronously)
                            {
                                return;
                            }
                            try
                            {
                                for (;;)
                                {
                                    if (result != null)
                                    {
                                        var count = stream.EndRead(result);
                                        if (stopped[0])
                                        {
                                            return;
                                        }
                                        if (count <= 0)
                                        {
                                            complete();
                                            return;
                                        }
                                        var data = new ArraySegment <byte>(buffer, 0, count);
                                        if (next(data, () => continuation[0](null)))
                                        {
                                            return;
                                        }
                                    }

                                    if (stopped[0])
                                    {
                                        return;
                                    }
                                    result = stream.BeginRead(buffer, 0, buffer.Length, continuation[0], null);
                                    if (!result.CompletedSynchronously)
                                    {
                                        return;
                                    }
                                }
                            }
                            catch (Exception ex)
                            {
                                error(ex);
                            }
                        };
                        continuation[0](null);
                        return(() => { stopped[0] = true; });
                    },
                };
                Host.Call(
                    env,
                    taskCompletionSource.SetException,
                    (status, headers, body) =>
                {
                    try
                    {
                        httpContext.Response.Status = status;
                        foreach (var header in headers.SelectMany(kv => kv.Value.Split("\r\n".ToArray(), StringSplitOptions.RemoveEmptyEntries).Select(v => new { kv.Key, Value = v })))
                        {
                            httpContext.Response.AddHeader(header.Key, header.Value);
                        }
                        if (body == null)
                        {
                            taskCompletionSource.SetResult(() => httpContext.Response.End());
                            return;
                        }
                        var stream = httpContext.Response.OutputStream;
                        body(
                            (data, continuation) =>
                        {
                            try
                            {
                                if (continuation == null)
                                {
                                    stream.Write(data.Array, data.Offset, data.Count);
                                    return(false);
                                }
                                var sr = stream.BeginWrite(data.Array, data.Offset, data.Count, ar =>
                                {
                                    if (ar.CompletedSynchronously)
                                    {
                                        return;
                                    }
                                    try
                                    {
                                        stream.EndWrite(ar);
                                    }
                                    catch (Exception ex)
                                    {
                                        taskCompletionSource.SetException(ex);
                                    }
                                    continuation();
                                }, null);
                                if (sr.CompletedSynchronously)
                                {
                                    stream.EndWrite(sr);
                                    return(false);
                                }

                                return(true);
                            }
                            catch (Exception ex)
                            {
                                taskCompletionSource.SetException(ex);
                                return(false);
                            }
                        },
                            taskCompletionSource.SetException,
                            () => taskCompletionSource.SetResult(() => httpContext.Response.End()));
                    }
                    catch (Exception ex)
                    {
                        taskCompletionSource.SetException(ex);
                    }
                });
                return(taskCompletionSource.Task);
            },
                ar => ((Task <Action>)ar).Result());
        }
Пример #14
0
        public void Events_Deny_Unrestricted()
        {
            HttpApplication app = new HttpApplication();

            app.Disposed += new EventHandler(Handler);
            app.Error    += new EventHandler(Handler);
            app.PreSendRequestContent     += new EventHandler(Handler);
            app.PreSendRequestHeaders     += new EventHandler(Handler);
            app.AcquireRequestState       += new EventHandler(Handler);
            app.AuthenticateRequest       += new EventHandler(Handler);
            app.AuthorizeRequest          += new EventHandler(Handler);
            app.BeginRequest              += new EventHandler(Handler);
            app.EndRequest                += new EventHandler(Handler);
            app.PostRequestHandlerExecute += new EventHandler(Handler);
            app.PreRequestHandlerExecute  += new EventHandler(Handler);
            app.ReleaseRequestState       += new EventHandler(Handler);
            app.ResolveRequestCache       += new EventHandler(Handler);
            app.UpdateRequestCache        += new EventHandler(Handler);

            app.AddOnAcquireRequestStateAsync(null, null);
            app.AddOnAuthenticateRequestAsync(null, null);
            app.AddOnAuthorizeRequestAsync(null, null);
            app.AddOnBeginRequestAsync(null, null);
            app.AddOnEndRequestAsync(null, null);
            app.AddOnPostRequestHandlerExecuteAsync(null, null);
            app.AddOnPreRequestHandlerExecuteAsync(null, null);
            app.AddOnReleaseRequestStateAsync(null, null);
            app.AddOnResolveRequestCacheAsync(null, null);
            app.AddOnUpdateRequestCacheAsync(null, null);

            app.Disposed -= new EventHandler(Handler);
            app.Error    -= new EventHandler(Handler);
            app.PreSendRequestContent     -= new EventHandler(Handler);
            app.PreSendRequestHeaders     -= new EventHandler(Handler);
            app.AcquireRequestState       -= new EventHandler(Handler);
            app.AuthenticateRequest       -= new EventHandler(Handler);
            app.AuthorizeRequest          -= new EventHandler(Handler);
            app.BeginRequest              -= new EventHandler(Handler);
            app.EndRequest                -= new EventHandler(Handler);
            app.PostRequestHandlerExecute -= new EventHandler(Handler);
            app.PreRequestHandlerExecute  -= new EventHandler(Handler);
            app.ReleaseRequestState       -= new EventHandler(Handler);
            app.ResolveRequestCache       -= new EventHandler(Handler);
            app.UpdateRequestCache        -= new EventHandler(Handler);
#if NET_2_0
            app.PostAuthenticateRequest += new EventHandler(Handler);
            app.PostAuthorizeRequest    += new EventHandler(Handler);
            app.PostResolveRequestCache += new EventHandler(Handler);
            app.PostMapRequestHandler   += new EventHandler(Handler);
            app.PostAcquireRequestState += new EventHandler(Handler);
            app.PostReleaseRequestState += new EventHandler(Handler);
            app.PostUpdateRequestCache  += new EventHandler(Handler);

            app.AddOnPostAuthenticateRequestAsync(null, null);
            app.AddOnPostAuthenticateRequestAsync(null, null, null);
            app.AddOnPostAuthorizeRequestAsync(null, null);
            app.AddOnPostAuthorizeRequestAsync(null, null, null);
            app.AddOnPostResolveRequestCacheAsync(null, null);
            app.AddOnPostResolveRequestCacheAsync(null, null, null);
            app.AddOnPostMapRequestHandlerAsync(null, null);
            app.AddOnPostMapRequestHandlerAsync(null, null, null);
            app.AddOnPostAcquireRequestStateAsync(null, null);
            app.AddOnPostAcquireRequestStateAsync(null, null, null);
            app.AddOnPostReleaseRequestStateAsync(null, null);
            app.AddOnPostReleaseRequestStateAsync(null, null, null);
            app.AddOnPostUpdateRequestCacheAsync(null, null);
            app.AddOnPostUpdateRequestCacheAsync(null, null, null);

            app.AddOnAcquireRequestStateAsync(null, null, null);
            app.AddOnAuthenticateRequestAsync(null, null, null);
            app.AddOnAuthorizeRequestAsync(null, null, null);
            app.AddOnBeginRequestAsync(null, null, null);
            app.AddOnEndRequestAsync(null, null, null);
            app.AddOnPostRequestHandlerExecuteAsync(null, null, null);
            app.AddOnPreRequestHandlerExecuteAsync(null, null, null);
            app.AddOnReleaseRequestStateAsync(null, null, null);
            app.AddOnResolveRequestCacheAsync(null, null, null);
            app.AddOnUpdateRequestCacheAsync(null, null, null);

            app.PostAuthenticateRequest -= new EventHandler(Handler);
            app.PostAuthorizeRequest    -= new EventHandler(Handler);
            app.PostResolveRequestCache -= new EventHandler(Handler);
            app.PostMapRequestHandler   -= new EventHandler(Handler);
            app.PostAcquireRequestState -= new EventHandler(Handler);
            app.PostReleaseRequestState -= new EventHandler(Handler);
            app.PostUpdateRequestCache  -= new EventHandler(Handler);
#endif
        }
Пример #15
0
 public void Init(HttpApplication httpApplication)
 {
     context = httpApplication;
     context.AddOnBeginRequestAsync(BeginBeginRequest, EndBeginRequest, null);
 }
Пример #16
0
        public void Init(HttpApplication context)
        {
            var eh = new EventHandlerTaskAsyncHelper(Handler);

            context.AddOnBeginRequestAsync(eh.BeginEventHandler, eh.EndEventHandler);
        }
        public void Init(HttpApplication context)
        {
            var wrapper = new EventHandlerTaskAsyncHelper(DefendRequest);

            context.AddOnBeginRequestAsync(wrapper.BeginEventHandler, wrapper.EndEventHandler);
        }
        public void Init(HttpApplication context)
        {
            var eventHandlerTaskAsyncHelper = new EventHandlerTaskAsyncHelper(SetCookieComplianceAsync);

            context.AddOnBeginRequestAsync(eventHandlerTaskAsyncHelper.BeginEventHandler, eventHandlerTaskAsyncHelper.EndEventHandler);
        }
Пример #19
0
 public void Init(HttpApplication context)
 {
     context.AddOnBeginRequestAsync(OnBegin, OnEnd);
 }
Пример #20
0
 protected override void OnInit(HttpApplication context)
 {
     context.AddOnBeginRequestAsync(OnBeginBeginRequest, OnEndBeginRequest);
 }
Пример #21
0
        public void RegisterEvent(HttpApplication application)
        {
            switch (ApplicationEvent)
            {
            case DynamicHttpHandlerEvent.AuthenticateRequestAsync:
                application.AddOnAuthenticateRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.AuthorizeRequestAsync:
                application.AddOnAuthorizeRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.BeginRequestAsync:
                application.AddOnBeginRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.EndRequestAsync:
                application.AddOnEndRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.LogRequestAsync:
                application.AddOnLogRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.PostAuthenticateRequestAsync:
                application.AddOnPostAuthenticateRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.PostAuthorizeRequestAsync:
                application.AddOnPostAuthorizeRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.PostLogRequestAsync:
                application.AddOnPostLogRequestAsync(asyncHandlerHelper.BeginEventHandler, asyncHandlerHelper.EndEventHandler);
                break;

            case DynamicHttpHandlerEvent.BeginRequest:
                application.BeginRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.AuthenticateRequest:
                application.AuthenticateRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.PostAuthenticateRequest:
                application.PostAuthenticateRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.AuthorizeRequest:
                application.AuthorizeRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.PostAuthorizeRequest:
                application.PostAuthorizeRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.PostLogRequest:
                application.PostLogRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.LogRequest:
                application.LogRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.EndRequest:
                application.EndRequest += HandleRequest;
                break;

            case DynamicHttpHandlerEvent.Error:
                application.Error += HandleRequest;
                break;

            default:
                throw new ApplicationException($"Async event type '{ApplicationEvent}' not configured for registrations");
            }
        }
    public void Init(HttpApplication app)
    {
        var wrapper = new EventHandlerTaskAsyncHelper(DoAsyncWork);

        app.AddOnBeginRequestAsync(wrapper.BeginEventHandler, wrapper.EndEventHandler);
    }
Пример #23
0
 /// <summary>
 /// Initialises the module.
 /// </summary>
 /// <param name="context">Application context.</param>
 public void Init(HttpApplication context)
 {
     context.BeginRequest += new EventHandler(Context_AuthenticateRequest);
     context.AddOnBeginRequestAsync(AsyncBeginRequest, AsyncBeginRequestEnd);
 }
Пример #24
0
 public void Init(HttpApplication context)
 {
     _context = context;
     context.AddOnBeginRequestAsync(BeginBeginRequest, EndBeginRequest, null);
 }
        public void Init(HttpApplication context)
        {
            var handler = new EventHandlerTaskAsyncHelper(OnBeginRequestAsync);

            context.AddOnBeginRequestAsync(handler.BeginEventHandler, handler.EndEventHandler);
        }