Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / 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 } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- UniqueConstraint.cs
- CapabilitiesUse.cs
- UserControlParser.cs
- OdbcFactory.cs
- ActiveXSite.cs
- Transform3DGroup.cs
- HotCommands.cs
- BmpBitmapDecoder.cs
- HttpModulesSection.cs
- ToolStripRenderEventArgs.cs
- RegistryExceptionHelper.cs
- RestHandler.cs
- RoleGroupCollection.cs
- SuppressMergeCheckAttribute.cs
- GeometryHitTestParameters.cs
- StorageConditionPropertyMapping.cs
- ProjectionRewriter.cs
- ServicePointManagerElement.cs
- ObservableCollection.cs
- SiteOfOriginContainer.cs
- QilInvoke.cs
- PartManifestEntry.cs
- CacheDependency.cs
- AutomationPeer.cs
- BoundingRectTracker.cs
- Point3DAnimationUsingKeyFrames.cs
- Transactions.cs
- EastAsianLunisolarCalendar.cs
- MouseButtonEventArgs.cs
- ObsoleteAttribute.cs
- PingReply.cs
- ImportCatalogPart.cs
- SubstitutionResponseElement.cs
- panel.cs
- Cursor.cs
- ACE.cs
- OLEDB_Enum.cs
- ReadWriteControlDesigner.cs
- TreeNodeCollection.cs
- DataGridViewAutoSizeModeEventArgs.cs
- TypeDependencyAttribute.cs
- WindowsPen.cs
- DataTemplate.cs
- AutoGeneratedFieldProperties.cs
- ListControlStringCollectionEditor.cs
- WebPartDisplayModeCancelEventArgs.cs
- CaseInsensitiveHashCodeProvider.cs
- ReliableMessagingVersionConverter.cs
- InfoCardAsymmetricCrypto.cs
- ToolboxItemAttribute.cs
- GenerateTemporaryTargetAssembly.cs
- DataReaderContainer.cs
- FastPropertyAccessor.cs
- TransformerInfoCollection.cs
- CodeObjectCreateExpression.cs
- GenericUI.cs
- SystemIPGlobalProperties.cs
- ControlBuilder.cs
- TypeConstant.cs
- ValueConversionAttribute.cs
- PartitionerQueryOperator.cs
- MsdtcClusterUtils.cs
- WebPartMenuStyle.cs
- Validator.cs
- DiscoveryMessageSequenceCD1.cs
- ObjectSet.cs
- GrammarBuilderWildcard.cs
- ClientConfigPaths.cs
- HttpRawResponse.cs
- WebPartDesigner.cs
- DodSequenceMerge.cs
- PageHandlerFactory.cs
- TabPanel.cs
- TimelineGroup.cs
- CodeActivityMetadata.cs
- UseManagedPresentationElement.cs
- RuntimeResourceSet.cs
- CancelEventArgs.cs
- Parser.cs
- HttpRequestTraceRecord.cs
- ObfuscateAssemblyAttribute.cs
- infer.cs
- Helpers.cs
- FileDetails.cs
- PropertyChangedEventArgs.cs
- ClrPerspective.cs
- ControlCachePolicy.cs
- SqlDataSourceFilteringEventArgs.cs
- HandlerWithFactory.cs
- PeerMaintainer.cs
- StylusTip.cs
- EmptyEnumerator.cs
- DynamicDataResources.Designer.cs
- RangeValuePatternIdentifiers.cs
- EntityDataSourceViewSchema.cs
- ListViewTableCell.cs
- XmlTextReaderImplHelpers.cs
- StateWorkerRequest.cs
- UnsafePeerToPeerMethods.cs
- Control.cs