Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Data / Microsoft / SqlServer / Server / SmiSettersStream.cs / 1 / SmiSettersStream.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- namespace Microsoft.SqlServer.Server { using System; using System.Data.Common; using System.Data.SqlClient; using System.Diagnostics; using System.IO; internal class SmiSettersStream : Stream { private SmiEventSink_Default _sink; private ITypedSettersV3 _setters; private int _ordinal; private long _lengthWritten; private SmiMetaData _metaData; internal SmiSettersStream( SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, SmiMetaData metaData ) { Debug.Assert( null != sink ); Debug.Assert( null != setters ); Debug.Assert( 0 <= ordinal ); Debug.Assert( null != metaData ); _sink = sink; _setters = setters; _ordinal = ordinal; _lengthWritten = 0; _metaData = metaData; } public override bool CanRead { get { return false; } } // If CanSeek is false, Position, Seek, Length, and SetLength should throw. public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return true; } } public override long Length { get { return _lengthWritten; } } public override long Position { get { return _lengthWritten; } set { throw SQL.StreamSeekNotSupported(); } } public override void Flush() { _lengthWritten = ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, _lengthWritten); } public override long Seek(long offset, SeekOrigin origin) { throw SQL.StreamSeekNotSupported(); } public override void SetLength(long value) { if ( value < 0 ) { throw ADP.ArgumentOutOfRange("value"); } ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, value); } public override int Read(byte[] buffer, int offset, int count) { throw SQL.StreamReadNotSupported(); } public override void Write(byte[] buffer, int offset, int count) { _lengthWritten += ValueUtilsSmi.SetBytes(_sink, _setters, _ordinal, _metaData, _lengthWritten, buffer, offset, count); } } } // 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.Data.SqlClient; using System.Diagnostics; using System.IO; internal class SmiSettersStream : Stream { private SmiEventSink_Default _sink; private ITypedSettersV3 _setters; private int _ordinal; private long _lengthWritten; private SmiMetaData _metaData; internal SmiSettersStream( SmiEventSink_Default sink, ITypedSettersV3 setters, int ordinal, SmiMetaData metaData ) { Debug.Assert( null != sink ); Debug.Assert( null != setters ); Debug.Assert( 0 <= ordinal ); Debug.Assert( null != metaData ); _sink = sink; _setters = setters; _ordinal = ordinal; _lengthWritten = 0; _metaData = metaData; } public override bool CanRead { get { return false; } } // If CanSeek is false, Position, Seek, Length, and SetLength should throw. public override bool CanSeek { get { return false; } } public override bool CanWrite { get { return true; } } public override long Length { get { return _lengthWritten; } } public override long Position { get { return _lengthWritten; } set { throw SQL.StreamSeekNotSupported(); } } public override void Flush() { _lengthWritten = ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, _lengthWritten); } public override long Seek(long offset, SeekOrigin origin) { throw SQL.StreamSeekNotSupported(); } public override void SetLength(long value) { if ( value < 0 ) { throw ADP.ArgumentOutOfRange("value"); } ValueUtilsSmi.SetBytesLength(_sink, _setters, _ordinal, _metaData, value); } public override int Read(byte[] buffer, int offset, int count) { throw SQL.StreamReadNotSupported(); } public override void Write(byte[] buffer, int offset, int count) { _lengthWritten += ValueUtilsSmi.SetBytes(_sink, _setters, _ordinal, _metaData, _lengthWritten, buffer, offset, count); } } } // 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
- ProtocolsConfigurationEntry.cs
- CheckoutException.cs
- HiddenFieldDesigner.cs
- PrintControllerWithStatusDialog.cs
- IdSpace.cs
- PowerStatus.cs
- ThreadStartException.cs
- AnonymousIdentificationModule.cs
- StateBag.cs
- RtfToXamlLexer.cs
- XmlValidatingReader.cs
- XPathSelectionIterator.cs
- SQLDecimal.cs
- MessageSecurityOverHttp.cs
- PartitionResolver.cs
- TextReader.cs
- ListViewItemSelectionChangedEvent.cs
- OperationCanceledException.cs
- ChtmlTextWriter.cs
- OleDbDataReader.cs
- XPathDocumentBuilder.cs
- ISAPIWorkerRequest.cs
- DispatcherFrame.cs
- Form.cs
- StubHelpers.cs
- SecurityIdentifierElement.cs
- StateInitialization.cs
- ArithmeticException.cs
- GetPageNumberCompletedEventArgs.cs
- FontCacheLogic.cs
- HtmlToClrEventProxy.cs
- EntityContainerAssociationSetEnd.cs
- DataFieldConverter.cs
- PrintingPermission.cs
- PageThemeParser.cs
- SmtpLoginAuthenticationModule.cs
- DataGridTemplateColumn.cs
- UriTemplateLiteralPathSegment.cs
- XmlSchemaImport.cs
- _BaseOverlappedAsyncResult.cs
- CodeTypeReference.cs
- SafeProcessHandle.cs
- FreeFormDragDropManager.cs
- TextTreeTextElementNode.cs
- CDSsyncETWBCLProvider.cs
- TableLayoutPanelBehavior.cs
- ArrangedElement.cs
- EngineSite.cs
- ProcessManager.cs
- EntityDesignerBuildProvider.cs
- COM2ExtendedBrowsingHandler.cs
- TranslateTransform.cs
- SiteMapDataSourceView.cs
- XmlBaseWriter.cs
- ValidatorUtils.cs
- WebPartHelpVerb.cs
- ToolStripManager.cs
- StateMachine.cs
- XhtmlBasicCommandAdapter.cs
- NavigationFailedEventArgs.cs
- ILGen.cs
- MimeMultiPart.cs
- MimeBasePart.cs
- CharEntityEncoderFallback.cs
- ConfigXmlComment.cs
- ExpressionVisitor.cs
- XmlNavigatorFilter.cs
- Variant.cs
- Equal.cs
- BasicViewGenerator.cs
- PolyBezierSegment.cs
- DataGridViewSelectedCellCollection.cs
- ReadWriteSpinLock.cs
- SourceInterpreter.cs
- ConfigXmlElement.cs
- ConstantSlot.cs
- Sql8ExpressionRewriter.cs
- ValueType.cs
- XmlStreamStore.cs
- AssemblyCache.cs
- DoubleStorage.cs
- XmlCharCheckingReader.cs
- XmlSchemaAttributeGroupRef.cs
- WindowsStreamSecurityUpgradeProvider.cs
- DataTableExtensions.cs
- SignedInfo.cs
- OlePropertyStructs.cs
- ScalarOps.cs
- DateTimeFormatInfoScanner.cs
- CommandField.cs
- IIS7WorkerRequest.cs
- DataPagerFieldCommandEventArgs.cs
- ContentWrapperAttribute.cs
- NotFiniteNumberException.cs
- CategoryState.cs
- SqlCharStream.cs
- DataGridViewCellEventArgs.cs
- ProtocolsConfigurationHandler.cs
- TextSelectionHelper.cs
- XmlAggregates.cs