コード例 #1
0
        /// <summary>
        /// Initializes the module derived from IHttpModule when called by the HttpRuntime .
        /// </summary>
        /// <param name="httpapp">The HttpApplication module</param>
        public void Init(HttpApplication httpapp)
        {
            this.app = httpapp;
            var wrapper = new EventHandlerTaskAsyncHelper(OnAuthenticate);

            app.AddOnAuthenticateRequestAsync(wrapper.BeginEventHandler, wrapper.EndEventHandler);
        }
コード例 #2
0
        public void Init(HttpApplication context)
        {
            AuthenticateRequest = context_AuthenticateRequest;

            context.AddOnAuthenticateRequestAsync(AuthenticateRequest.BeginInvoke, AuthenticateRequest.EndInvoke);
            context.BeginRequest += context_BeginRequest;
        }
コード例 #3
0
        public void Initialize(HttpApplication application)
        {
            for (IntegratedPipelineBlueprintStage stage = _blueprint.FirstStage; stage != null; stage = stage.NextStage)
            {
                var segment = new IntegratedPipelineContextStage(this, stage);
                switch (stage.Name)
                {
                case Constants.StageAuthenticate:
                    application.AddOnAuthenticateRequestAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePostAuthenticate:
                    application.AddOnPostAuthenticateRequestAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StageAuthorize:
                    application.AddOnAuthorizeRequestAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePostAuthorize:
                    application.AddOnPostAuthorizeRequestAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StageResolveCache:
                    application.AddOnResolveRequestCacheAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePostResolveCache:
                    application.AddOnPostResolveRequestCacheAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StageMapHandler:
                    application.AddOnMapRequestHandlerAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePostMapHandler:
                    application.AddOnPostMapRequestHandlerAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StageAcquireState:
                    application.AddOnAcquireRequestStateAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePostAcquireState:
                    application.AddOnPostAcquireRequestStateAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                case Constants.StagePreHandlerExecute:
                    application.AddOnPreRequestHandlerExecuteAsync(segment.BeginEvent, segment.EndEvent);
                    break;

                default:
                    throw new NotSupportedException(
                              string.Format(CultureInfo.InvariantCulture, Resources.Exception_UnsupportedPipelineStage, stage.Name));
                }
            }
            // application.PreSendRequestHeaders += PreSendRequestHeaders; // Null refs for async un-buffered requests with bodies.
            application.AddOnEndRequestAsync(BeginFinalWork, EndFinalWork);
        }
コード例 #4
0
 public void Init(HttpApplication context)
 {
     WorkItem.Init(WorkItem.Work);
     context.AddOnAuthenticateRequestAsync(this.Sample_BeginAuthenticateRequest,
                                           this.Sample_EndAuthenticateRequest);
     context.PreRequestHandlerExecute += this.Sample_PreRequestHandlerExecute;
     context.EndRequest += this.Sample_EndRequest;
 }
コード例 #5
0
        public void Init(HttpApplication context)
        {
            var settings = new PortalSettings(new ConfigurationProvider());
            var url      = new MongoUrl(settings.MongoConnectionString);

            _userRepository = new UserRepository(url);

            var asyncHelper = new EventHandlerTaskAsyncHelper(AuthenticateRequestAsync);

            context.AddOnAuthenticateRequestAsync(asyncHelper.BeginEventHandler, asyncHelper.EndEventHandler);
        }
        /// <summary>
        /// Initializes the module at application start.
        /// </summary>
        /// <param name="context">The application context</param>
        public void Init(HttpApplication context)
        {
            var wrapper = new EventHandlerTaskAsyncHelper(AuthenticateRequest);

            context.AddOnAuthenticateRequestAsync(wrapper.BeginEventHandler, wrapper.EndEventHandler);

            WebIoc.EnsureTypesRegistered();

            // Set socket to be refreshed for default healthvault platform end point
            SetConnectionLeaseTimeOut(Ioc.Get <HealthVaultConfiguration>().DefaultHealthVaultUrl);
        }
コード例 #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 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
        }
コード例 #9
0
 public void Init(HttpApplication app)
 {
     app.AddOnAuthenticateRequestAsync(BeginEvent, EndEvent, app);
     app.BeginRequest += App_BeginRequest;
     app.EndRequest   += App_EndRequest;
 }
コード例 #10
0
 public void Init(HttpApplication app)
 {
     app.AddOnAuthenticateRequestAsync(BeginAuthenticateRequest, EndAuthenticateRequest);
     app.EndRequest += OnEndRequest;
 }
コード例 #11
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");
            }
        }