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
- ProjectionPathSegment.cs
- DispatcherEventArgs.cs
- ActivityInstanceMap.cs
- BamlBinaryReader.cs
- arabicshape.cs
- HostingPreferredMapPath.cs
- SetIndexBinder.cs
- InputBindingCollection.cs
- MaskedTextBox.cs
- complextypematerializer.cs
- ObjectManager.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- InternalRelationshipCollection.cs
- DocumentsTrace.cs
- ScrollProviderWrapper.cs
- PropertySourceInfo.cs
- TcpProcessProtocolHandler.cs
- BindingsCollection.cs
- DBConnection.cs
- XmlnsCompatibleWithAttribute.cs
- DataGridViewDataConnection.cs
- SrgsElementFactoryCompiler.cs
- PenContexts.cs
- IteratorDescriptor.cs
- SQLMoneyStorage.cs
- ETagAttribute.cs
- ErrorFormatterPage.cs
- DesignerValidatorAdapter.cs
- JapaneseLunisolarCalendar.cs
- Closure.cs
- TypeExtension.cs
- XmlTextAttribute.cs
- TextContainer.cs
- EventLogPermissionEntry.cs
- TypefaceCollection.cs
- BuildResultCache.cs
- IgnoreFileBuildProvider.cs
- XmlUnspecifiedAttribute.cs
- AspProxy.cs
- InvalidateEvent.cs
- HttpResponse.cs
- StringReader.cs
- Pkcs9Attribute.cs
- ResourceDisplayNameAttribute.cs
- StringValidatorAttribute.cs
- MdiWindowListItemConverter.cs
- PeerNodeAddress.cs
- SecurityTokenValidationException.cs
- DtrList.cs
- SqlDataSourceConnectionPanel.cs
- odbcmetadatacolumnnames.cs
- ITextView.cs
- AsyncMethodInvoker.cs
- oledbconnectionstring.cs
- JavaScriptString.cs
- StylusButtonCollection.cs
- DetailsViewRowCollection.cs
- HybridDictionary.cs
- RegexCharClass.cs
- CacheSection.cs
- QuotedStringFormatReader.cs
- TableLayoutPanelCodeDomSerializer.cs
- CommonDialog.cs
- brushes.cs
- OdbcDataReader.cs
- TypedDataSourceCodeGenerator.cs
- figurelengthconverter.cs
- WithStatement.cs
- Stream.cs
- SqlParameterizer.cs
- Brush.cs
- ReachFixedPageSerializer.cs
- AccessDataSource.cs
- StateWorkerRequest.cs
- PathGeometry.cs
- EntryPointNotFoundException.cs
- CharEnumerator.cs
- StylusPoint.cs
- AccessorTable.cs
- ProcessThreadDesigner.cs
- SessionStateSection.cs
- filewebresponse.cs
- SortableBindingList.cs
- LocalizabilityAttribute.cs
- SerializerDescriptor.cs
- GeneralTransform3DGroup.cs
- PropertyIDSet.cs
- RuleInfoComparer.cs
- RealizationContext.cs
- MailDefinition.cs
- sqlstateclientmanager.cs
- DataGridViewDesigner.cs
- FileInfo.cs
- OdbcCommand.cs
- QueryStringHandler.cs
- ButtonChrome.cs
- QueryTask.cs
- KnownBoxes.cs
- DockPatternIdentifiers.cs
- Int64Animation.cs