Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / HttpAsyncResult.cs / 4 / 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
- CachedTypeface.cs
- GAC.cs
- FileAuthorizationModule.cs
- TextWriter.cs
- TargetFrameworkUtil.cs
- UpdateCompiler.cs
- DelegateOutArgument.cs
- BaseResourcesBuildProvider.cs
- AtomServiceDocumentSerializer.cs
- AsyncOperationManager.cs
- EditorBrowsableAttribute.cs
- ContextProperty.cs
- OdbcFactory.cs
- ModuleBuilderData.cs
- CommandField.cs
- SmtpException.cs
- Win32KeyboardDevice.cs
- WebPartHelpVerb.cs
- ChildChangedEventArgs.cs
- TextMessageEncodingElement.cs
- MessageDecoder.cs
- SqlConnectionString.cs
- PlatformCulture.cs
- Simplifier.cs
- CacheDependency.cs
- EventEntry.cs
- UrlPropertyAttribute.cs
- Avt.cs
- PreDigestedSignedInfo.cs
- TextSearch.cs
- InputScopeAttribute.cs
- tibetanshape.cs
- ADConnectionHelper.cs
- PolyLineSegmentFigureLogic.cs
- DataRowExtensions.cs
- CompiledAction.cs
- ServiceModelConfigurationSectionCollection.cs
- TcpServerChannel.cs
- BufferBuilder.cs
- SHA384Managed.cs
- ListViewDeletedEventArgs.cs
- GroupLabel.cs
- TextEditorCharacters.cs
- CodeConditionStatement.cs
- DataSourceControlBuilder.cs
- AlphaSortedEnumConverter.cs
- FileEnumerator.cs
- TemplatedMailWebEventProvider.cs
- EntityContainer.cs
- NonBatchDirectoryCompiler.cs
- HtmlTableRowCollection.cs
- XmlSchemaParticle.cs
- FixedNode.cs
- PerfCounters.cs
- Set.cs
- BinaryCommonClasses.cs
- EncodingInfo.cs
- SafeFreeMibTable.cs
- CollectionChangeEventArgs.cs
- PropertyPathWorker.cs
- XmlSchemaAny.cs
- UIHelper.cs
- BulletedList.cs
- FileLevelControlBuilderAttribute.cs
- HostingPreferredMapPath.cs
- ItemList.cs
- HttpCachePolicyElement.cs
- TabRenderer.cs
- DefaultValueMapping.cs
- DataTransferEventArgs.cs
- __TransparentProxy.cs
- XmlAtomErrorReader.cs
- WindowsRegion.cs
- OrderedDictionaryStateHelper.cs
- ToolBar.cs
- SelectionRangeConverter.cs
- AvTraceDetails.cs
- EventSetter.cs
- HttpCapabilitiesSectionHandler.cs
- SHA384CryptoServiceProvider.cs
- UIPermission.cs
- SafeProcessHandle.cs
- JsonUriDataContract.cs
- EffectiveValueEntry.cs
- NumericPagerField.cs
- AsyncPostBackErrorEventArgs.cs
- XmlChildEnumerator.cs
- DataSourceSelectArguments.cs
- MenuItemAutomationPeer.cs
- WorkItem.cs
- ResourceDictionaryCollection.cs
- TabItemAutomationPeer.cs
- PathFigureCollection.cs
- PackagingUtilities.cs
- SoapElementAttribute.cs
- GlobalAllocSafeHandle.cs
- StylusPointCollection.cs
- EpmCustomContentSerializer.cs
- TextTreeTextNode.cs
- MetafileHeader.cs