private void AttachHandlers() { BeginEventHandler bh = new BeginEventHandler( this.BeginLoad ); EndEventHandler eh = new EndEventHandler( this.EndLoad ); AddOnPreRenderCompleteAsync( bh, eh ); }
public EventHandlerTaskAsyncHelper (TaskEventHandler handler) { if (handler == null) throw new ArgumentNullException ("handler"); taskEventHandler = handler; beginEventHandler = GetAsyncResult; }
public PageAsyncTask (BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeoutHandler, Object state, bool executeInParallel) { this.beginHandler = beginHandler; this.endHandler = endHandler; this.timeoutHandler = timeoutHandler; this.state = state; this.executeInParallel = executeInParallel; }
internal LegacyPageAsyncTask(BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeoutHandler, Object state, bool executeInParallel) { // Parameter checking is done by the public PageAsyncTask constructor _beginHandler = beginHandler; _endHandler = endHandler; _timeoutHandler = timeoutHandler; _state = state; _executeInParallel = executeInParallel; }
public void Init(HttpApplication context) { if (beginEventHandler == null) { beginEventHandler = new BeginEventHandler(ServiceHttpModule.BeginProcessRequest); } if (endEventHandler == null) { endEventHandler = new EndEventHandler(ServiceHttpModule.EndProcessRequest); } context.AddOnPostAuthenticateRequestAsync(beginEventHandler, endEventHandler); }
protected void Start_Clicked(object sender, EventArgs e) { ProgressLabel.Text = "Page_Load: thread #" + System.Threading.Thread.CurrentThread.GetHashCode(); BeginEventHandler bh = new BeginEventHandler(this.BeginGetAsyncData); EndEventHandler eh = new EndEventHandler(this.EndGetAsyncData); AddOnPreRenderCompleteAsync(bh, eh); // Initialize the WebRequest. string address = "http://localhost/"; myRequest = System.Net.WebRequest.Create(address); }
public PageAsyncTask(BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeoutHandler, object state, bool executeInParallel) { if (beginHandler == null) { throw new ArgumentNullException("beginHandler"); } if (endHandler == null) { throw new ArgumentNullException("endHandler"); } this._beginHandler = beginHandler; this._endHandler = endHandler; this._timeoutHandler = timeoutHandler; this._state = state; this._executeInParallel = executeInParallel; }
// APM internal PageAsyncTask(BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeoutHandler, Object state, bool executeInParallel, SynchronizationContextMode currentMode) { if (beginHandler == null) { throw new ArgumentNullException("beginHandler"); } if (endHandler == null) { throw new ArgumentNullException("endHandler"); } // Only the legacy PageAsyncTaskManager supports timing out APM methods or executing them in parallel if (timeoutHandler != null || executeInParallel) { SynchronizationContextUtil.ValidateMode(currentMode, requiredMode: SynchronizationContextMode.Legacy, specificErrorMessage: SR.SynchronizationContextUtil_PageAsyncTaskTimeoutHandlerParallelNotCompatible); } BeginHandler = beginHandler; EndHandler = endHandler; TimeoutHandler = timeoutHandler; State = state; ExecuteInParallel = executeInParallel; }
private void DoAsync() { if (IsAsync) { Session["Halted"] = false; Timer1.Enabled = true; var asyncHandler = new AsyncHandler(Context); asyncHandler.NotifyHaltHandler += Halted; asyncHandler.NotifyLogger += Logger; BeginEventHandler bh = new BeginEventHandler(asyncHandler.BeginProcessRequest); EndEventHandler eh = new EndEventHandler(asyncHandler.EndProcessRequest); AddOnPreRenderCompleteAsync(bh, eh); // Initialize the WebRequest. string address = "http://localhost/"; asyncHandler.WebRequest = System.Net.WebRequest.Create(address); } GC.Collect(); GC.WaitForPendingFinalizers(); }
public void AddOnAuthenticateRequestAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPostAuthorizeRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnAuthenticateRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnPreRenderCompleteAsync (BeginEventHandler beginHandler, EndEventHandler endHandler) { AddOnPreRenderCompleteAsync (beginHandler, endHandler, null); }
/// <summary> /// Registers a new asynchronous task with the page. /// </summary> /// <param name="beginHandler">The handler to call when beginning an asynchronous task.</param> /// <param name="endHandler">The handler to call when the task is completed successfully within the time-out period.</param> /// <param name="timeout">The handler to call when the task is not completed successfully within the time-out period.</param> /// <param name="state">The object that represents the state of the task.</param> /// <param name="executeInParallel">The vlaue that indicates whether the task can be executed in parallel with other tasks.</param> public void RegisterAsyncTask(BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeout, object state, bool executeInParallel) { page.RegisterAsyncTask(new PageAsyncTask(beginHandler, endHandler, timeout, state, executeInParallel)); }
public void AddOnLogRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, Object state) { }
public void AddOnPostMapRequestHandlerAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnReleaseRequestStateAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnPostResolveRequestCacheAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnPostMapRequestHandlerAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnPostResolveRequestCacheAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnPostAuthorizeRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnPostAuthorizeRequestAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnPostMapRequestHandlerAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPostAcquireRequestStateAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnAcquireRequestStateAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPostAcquireRequestStateAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnBeginRequestAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnUpdateRequestCacheAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, Object state) { }
public void AddOnEndRequestAsync(BeginEventHandler bh, EndEventHandler eh) { AddOnEndRequestAsync(bh, eh, null); }
public void AddOnUpdateRequestCacheAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnMapRequestHandlerAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, Object state) { if (!HttpRuntime.UseIntegratedPipeline) { throw new PlatformNotSupportedException(SR.GetString(SR.Requires_Iis_Integrated_Mode)); } AsyncEvents.AddHandler(EventMapRequestHandler, beginHandler, endHandler, state, RequestNotification.MapRequestHandler, false, this); }
public void AddOnEndRequestAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnWork(BeginEventHandler beginHandler, EndEventHandler endHandler) { this._beginHandler = beginHandler; this._endHandler = endHandler; }
public void AddOnReleaseRequestStateAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnMapRequestHandlerAsync(BeginEventHandler bh, EndEventHandler eh) { if (!HttpRuntime.UseIntegratedPipeline) { throw new PlatformNotSupportedException(SR.GetString(SR.Requires_Iis_Integrated_Mode)); } AddOnMapRequestHandlerAsync(bh, eh, null); }
internal void GetEventHandlers(out BeginEventHandler beginHandler, out EndEventHandler endHandler) { beginHandler = new BeginEventHandler(OnEnter); endHandler = new EndEventHandler(OnLeave); }
public void AddOnPostMapRequestHandlerAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, Object state) { AsyncEvents.AddHandler(EventPostMapRequestHandler, beginHandler, endHandler, state, RequestNotification.MapRequestHandler, true, this); }
public void AddOnPreRequestHandlerExecuteAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { }
public void AddOnPreRenderCompleteAsync (BeginEventHandler beginHandler, EndEventHandler endHandler, Object state) { if (!IsAsync) { throw new InvalidOperationException ("AddOnPreRenderCompleteAsync called and Page.IsAsync == false"); } if (IsPrerendered) { throw new InvalidOperationException ("AddOnPreRenderCompleteAsync can only be called before and during PreRender."); } if (beginHandler == null) { throw new ArgumentNullException ("beginHandler"); } if (endHandler == null) { throw new ArgumentNullException ("endHandler"); } RegisterAsyncTask (new PageAsyncTask (beginHandler, endHandler, null, state, false)); }
public PageAsyncTask(BeginEventHandler beginHandler, EndEventHandler endHandler, EndEventHandler timeoutHandler, object state) : this(beginHandler, endHandler, timeoutHandler, state, false) { }
public void AddOnPostAuthorizeRequestAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPreRequestHandlerExecuteAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnResolveRequestCacheAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPostReleaseRequestStateAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnPostMapRequestHandlerAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnPostUpdateRequestCacheAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnAcquireRequestStateAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnPostRequestHandlerExecuteAsync(BeginEventHandler bh, EndEventHandler eh) { }
public void AddOnPostRequestHandlerExecuteAsync(BeginEventHandler bh, EndEventHandler eh) {}
public void AddOnAcquireRequestStateAsync(BeginEventHandler bh, EndEventHandler eh) { AddOnAcquireRequestStateAsync(bh, eh, null); }
public void AddOnPostReleaseRequestStateAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnAcquireRequestStateAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { AsyncEvents.AddHandler(EventAcquireRequestState, beginHandler, endHandler, state, RequestNotification.AcquireRequestState, false, this); }
public void AddOnPostUpdateRequestCacheAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnAuthenticateRequestAsync(BeginEventHandler bh, EndEventHandler eh) { AddOnAuthenticateRequestAsync(bh, eh, null); }
public void AddOnBeginRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) {}
public void AddOnBeginRequestAsync(BeginEventHandler beginHandler, EndEventHandler endHandler, object state) { AsyncEvents.AddHandler(EventBeginRequest, beginHandler, endHandler, state, RequestNotification.BeginRequest, false, this); }