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
- CommandManager.cs
- DesignerCategoryAttribute.cs
- Propagator.JoinPropagator.cs
- FaultPropagationQuery.cs
- AbstractExpressions.cs
- SafeNativeMethodsMilCoreApi.cs
- TrackPointCollection.cs
- ImageAttributes.cs
- MarkupExtensionParser.cs
- GenericArgumentsUpdater.cs
- ContainerActivationHelper.cs
- TemplateControl.cs
- VirtualizingPanel.cs
- EventLogPermissionEntry.cs
- DefaultBinder.cs
- WebPartConnectVerb.cs
- ReadOnlyHierarchicalDataSource.cs
- SqlDataSourceTableQuery.cs
- WebPartAddingEventArgs.cs
- CallContext.cs
- Rule.cs
- StateManagedCollection.cs
- BamlMapTable.cs
- CompensationExtension.cs
- Condition.cs
- Camera.cs
- ListBindingConverter.cs
- HtmlShimManager.cs
- SqlGenericUtil.cs
- NamespaceCollection.cs
- SettingsBindableAttribute.cs
- Validator.cs
- DBDataPermission.cs
- DebuggerService.cs
- Container.cs
- XmlSignatureProperties.cs
- FilterElement.cs
- EntityContainerRelationshipSetEnd.cs
- DefaultValueTypeConverter.cs
- DocumentReference.cs
- PageCopyCount.cs
- AsyncResult.cs
- ClearTypeHintValidation.cs
- ParserOptions.cs
- MaterialCollection.cs
- Padding.cs
- PagerSettings.cs
- TypedDatasetGenerator.cs
- WebRequest.cs
- AbandonedMutexException.cs
- BamlBinaryReader.cs
- Accessors.cs
- ImportCatalogPart.cs
- VectorAnimationBase.cs
- ListViewInsertionMark.cs
- MultiAsyncResult.cs
- ZipIOLocalFileBlock.cs
- FloaterBaseParaClient.cs
- ShapingEngine.cs
- QueryValue.cs
- ProfileGroupSettings.cs
- PartitionedStreamMerger.cs
- SmtpNetworkElement.cs
- KeySplineConverter.cs
- DefaultProxySection.cs
- MenuItemStyleCollection.cs
- MailAddress.cs
- MailDefinition.cs
- Random.cs
- _FtpControlStream.cs
- Bold.cs
- FixedSOMPageElement.cs
- CodeMethodInvokeExpression.cs
- XmlRootAttribute.cs
- StagingAreaInputItem.cs
- OleDbWrapper.cs
- SelectionEditingBehavior.cs
- SortDescription.cs
- TrustVersion.cs
- SQLRoleProvider.cs
- PointKeyFrameCollection.cs
- Delegate.cs
- ValueQuery.cs
- NamedObject.cs
- FilterElement.cs
- ScrollViewerAutomationPeer.cs
- MSAAWinEventWrap.cs
- ArithmeticException.cs
- TrackBarRenderer.cs
- OutputCacheSettings.cs
- MenuItemCollection.cs
- ProjectionPathSegment.cs
- FormViewDeletedEventArgs.cs
- Privilege.cs
- DbSetClause.cs
- DataBoundControlDesigner.cs
- DeadCharTextComposition.cs
- EnterpriseServicesHelper.cs
- ToolStripHighContrastRenderer.cs
- QuestionEventArgs.cs