Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / HttpAsyncResult.cs / 1305376 / HttpAsyncResult.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * ASP.NET simple internal implementation of IAsyncResult * * Copyright (c) 2000 Microsoft Corporation */ namespace System.Web { using System; using System.Threading; internal class HttpAsyncResult : IAsyncResult { private AsyncCallback _callback; private Object _asyncState; private bool _completed; private bool _completedSynchronously; private Object _result; private Exception _error; // pipeline support private RequestNotificationStatus _status; /* * Constructor with pending result */ internal HttpAsyncResult(AsyncCallback cb, Object state) { _callback = cb; _asyncState = state; _status = RequestNotificationStatus.Continue; } /* * Constructor with known result */ internal HttpAsyncResult(AsyncCallback cb, Object state, bool completed, Object result, Exception error) { _callback = cb; _asyncState = state; _completed = completed; _completedSynchronously = completed; _result = result; _error = error; _status = RequestNotificationStatus.Continue; if (_completed && _callback != null) _callback(this); } internal void SetComplete() { _completed = true; } /* * Helper method to process completions */ internal void Complete(bool synchronous, Object result, Exception error, RequestNotificationStatus status) { _completed = true; _completedSynchronously = synchronous; _result = result; _error = error; _status = status; if (_callback != null) _callback(this); } internal void Complete(bool synchronous, Object result, Exception error) { Complete(synchronous, result, error, RequestNotificationStatus.Continue); } /* * Helper method to implement End call to async method */ internal Object End() { if (_error != null) throw new HttpException(null, _error); return _result; } // // Properties that are not part of IAsyncResult // internal Exception Error { get { return _error;}} internal RequestNotificationStatus Status { get { return _status; } } // // IAsyncResult implementation // public bool IsCompleted { get { return _completed;}} public bool CompletedSynchronously { get { return _completedSynchronously;}} public Object AsyncState { get { return _asyncState;}} public WaitHandle AsyncWaitHandle { get { return null;}} // wait not supported } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * ASP.NET simple internal implementation of IAsyncResult * * Copyright (c) 2000 Microsoft Corporation */ namespace System.Web { using System; using System.Threading; internal class HttpAsyncResult : IAsyncResult { private AsyncCallback _callback; private Object _asyncState; private bool _completed; private bool _completedSynchronously; private Object _result; private Exception _error; // pipeline support private RequestNotificationStatus _status; /* * Constructor with pending result */ internal HttpAsyncResult(AsyncCallback cb, Object state) { _callback = cb; _asyncState = state; _status = RequestNotificationStatus.Continue; } /* * Constructor with known result */ internal HttpAsyncResult(AsyncCallback cb, Object state, bool completed, Object result, Exception error) { _callback = cb; _asyncState = state; _completed = completed; _completedSynchronously = completed; _result = result; _error = error; _status = RequestNotificationStatus.Continue; if (_completed && _callback != null) _callback(this); } internal void SetComplete() { _completed = true; } /* * Helper method to process completions */ internal void Complete(bool synchronous, Object result, Exception error, RequestNotificationStatus status) { _completed = true; _completedSynchronously = synchronous; _result = result; _error = error; _status = status; if (_callback != null) _callback(this); } internal void Complete(bool synchronous, Object result, Exception error) { Complete(synchronous, result, error, RequestNotificationStatus.Continue); } /* * Helper method to implement End call to async method */ internal Object End() { if (_error != null) throw new HttpException(null, _error); return _result; } // // Properties that are not part of IAsyncResult // internal Exception Error { get { return _error;}} internal RequestNotificationStatus Status { get { return _status; } } // // IAsyncResult implementation // public bool IsCompleted { get { return _completed;}} public bool CompletedSynchronously { get { return _completedSynchronously;}} public Object AsyncState { get { return _asyncState;}} public WaitHandle AsyncWaitHandle { get { return null;}} // wait not supported } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeSnippetExpression.cs
- ValueChangedEventManager.cs
- XmlSubtreeReader.cs
- VectorKeyFrameCollection.cs
- FtpRequestCacheValidator.cs
- SiteMapNodeItem.cs
- SortExpressionBuilder.cs
- KeyInterop.cs
- SiteMapNodeItem.cs
- GenericEnumConverter.cs
- OleDbError.cs
- DateBoldEvent.cs
- streamingZipPartStream.cs
- DataGrid.cs
- SqlCommandBuilder.cs
- MaterialGroup.cs
- LinkArea.cs
- ColumnHeader.cs
- ComponentCommands.cs
- dataobject.cs
- TraceSwitch.cs
- Composition.cs
- NegationPusher.cs
- QuadraticBezierSegment.cs
- NativeMethods.cs
- MissingSatelliteAssemblyException.cs
- BrowserCapabilitiesFactory.cs
- SmtpSection.cs
- SrgsGrammar.cs
- CodeIndexerExpression.cs
- __TransparentProxy.cs
- WindowsIdentity.cs
- HttpListenerRequest.cs
- FunctionQuery.cs
- Atom10FormatterFactory.cs
- ParseElementCollection.cs
- LinkedResourceCollection.cs
- MD5.cs
- MailHeaderInfo.cs
- EditingCoordinator.cs
- LeftCellWrapper.cs
- XsdValidatingReader.cs
- ExpressionQuoter.cs
- CodeAccessPermission.cs
- LongTypeConverter.cs
- DataObjectEventArgs.cs
- DetailsViewPagerRow.cs
- Rijndael.cs
- UIElement.cs
- WindowsListViewGroup.cs
- RoleService.cs
- CustomErrorsSectionWrapper.cs
- RoleProviderPrincipal.cs
- Messages.cs
- StrokeNodeOperations2.cs
- ObjectListFieldsPage.cs
- StylusCaptureWithinProperty.cs
- DecoderExceptionFallback.cs
- Validator.cs
- SpellerError.cs
- StyleXamlTreeBuilder.cs
- FixedSOMLineCollection.cs
- OdbcException.cs
- AuthenticodeSignatureInformation.cs
- SqlNodeAnnotation.cs
- DurableErrorHandler.cs
- LogAppendAsyncResult.cs
- DefaultAsyncDataDispatcher.cs
- PropertySet.cs
- UrlAuthorizationModule.cs
- PropertyEntry.cs
- MetadataProperty.cs
- DrawingContextWalker.cs
- HttpsHostedTransportConfiguration.cs
- X509ScopedServiceCertificateElement.cs
- TemplateControl.cs
- ConfigurationManagerInternal.cs
- StatusBarPanel.cs
- StringUtil.cs
- xmlfixedPageInfo.cs
- FillErrorEventArgs.cs
- HwndProxyElementProvider.cs
- _HeaderInfo.cs
- QueryPageSettingsEventArgs.cs
- ChildChangedEventArgs.cs
- VectorConverter.cs
- AssemblyContextControlItem.cs
- Invariant.cs
- DataRelationCollection.cs
- ErrorTableItemStyle.cs
- SqlDependency.cs
- ADRole.cs
- SafePointer.cs
- ReadOnlyKeyedCollection.cs
- TextPattern.cs
- DbConnectionClosed.cs
- WebBrowserBase.cs
- IPipelineRuntime.cs
- PackageDigitalSignature.cs
- XLinq.cs