Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiEventSink_DeferedProcessing.cs / 1305376 / SmiEventSink_DeferedProcessing.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System.Data.Sql; using System.Data.SqlClient; using System.Diagnostics; // This class exists purely to defer processing of messages until a later time. // It is designed to allow calling common code that interacts with the SMI layers // without throwing or otherwise processing messages in the sink until later on. // // Main example: // SqlCommand.ExecuteNonQuerySmi calls EventStream.ProcessEvent with it's command event sink (CES) // ProcessEvent calls OnParametersAvailable on the CES // OnParametersAvailable sets up a deferedprocessing event sink (DPES) with the CES as its parent // OnParametersAvailable calls ValueUtils to extract param values passing the DPES // ValueUtils calls Smi passing DPES // Smi may call MessagePosted, which will send a message up the sink parent chain and save it. // ValueUtils calls ProcessMessagesAndThrow on DPES, which skips handling // ... return up the stack ... // SqlCommand.ExecuteNonQuerySmi calls CES.ProcessMessagesAndThrow, which handles the messages // sent from the Smi value extraction code. // // IMPORTANT: Code that uses the DeferedProccess event sink is responsible for ensuring that // these messages ARE processed at some point. internal class SmiEventSink_DeferedProcessing : SmiEventSink_Default { internal SmiEventSink_DeferedProcessing ( SmiEventSink parent ) : base(parent) { } protected override void DispatchMessages(bool ignoreNonFatalMessages) { // Skip processing messages. Since messages are sent to parent and calling code will call // ProcessMessages against parent, messages ARE NOT LOST! } } } // 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
- Crc32.cs
- WebSysDisplayNameAttribute.cs
- ApplicationManager.cs
- ButtonBase.cs
- PublishLicense.cs
- AuthorizationPolicyTypeElement.cs
- HttpWebRequest.cs
- MultiSelectRootGridEntry.cs
- InstanceNormalEvent.cs
- ClockController.cs
- FusionWrap.cs
- WindowsFont.cs
- C14NUtil.cs
- Int16Converter.cs
- ResourceReferenceExpressionConverter.cs
- BamlCollectionHolder.cs
- HttpListener.cs
- XXXInfos.cs
- ReachVisualSerializer.cs
- VersionValidator.cs
- MarginsConverter.cs
- dbdatarecord.cs
- WebEvents.cs
- DBSqlParserColumnCollection.cs
- XMLUtil.cs
- TableRow.cs
- XamlWriter.cs
- MatrixTransform.cs
- ModelService.cs
- BitmapEffectGroup.cs
- NumberSubstitution.cs
- BooleanKeyFrameCollection.cs
- SecurityDescriptor.cs
- ServerValidateEventArgs.cs
- ParameterCollectionEditorForm.cs
- PEFileEvidenceFactory.cs
- _NetRes.cs
- EntityCollection.cs
- FontWeight.cs
- UIElement3D.cs
- BaseCollection.cs
- MembershipUser.cs
- UserControl.cs
- DataKeyArray.cs
- Events.cs
- Soap11ServerProtocol.cs
- TextElement.cs
- SecurityManager.cs
- CodeIndexerExpression.cs
- ApplicationActivator.cs
- DSASignatureFormatter.cs
- HostSecurityManager.cs
- DesignerDataSourceView.cs
- securitycriticaldata.cs
- SyndicationFeed.cs
- SrgsElement.cs
- PropertyValueChangedEvent.cs
- GlobalItem.cs
- StateDesigner.CommentLayoutGlyph.cs
- IConvertible.cs
- RoleGroup.cs
- Activator.cs
- SelectionItemPattern.cs
- WinEventWrap.cs
- EventlogProvider.cs
- CodeParameterDeclarationExpression.cs
- GeneralTransform3D.cs
- HttpGetProtocolImporter.cs
- RectAnimationClockResource.cs
- DataBoundLiteralControl.cs
- XmlDocument.cs
- XmlValidatingReaderImpl.cs
- SQLByte.cs
- ISessionStateStore.cs
- RepeatBehavior.cs
- assemblycache.cs
- WebPartConnection.cs
- GridViewPageEventArgs.cs
- HasCopySemanticsAttribute.cs
- AdPostCacheSubstitution.cs
- MemoryFailPoint.cs
- UndoManager.cs
- Point3DKeyFrameCollection.cs
- Vector3DKeyFrameCollection.cs
- PointHitTestParameters.cs
- Assert.cs
- ManualResetEvent.cs
- TrustLevelCollection.cs
- FormViewUpdateEventArgs.cs
- RenderDataDrawingContext.cs
- NullReferenceException.cs
- ProfileService.cs
- DesignerResources.cs
- NetWebProxyFinder.cs
- NullRuntimeConfig.cs
- HtmlControl.cs
- QilNode.cs
- HtmlInputControl.cs
- VersionedStream.cs
- BufferModesCollection.cs