Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / HttpAsyncResult.cs / 2 / 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 } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- VBCodeProvider.cs
- DependencyPropertyChangedEventArgs.cs
- SqlDataSource.cs
- RootProfilePropertySettingsCollection.cs
- PinnedBufferMemoryStream.cs
- DataQuery.cs
- Control.cs
- Classification.cs
- GrabHandleGlyph.cs
- MemberRestriction.cs
- MenuItemStyle.cs
- DocumentOrderComparer.cs
- WpfSharedBamlSchemaContext.cs
- Config.cs
- VectorCollection.cs
- MultiPropertyDescriptorGridEntry.cs
- BitmapEffectCollection.cs
- PropertyFilter.cs
- CorrelationInitializer.cs
- TextRangeBase.cs
- SmiTypedGetterSetter.cs
- Decoder.cs
- GridPatternIdentifiers.cs
- FixedPosition.cs
- ButtonFieldBase.cs
- CollectionChangeEventArgs.cs
- DataGridView.cs
- UnhandledExceptionEventArgs.cs
- Viewport3DVisual.cs
- MaskInputRejectedEventArgs.cs
- XmlSchemaAppInfo.cs
- RequestCachePolicy.cs
- parserscommon.cs
- HtmlInputReset.cs
- TraceLog.cs
- BitmapSource.cs
- ProjectedWrapper.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- OdbcErrorCollection.cs
- DataFormats.cs
- Vector3DCollectionConverter.cs
- RootBrowserWindowAutomationPeer.cs
- StringCollectionMarkupSerializer.cs
- SoapTypeAttribute.cs
- InnerItemCollectionView.cs
- BufferedStream.cs
- NodeInfo.cs
- MobileFormsAuthentication.cs
- ContextBase.cs
- MatrixValueSerializer.cs
- ManipulationBoundaryFeedbackEventArgs.cs
- HeaderedContentControl.cs
- ReliableChannelFactory.cs
- CodeTypeReferenceExpression.cs
- PcmConverter.cs
- CqlIdentifiers.cs
- GradientBrush.cs
- DataFieldConverter.cs
- AssociatedControlConverter.cs
- PathFigure.cs
- GlobalItem.cs
- RightNameExpirationInfoPair.cs
- StructuredCompositeActivityDesigner.cs
- ResourceProviderFactory.cs
- DataGridViewComboBoxColumnDesigner.cs
- TrackBarRenderer.cs
- VisualStateGroup.cs
- DurableInstanceProvider.cs
- OutputCacheSection.cs
- DoubleLinkListEnumerator.cs
- DynamicQueryableWrapper.cs
- PositiveTimeSpanValidatorAttribute.cs
- CallSite.cs
- SchemaHelper.cs
- RequestQueryProcessor.cs
- DbConnectionPool.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- InputScopeAttribute.cs
- LogReserveAndAppendState.cs
- DataGridViewTextBoxColumn.cs
- ThreadStaticAttribute.cs
- DocumentSequence.cs
- Font.cs
- CompilerErrorCollection.cs
- SHA256Cng.cs
- OperatingSystem.cs
- Helper.cs
- Operand.cs
- List.cs
- CryptoApi.cs
- KeyInfo.cs
- EmbeddedMailObjectsCollection.cs
- GeometryHitTestParameters.cs
- _NestedMultipleAsyncResult.cs
- FactoryMaker.cs
- CustomAttribute.cs
- XmlSchemaAnyAttribute.cs
- CoreChannel.cs
- connectionpool.cs
- RemoteWebConfigurationHostServer.cs