Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FastPropertyAccessor.cs
- SmtpNegotiateAuthenticationModule.cs
- AjaxFrameworkAssemblyAttribute.cs
- QilPatternVisitor.cs
- documentsequencetextcontainer.cs
- PersonalizationDictionary.cs
- ResourceSet.cs
- ControlAdapter.cs
- XmlAttributeAttribute.cs
- EntityUtil.cs
- DelegatingConfigHost.cs
- Formatter.cs
- ObjectDataSourceView.cs
- NameValueSectionHandler.cs
- SpoolingTaskBase.cs
- UnaryOperationBinder.cs
- UpdateExpressionVisitor.cs
- BuildProviderCollection.cs
- SqlAggregateChecker.cs
- SimpleWebHandlerParser.cs
- PaperSource.cs
- AccessViolationException.cs
- WorkflowTraceTransfer.cs
- Trace.cs
- TimeoutValidationAttribute.cs
- PropertyInfoSet.cs
- KeyEvent.cs
- SmiXetterAccessMap.cs
- ListBindingConverter.cs
- InputLanguageEventArgs.cs
- TextTreeTextNode.cs
- OpenFileDialog.cs
- BitmapEffectGroup.cs
- PathGeometry.cs
- CompiledXpathExpr.cs
- COM2IPerPropertyBrowsingHandler.cs
- BindingSource.cs
- XmlReader.cs
- CustomSignedXml.cs
- FunctionUpdateCommand.cs
- BlockCollection.cs
- CultureInfo.cs
- VariantWrapper.cs
- GenericTextProperties.cs
- ToolStripSettings.cs
- TextViewSelectionProcessor.cs
- FontNamesConverter.cs
- Config.cs
- CodeNamespace.cs
- IItemContainerGenerator.cs
- Exception.cs
- BaseDataBoundControl.cs
- EndpointAddressProcessor.cs
- LogFlushAsyncResult.cs
- PassportIdentity.cs
- CustomAttributeSerializer.cs
- DataGridColumnHeader.cs
- SocketCache.cs
- DescendantBaseQuery.cs
- DataGridViewLinkCell.cs
- FixedPageAutomationPeer.cs
- EventMappingSettings.cs
- DataGridViewCellStyleConverter.cs
- DesignerRegion.cs
- MatrixValueSerializer.cs
- InvalidPropValue.cs
- DataGridHelper.cs
- FactoryGenerator.cs
- ProtocolsSection.cs
- WinHttpWebProxyFinder.cs
- Keywords.cs
- thaishape.cs
- XmlNode.cs
- SafeNativeMemoryHandle.cs
- DodSequenceMerge.cs
- IncrementalCompileAnalyzer.cs
- SeekableReadStream.cs
- SqlNotificationEventArgs.cs
- QueryOptionExpression.cs
- VirtualPath.cs
- XmlSerializerAssemblyAttribute.cs
- TabRenderer.cs
- TemplatePropertyEntry.cs
- ClosureBinding.cs
- DiscoveryInnerClientManaged11.cs
- X509RawDataKeyIdentifierClause.cs
- SqlPersonalizationProvider.cs
- ExtendedPropertyCollection.cs
- DataTableExtensions.cs
- DataTableCollection.cs
- ImageList.cs
- WebPageTraceListener.cs
- VisualCollection.cs
- TextServicesDisplayAttributePropertyRanges.cs
- CapiSymmetricAlgorithm.cs
- MissingMemberException.cs
- AliasGenerator.cs
- BaseHashHelper.cs
- CustomLineCap.cs
- Positioning.cs