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
- StringCollection.cs
- EnumUnknown.cs
- RouteParser.cs
- HostVisual.cs
- TextRunCacheImp.cs
- CommandHelpers.cs
- FontFamilyValueSerializer.cs
- ConstraintManager.cs
- Type.cs
- Opcode.cs
- StateChangeEvent.cs
- TransactedBatchingElement.cs
- RegistryPermission.cs
- Visual3DCollection.cs
- XmlNodeWriter.cs
- FormViewActionList.cs
- PtsCache.cs
- Group.cs
- TextHintingModeValidation.cs
- UpdateManifestForBrowserApplication.cs
- DateTimeOffsetAdapter.cs
- ACE.cs
- LinqDataSourceHelper.cs
- ReceiveDesigner.xaml.cs
- Calendar.cs
- OutputCacheModule.cs
- PresentationUIStyleResources.cs
- CollectionConverter.cs
- MetadataHelper.cs
- PropertyToken.cs
- OptionUsage.cs
- ConstNode.cs
- StoreContentChangedEventArgs.cs
- DataControlFieldTypeEditor.cs
- PersonalizationAdministration.cs
- DataGridViewCellCollection.cs
- SecurityPermission.cs
- ContextMenuStrip.cs
- JpegBitmapDecoder.cs
- XmlDataSourceView.cs
- EntityProxyFactory.cs
- PerformanceCounterManager.cs
- SiteOfOriginContainer.cs
- ListBoxChrome.cs
- LowerCaseStringConverter.cs
- MeasurementDCInfo.cs
- QilCloneVisitor.cs
- SymLanguageType.cs
- ZipIOLocalFileDataDescriptor.cs
- ApplyImportsAction.cs
- Expressions.cs
- LiteralTextParser.cs
- _SafeNetHandles.cs
- DetailsViewRowCollection.cs
- FormsAuthenticationConfiguration.cs
- SortableBindingList.cs
- TextEndOfSegment.cs
- Stackframe.cs
- XmlArrayItemAttribute.cs
- DataGridPagerStyle.cs
- ImportContext.cs
- SqlParameterCollection.cs
- CodeStatement.cs
- DockPattern.cs
- TextEditorThreadLocalStore.cs
- CmsUtils.cs
- PageHandlerFactory.cs
- Unit.cs
- WinEventWrap.cs
- WebPartsSection.cs
- LinearKeyFrames.cs
- UIPermission.cs
- SqlMethodAttribute.cs
- HtmlControl.cs
- MenuItemAutomationPeer.cs
- SqlErrorCollection.cs
- Logging.cs
- EndEvent.cs
- SqlMethodCallConverter.cs
- BitmapEffect.cs
- SchemaRegistration.cs
- FamilyMap.cs
- XsltFunctions.cs
- AssemblyNameUtility.cs
- SerializerWriterEventHandlers.cs
- DynamicMethod.cs
- HitTestWithPointDrawingContextWalker.cs
- XsltSettings.cs
- WebBrowsableAttribute.cs
- OutKeywords.cs
- NativeMethods.cs
- ToolStripManager.cs
- StrongNamePublicKeyBlob.cs
- BezierSegment.cs
- DateTimeConverter.cs
- BridgeDataReader.cs
- ComAdminWrapper.cs
- IndexedGlyphRun.cs
- ColorConvertedBitmapExtension.cs
- EncoderParameter.cs