Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiEventSink_DeferedProcessing.cs / 2 / 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. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MasterPageParser.cs
- ListViewInsertEventArgs.cs
- InputScopeAttribute.cs
- DispatcherEventArgs.cs
- InvokeSchedule.cs
- AnnotationAuthorChangedEventArgs.cs
- CapabilitiesAssignment.cs
- BitHelper.cs
- FlowLayoutSettings.cs
- CompiledXpathExpr.cs
- LoadedOrUnloadedOperation.cs
- PriorityRange.cs
- LoginView.cs
- SchemaCollectionPreprocessor.cs
- RewritingValidator.cs
- DataGridItemCollection.cs
- UpdateInfo.cs
- PageHandlerFactory.cs
- HtmlControlPersistable.cs
- MetafileHeaderWmf.cs
- _ListenerResponseStream.cs
- cache.cs
- Assert.cs
- CryptoProvider.cs
- PagedControl.cs
- HandlerFactoryWrapper.cs
- AsyncOperationLifetimeManager.cs
- BinaryWriter.cs
- LocationUpdates.cs
- ListView.cs
- __TransparentProxy.cs
- WSFederationHttpBindingElement.cs
- ValueCollectionParameterReader.cs
- NotSupportedException.cs
- serverconfig.cs
- IgnoreFileBuildProvider.cs
- TemplateControlParser.cs
- TreeViewCancelEvent.cs
- CodeCommentStatement.cs
- ListChangedEventArgs.cs
- RegionData.cs
- ProcessManager.cs
- FormsIdentity.cs
- ControlDesignerState.cs
- NullableIntMinMaxAggregationOperator.cs
- ContextMenu.cs
- XmlSerializationWriter.cs
- DataGridViewCellParsingEventArgs.cs
- SerializationSectionGroup.cs
- PasswordBoxAutomationPeer.cs
- FrameworkObject.cs
- Vector3D.cs
- SpecialFolderEnumConverter.cs
- PanelStyle.cs
- HttpDebugHandler.cs
- PopupRootAutomationPeer.cs
- ConnectionStringSettings.cs
- BaseProcessor.cs
- LineGeometry.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs
- PropertyGrid.cs
- PreviewKeyDownEventArgs.cs
- MdiWindowListStrip.cs
- StringArrayConverter.cs
- TableHeaderCell.cs
- GlobalizationSection.cs
- SmiEventSink.cs
- ItemDragEvent.cs
- ProfileEventArgs.cs
- PointValueSerializer.cs
- RecordBuilder.cs
- PhysicalAddress.cs
- ResourcePermissionBaseEntry.cs
- SetIndexBinder.cs
- DataGridViewCellPaintingEventArgs.cs
- WebPartCancelEventArgs.cs
- NameValuePermission.cs
- TableLayoutColumnStyleCollection.cs
- UnsafeNativeMethods.cs
- FrameworkContentElement.cs
- SamlSubject.cs
- DataBindingsDialog.cs
- TextServicesCompartment.cs
- SqlMetaData.cs
- StateDesigner.TransitionInfo.cs
- RowType.cs
- ParallelDesigner.cs
- PrtCap_Reader.cs
- CodeAttributeDeclaration.cs
- MailMessageEventArgs.cs
- NavigatingCancelEventArgs.cs
- SqlGatherConsumedAliases.cs
- DynamicObject.cs
- DelegateArgumentReference.cs
- QueryResult.cs
- ExpandCollapseProviderWrapper.cs
- MappingSource.cs
- WmlSelectionListAdapter.cs
- Light.cs
- VoiceSynthesis.cs