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
- TransformationRules.cs
- AutomationPatternInfo.cs
- ContainerUIElement3D.cs
- ExternalDataExchangeClient.cs
- SoapRpcServiceAttribute.cs
- Ref.cs
- TraceSection.cs
- TextFormattingConverter.cs
- PreloadedPackages.cs
- Msec.cs
- MonthChangedEventArgs.cs
- Help.cs
- ManipulationStartingEventArgs.cs
- SystemPens.cs
- FilteredAttributeCollection.cs
- Wizard.cs
- CompilerGlobalScopeAttribute.cs
- FlagPanel.cs
- TransformGroup.cs
- DatasetMethodGenerator.cs
- DataControlField.cs
- FixedSOMTable.cs
- ArgIterator.cs
- XComponentModel.cs
- EntityCommandDefinition.cs
- SelfIssuedSamlTokenFactory.cs
- Part.cs
- NotifyInputEventArgs.cs
- XamlFilter.cs
- ValidationResult.cs
- SQLRoleProvider.cs
- SiteIdentityPermission.cs
- ToolStripItem.cs
- LabelEditEvent.cs
- SchemaImporterExtensionElementCollection.cs
- RepeaterCommandEventArgs.cs
- IdentityReference.cs
- DetailsViewModeEventArgs.cs
- XomlDesignerLoader.cs
- DataViewListener.cs
- ConfigXmlText.cs
- SiteMapDataSource.cs
- PersistenceTypeAttribute.cs
- RegexTree.cs
- EventLogPermissionEntryCollection.cs
- NameValuePermission.cs
- XmlReflectionMember.cs
- BamlTreeMap.cs
- CodeSubDirectory.cs
- GregorianCalendarHelper.cs
- FileLevelControlBuilderAttribute.cs
- WSSecurityJan2004.cs
- AuthorizationRuleCollection.cs
- InputGestureCollection.cs
- LabelDesigner.cs
- SchemaMapping.cs
- DesignerDataSchemaClass.cs
- CompiledRegexRunner.cs
- QueueProcessor.cs
- DomainLiteralReader.cs
- XmlSchemaImporter.cs
- LiteralControl.cs
- GlobalAclOperationRequirement.cs
- DBConnectionString.cs
- LabelEditEvent.cs
- BaseResourcesBuildProvider.cs
- ScrollItemProviderWrapper.cs
- XsdDataContractExporter.cs
- Utils.cs
- DataColumnChangeEvent.cs
- ToolStripDropDownClosedEventArgs.cs
- SafeCryptoHandles.cs
- IListConverters.cs
- CodeMemberProperty.cs
- IISMapPath.cs
- MessageEncoderFactory.cs
- SafeThemeHandle.cs
- mda.cs
- SpellerStatusTable.cs
- DataGridHelper.cs
- Roles.cs
- EntityDataSourceSelectingEventArgs.cs
- DataGridViewTextBoxEditingControl.cs
- WebPartDeleteVerb.cs
- FixedLineResult.cs
- VolatileEnlistmentMultiplexing.cs
- RootBuilder.cs
- EmptyEnumerator.cs
- ConfigurationHelpers.cs
- CodeVariableReferenceExpression.cs
- DataGridViewBand.cs
- XmlDocument.cs
- ZipIOCentralDirectoryFileHeader.cs
- BinaryFormatterWriter.cs
- OnOperation.cs
- XmlSchemaExporter.cs
- ToolStripAdornerWindowService.cs
- Material.cs
- StylusSystemGestureEventArgs.cs
- QilUnary.cs