Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiConnection.cs / 1305376 / SmiConnection.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data; internal abstract class SmiConnection : IDisposable { // // Miscellaneous directives / accessors // internal abstract string GetCurrentDatabase( SmiEventSink eventSink ); internal abstract void SetCurrentDatabase ( string databaseName, SmiEventSink eventSink ); // // IDisposable // public virtual void Dispose( ) { // Obsoleting from SMI -- use Close( SmiEventSink ) instead. // Intended to be removed (along with inheriting IDisposable) prior to RTM. // 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 V3+ and dropped support for V2-. // 2) Server didn't implement V2- on some interface and negotiated V2-. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); } public virtual void Close( SmiEventSink eventSink ) { // 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 on some interface, but negotiated V3+. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); } // // Transaction API (should we encapsulate in it's own class or interface?) // internal abstract void BeginTransaction ( string name, IsolationLevel level, SmiEventSink eventSink ); internal abstract void CommitTransaction ( long transactionId, SmiEventSink eventSink ); internal abstract void CreateTransactionSavePoint ( long transactionId, string name, SmiEventSink eventSink ); internal abstract byte[] GetDTCAddress( // better buffer management needed? I.e. non-allocating call needed/possible? SmiEventSink eventSink ); internal abstract void EnlistTransaction ( byte[] token, // better buffer management needed? I.e. non-allocating call needed/possible? SmiEventSink eventSink ); internal abstract byte[] PromoteTransaction ( // better buffer management needed? I.e. non-allocating call needed/possible? long transactionId, SmiEventSink eventSink ); internal abstract void RollbackTransaction ( long transactionId, string savePointName, // only roll back to save point if name non-null SmiEventSink eventSink ); } } // 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; internal abstract class SmiConnection : IDisposable { // // Miscellaneous directives / accessors // internal abstract string GetCurrentDatabase( SmiEventSink eventSink ); internal abstract void SetCurrentDatabase ( string databaseName, SmiEventSink eventSink ); // // IDisposable // public virtual void Dispose( ) { // Obsoleting from SMI -- use Close( SmiEventSink ) instead. // Intended to be removed (along with inheriting IDisposable) prior to RTM. // 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 V3+ and dropped support for V2-. // 2) Server didn't implement V2- on some interface and negotiated V2-. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); } public virtual void Close( SmiEventSink eventSink ) { // 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 on some interface, but negotiated V3+. System.Data.Common.ADP.InternalError( System.Data.Common.ADP.InternalErrorCode.UnimplementedSMIMethod ); } // // Transaction API (should we encapsulate in it's own class or interface?) // internal abstract void BeginTransaction ( string name, IsolationLevel level, SmiEventSink eventSink ); internal abstract void CommitTransaction ( long transactionId, SmiEventSink eventSink ); internal abstract void CreateTransactionSavePoint ( long transactionId, string name, SmiEventSink eventSink ); internal abstract byte[] GetDTCAddress( // better buffer management needed? I.e. non-allocating call needed/possible? SmiEventSink eventSink ); internal abstract void EnlistTransaction ( byte[] token, // better buffer management needed? I.e. non-allocating call needed/possible? SmiEventSink eventSink ); internal abstract byte[] PromoteTransaction ( // better buffer management needed? I.e. non-allocating call needed/possible? long transactionId, SmiEventSink eventSink ); internal abstract void RollbackTransaction ( long transactionId, string savePointName, // only roll back to save point if name non-null SmiEventSink eventSink ); } } // 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
- BaseParaClient.cs
- Quaternion.cs
- NativeRightsManagementAPIsStructures.cs
- DesignerView.Commands.cs
- GPRECTF.cs
- HttpServerVarsCollection.cs
- AlternateViewCollection.cs
- PopupRootAutomationPeer.cs
- CompoundFileStreamReference.cs
- Root.cs
- Calendar.cs
- DataBinder.cs
- Currency.cs
- RootAction.cs
- APCustomTypeDescriptor.cs
- FixedBufferAttribute.cs
- serverconfig.cs
- XPathBinder.cs
- DCSafeHandle.cs
- HelpKeywordAttribute.cs
- UIServiceHelper.cs
- LogStream.cs
- DocumentCollection.cs
- CodeArrayIndexerExpression.cs
- ComplexTypeEmitter.cs
- DataGridViewColumnDesigner.cs
- Image.cs
- AssertUtility.cs
- ObjectView.cs
- TextParentUndoUnit.cs
- TableLayoutSettings.cs
- UrlMapping.cs
- ScriptResourceAttribute.cs
- CodeParameterDeclarationExpressionCollection.cs
- TextDecorationCollection.cs
- DynamicContractTypeBuilder.cs
- PackagePart.cs
- ContentElementAutomationPeer.cs
- SecurityTokenProviderContainer.cs
- SystemIPInterfaceProperties.cs
- XmlSchemaSearchPattern.cs
- Win32PrintDialog.cs
- WindowsHyperlink.cs
- Bidi.cs
- HeaderCollection.cs
- ContainerUtilities.cs
- NodeInfo.cs
- WebControlParameterProxy.cs
- EditorZoneDesigner.cs
- CallSiteBinder.cs
- WebServiceEnumData.cs
- ClientRolePrincipal.cs
- TextRunTypographyProperties.cs
- CodeAccessSecurityEngine.cs
- BindingBase.cs
- DataListCommandEventArgs.cs
- SmtpNegotiateAuthenticationModule.cs
- HintTextMaxWidthConverter.cs
- HtmlButton.cs
- DeobfuscatingStream.cs
- RegexStringValidator.cs
- Configuration.cs
- GifBitmapDecoder.cs
- WhileDesigner.xaml.cs
- TreeViewItemAutomationPeer.cs
- RegexCompiler.cs
- VirtualizedItemProviderWrapper.cs
- EventMappingSettingsCollection.cs
- KeyTime.cs
- ConsoleTraceListener.cs
- Globals.cs
- SystemUnicastIPAddressInformation.cs
- DataGridViewLayoutData.cs
- MetaTableHelper.cs
- DbBuffer.cs
- HwndSubclass.cs
- IssuanceLicense.cs
- TextBoxAutoCompleteSourceConverter.cs
- GridViewPageEventArgs.cs
- StrokeCollectionDefaultValueFactory.cs
- TaskFormBase.cs
- WindowsFormsHost.cs
- Zone.cs
- ServiceTimeoutsElement.cs
- HttpListenerTimeoutManager.cs
- WebPartsSection.cs
- ConfigurationSectionGroupCollection.cs
- Pen.cs
- FieldAccessException.cs
- WebBaseEventKeyComparer.cs
- SoapFault.cs
- HtmlDocument.cs
- TemplateBaseAction.cs
- CommandTreeTypeHelper.cs
- LineGeometry.cs
- PrintPreviewControl.cs
- SetUserLanguageRequest.cs
- ZipIOExtraFieldZip64Element.cs
- CodeExpressionRuleDeclaration.cs
- XpsFilter.cs