Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Data / System / Data / SqlClient / SqlClientWrapperSmiStream.cs / 1 / SqlClientWrapperSmiStream.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data.Common; using System.Diagnostics; using System.IO; // Simple wrapper over SmiStream that handles server events on the SqlClient side of Smi internal class SqlClientWrapperSmiStream : Stream { private SmiEventSink_Default _sink; private SmiStream _stream; internal SqlClientWrapperSmiStream( SmiEventSink_Default sink, SmiStream stream ) { Debug.Assert( null != sink ); Debug.Assert( null != stream ); _sink = sink; _stream = stream; } public override bool CanRead { get { return _stream.CanRead; } } // If CanSeek is false, Position, Seek, Length, and SetLength should throw. public override bool CanSeek { get { return _stream.CanSeek; } } public override bool CanWrite { get { return _stream.CanWrite; } } public override long Length { get { long length = _stream.GetLength( _sink ); _sink.ProcessMessagesAndThrow(); return length; } } public override long Position { get { long position = _stream.GetPosition( _sink ); _sink.ProcessMessagesAndThrow(); return position; } set { _stream.SetPosition( _sink, value ); _sink.ProcessMessagesAndThrow(); } } public override void Flush() { _stream.Flush( _sink ); _sink.ProcessMessagesAndThrow(); } public override long Seek(long offset, SeekOrigin origin) { long result = _stream.Seek( _sink, offset, origin ); _sink.ProcessMessagesAndThrow(); return result; } public override void SetLength(long value) { _stream.SetLength( _sink, value ); _sink.ProcessMessagesAndThrow(); } public override int Read(byte[] buffer, int offset, int count) { int bytesRead = _stream.Read( _sink, buffer, offset, count ); _sink.ProcessMessagesAndThrow(); return bytesRead; } public override void Write(byte[] buffer, int offset, int count) { _stream.Write( _sink, buffer, offset, count ); _sink.ProcessMessagesAndThrow(); } } } // 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.Common; using System.Diagnostics; using System.IO; // Simple wrapper over SmiStream that handles server events on the SqlClient side of Smi internal class SqlClientWrapperSmiStream : Stream { private SmiEventSink_Default _sink; private SmiStream _stream; internal SqlClientWrapperSmiStream( SmiEventSink_Default sink, SmiStream stream ) { Debug.Assert( null != sink ); Debug.Assert( null != stream ); _sink = sink; _stream = stream; } public override bool CanRead { get { return _stream.CanRead; } } // If CanSeek is false, Position, Seek, Length, and SetLength should throw. public override bool CanSeek { get { return _stream.CanSeek; } } public override bool CanWrite { get { return _stream.CanWrite; } } public override long Length { get { long length = _stream.GetLength( _sink ); _sink.ProcessMessagesAndThrow(); return length; } } public override long Position { get { long position = _stream.GetPosition( _sink ); _sink.ProcessMessagesAndThrow(); return position; } set { _stream.SetPosition( _sink, value ); _sink.ProcessMessagesAndThrow(); } } public override void Flush() { _stream.Flush( _sink ); _sink.ProcessMessagesAndThrow(); } public override long Seek(long offset, SeekOrigin origin) { long result = _stream.Seek( _sink, offset, origin ); _sink.ProcessMessagesAndThrow(); return result; } public override void SetLength(long value) { _stream.SetLength( _sink, value ); _sink.ProcessMessagesAndThrow(); } public override int Read(byte[] buffer, int offset, int count) { int bytesRead = _stream.Read( _sink, buffer, offset, count ); _sink.ProcessMessagesAndThrow(); return bytesRead; } public override void Write(byte[] buffer, int offset, int count) { _stream.Write( _sink, buffer, offset, count ); _sink.ProcessMessagesAndThrow(); } } } // 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
- ZipPackage.cs
- BitmapSourceSafeMILHandle.cs
- BindValidationContext.cs
- SafeFindHandle.cs
- ItemCollectionEditor.cs
- XPathQilFactory.cs
- CallTemplateAction.cs
- DocumentCollection.cs
- GeometryDrawing.cs
- FormViewCommandEventArgs.cs
- ColorInterpolationModeValidation.cs
- NodeFunctions.cs
- GradientSpreadMethodValidation.cs
- DesignerCategoryAttribute.cs
- Transform3DGroup.cs
- KeyValueConfigurationElement.cs
- DataSourceSelectArguments.cs
- ModifierKeysValueSerializer.cs
- AutoCompleteStringCollection.cs
- TimersDescriptionAttribute.cs
- Trigger.cs
- EntryPointNotFoundException.cs
- DomainConstraint.cs
- SiteMapPath.cs
- FixedSOMPageConstructor.cs
- BrowserDefinitionCollection.cs
- PersistenceTypeAttribute.cs
- ImageCollectionEditor.cs
- StructuredTypeEmitter.cs
- HttpHandlerAction.cs
- DataServiceResponse.cs
- FreezableOperations.cs
- XmlWrappingReader.cs
- WindowsScroll.cs
- Keywords.cs
- SafeHandle.cs
- TreeNodeBindingCollection.cs
- PropertyToken.cs
- UnaryNode.cs
- AuthenticationConfig.cs
- Listbox.cs
- CodeMemberField.cs
- InputLangChangeRequestEvent.cs
- SoapException.cs
- Metafile.cs
- ExpressionEditorAttribute.cs
- MobileTextWriter.cs
- ClientTargetSection.cs
- XmlParserContext.cs
- MediaPlayer.cs
- WebBrowserPermission.cs
- MultiSelectRootGridEntry.cs
- AsyncMethodInvoker.cs
- BaseTemplateParser.cs
- LinkConverter.cs
- SqlVisitor.cs
- XmlCharCheckingReader.cs
- TrackingProfileDeserializationException.cs
- ButtonBaseAutomationPeer.cs
- COM2ExtendedBrowsingHandler.cs
- CompilerError.cs
- LocalBuilder.cs
- FixedSOMGroup.cs
- WebControlsSection.cs
- AsymmetricKeyExchangeFormatter.cs
- MyContact.cs
- EntityViewContainer.cs
- SqlCacheDependencyDatabaseCollection.cs
- ClientSettingsStore.cs
- CellQuery.cs
- URI.cs
- TabItemAutomationPeer.cs
- SerializationEventsCache.cs
- SoapElementAttribute.cs
- PlatformNotSupportedException.cs
- ActivityDesignerResources.cs
- ToolStripOverflowButton.cs
- LinqDataSource.cs
- SuspendDesigner.cs
- BulletChrome.cs
- PointF.cs
- DataGridTextBoxColumn.cs
- Html32TextWriter.cs
- Slider.cs
- RegexGroupCollection.cs
- DebugInfoGenerator.cs
- TransformConverter.cs
- IPHostEntry.cs
- DbConnectionFactory.cs
- TemplateBuilder.cs
- DataControlFieldCell.cs
- WebPartZoneDesigner.cs
- GeneralTransform3DTo2D.cs
- OracleCommand.cs
- GridViewRowCollection.cs
- xmlfixedPageInfo.cs
- WorkflowApplicationCompletedEventArgs.cs
- ChannelServices.cs
- TextSpan.cs
- ScriptServiceAttribute.cs