Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiContext.cs / 1305376 / SmiContext.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data; using System.Data.Sql; using System.Data.SqlTypes; using System.Security.Principal; // NOTE: connection, transaction and context pipe operations could be // encapsulated in their own classes, and should if they get complex // (transaction is borderline at this point). internal abstract class SmiContext { internal abstract event EventHandler OutOfScope; internal abstract SmiConnection ContextConnection { get; } internal abstract long ContextTransactionId { get; } internal abstract System.Transactions.Transaction ContextTransaction { get; } internal abstract bool HasContextPipe { get; } internal abstract WindowsIdentity WindowsIdentity { get; } internal abstract SmiRecordBuffer CreateRecordBuffer ( SmiExtendedMetaData[] columnMetaData, // Extended metadata because it requires names, udttypename and xmlschemaname ignored SmiEventSink eventSink ); internal abstract SmiRequestExecutor CreateRequestExecutor ( string commandText, CommandType commandType, SmiParameterMetaData[] parameterMetaData, SmiEventSink eventSink ); // internal abstract object GetContextValue ( int key ); internal abstract void GetTriggerInfo ( SmiEventSink eventSink, out bool[] columnsUpdated, out TriggerAction action, out SqlXml eventInstanceData ); internal abstract void SendMessageToPipe( string message, SmiEventSink eventSink ); internal abstract void SendResultsStartToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SendResultsRowToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SendResultsEndToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SetContextValue ( int key, object value ); // Scratch LOB storage region internal virtual SmiStream GetScratchStream( SmiEventSink sink ) { // Adding as of V3 // Implement body with throw because there are only a couple of ways to get to this code: // 1) Client is calling this method even though the server negotiated for V2- and hasn't implemented V3 yet. // 2) Server didn't implement V3, but negotiated V3+. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); return null; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data; using System.Data.Sql; using System.Data.SqlTypes; using System.Security.Principal; // NOTE: connection, transaction and context pipe operations could be // encapsulated in their own classes, and should if they get complex // (transaction is borderline at this point). internal abstract class SmiContext { internal abstract event EventHandler OutOfScope; internal abstract SmiConnection ContextConnection { get; } internal abstract long ContextTransactionId { get; } internal abstract System.Transactions.Transaction ContextTransaction { get; } internal abstract bool HasContextPipe { get; } internal abstract WindowsIdentity WindowsIdentity { get; } internal abstract SmiRecordBuffer CreateRecordBuffer ( SmiExtendedMetaData[] columnMetaData, // Extended metadata because it requires names, udttypename and xmlschemaname ignored SmiEventSink eventSink ); internal abstract SmiRequestExecutor CreateRequestExecutor ( string commandText, CommandType commandType, SmiParameterMetaData[] parameterMetaData, SmiEventSink eventSink ); // internal abstract object GetContextValue ( int key ); internal abstract void GetTriggerInfo ( SmiEventSink eventSink, out bool[] columnsUpdated, out TriggerAction action, out SqlXml eventInstanceData ); internal abstract void SendMessageToPipe( string message, SmiEventSink eventSink ); internal abstract void SendResultsStartToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SendResultsRowToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SendResultsEndToPipe( SmiRecordBuffer recordBuffer, SmiEventSink eventSink ); internal abstract void SetContextValue ( int key, object value ); // Scratch LOB storage region internal virtual SmiStream GetScratchStream( SmiEventSink sink ) { // Adding as of V3 // Implement body with throw because there are only a couple of ways to get to this code: // 1) Client is calling this method even though the server negotiated for V2- and hasn't implemented V3 yet. // 2) Server didn't implement V3, but negotiated V3+. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); return null; } } } // 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
- DiscoveryInnerClientAdhoc11.cs
- DrawingServices.cs
- SequenceQuery.cs
- FlowDocumentReader.cs
- UrlPath.cs
- ExtensionWindowResizeGrip.cs
- ConnectAlgorithms.cs
- FileSystemEventArgs.cs
- TraceEventCache.cs
- DataSetViewSchema.cs
- ArrayExtension.cs
- StrongNameUtility.cs
- ServiceChannelManager.cs
- Delay.cs
- DataServiceClientException.cs
- IndividualDeviceConfig.cs
- XDeferredAxisSource.cs
- ADMembershipUser.cs
- StylusDownEventArgs.cs
- KeyConverter.cs
- XamlVector3DCollectionSerializer.cs
- RelationshipConverter.cs
- XmlSortKey.cs
- XmlSchemaSequence.cs
- TransformValueSerializer.cs
- Random.cs
- WindowInteropHelper.cs
- RegexReplacement.cs
- ReachFixedPageSerializer.cs
- TextTreeInsertElementUndoUnit.cs
- ConfigXmlComment.cs
- RoleGroup.cs
- ValidationResult.cs
- MemberAccessException.cs
- EncryptedReference.cs
- SemanticTag.cs
- DataConnectionHelper.cs
- SaveFileDialog.cs
- Tuple.cs
- LinearKeyFrames.cs
- SessionStateUtil.cs
- Documentation.cs
- DataGridViewCellPaintingEventArgs.cs
- ManagementObjectSearcher.cs
- StringReader.cs
- DesignColumnCollection.cs
- LinqMaximalSubtreeNominator.cs
- InstanceLockException.cs
- AutoGeneratedField.cs
- MemberDescriptor.cs
- ThreadAttributes.cs
- BidPrivateBase.cs
- SqlClientWrapperSmiStream.cs
- Types.cs
- ParseChildrenAsPropertiesAttribute.cs
- PropertyGrid.cs
- HotSpotCollection.cs
- CommandID.cs
- SchemaElementDecl.cs
- UserControlParser.cs
- TextDecorationCollectionConverter.cs
- LinkAreaEditor.cs
- HtmlInputText.cs
- ObjectIDGenerator.cs
- Table.cs
- ButtonFlatAdapter.cs
- ChunkedMemoryStream.cs
- hebrewshape.cs
- ControlUtil.cs
- RequestQueryParser.cs
- UpdatePanelTriggerCollection.cs
- TextSyndicationContentKindHelper.cs
- ButtonFlatAdapter.cs
- QueryAccessibilityHelpEvent.cs
- PassportIdentity.cs
- SrgsGrammarCompiler.cs
- DataSetSchema.cs
- SafeBitVector32.cs
- FontSizeConverter.cs
- CodeCommentStatement.cs
- Property.cs
- BitmapEffectInputConnector.cs
- ErrorsHelper.cs
- ACE.cs
- ProfileBuildProvider.cs
- UnsupportedPolicyOptionsException.cs
- DynamicEndpointElement.cs
- Queue.cs
- SQLChars.cs
- DESCryptoServiceProvider.cs
- ListControlBuilder.cs
- TextDecorationLocationValidation.cs
- FieldInfo.cs
- LightweightCodeGenerator.cs
- ReadOnlyHierarchicalDataSourceView.cs
- CodePageEncoding.cs
- SetIndexBinder.cs
- TransformerConfigurationWizardBase.cs
- ArrayElementGridEntry.cs
- DbConnectionPoolGroupProviderInfo.cs