Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / tx / System / Transactions / Trace / PlainXmlWriter.cs / 1305376 / PlainXmlWriter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // Very basic performance-oriented XmlWriter implementation. No validation/encoding is made. // Namespaces are not supported // Minimal formatting support //----------------------------------------------------------------------------- namespace System.Transactions.Diagnostics { using System; using System.Collections.Generic; using System.Diagnostics; using System.Globalization; using System.IO; using System.Text; using System.Xml; using System.Xml.XPath; ////// Writes out plain xml as fast as possible /// internal class PlainXmlWriter : XmlWriter { TraceXPathNavigator navigator; Stackstack; bool writingAttribute = false; string currentAttributeName; string currentAttributePrefix; string currentAttributeNs; bool format; public PlainXmlWriter(bool format) { this.navigator = new TraceXPathNavigator(); this.stack = new Stack (); this.format = format; } public PlainXmlWriter() : this (false) { } public XPathNavigator ToNavigator() { return this.navigator; } public override void WriteStartDocument() {} public override void WriteDocType(string name, string pubid, string sysid, string subset) {} public override void WriteStartDocument(bool standalone) { throw new NotSupportedException(); } public override void WriteEndDocument() { throw new NotSupportedException(); } public override string LookupPrefix( string ns ) { throw new NotSupportedException(); } public override WriteState WriteState { get { throw new NotSupportedException(); } } public override XmlSpace XmlSpace { get { throw new NotSupportedException(); } } public override string XmlLang { get { throw new NotSupportedException(); } } public override void WriteNmToken( string name ) { throw new NotSupportedException(); } public override void WriteName( string name ) { throw new NotSupportedException(); } public override void WriteQualifiedName( string localName, string ns ) { throw new NotSupportedException(); } public override void WriteValue( object value ) { this.navigator.AddText(value.ToString()); } public override void WriteValue( string value ) { this.navigator.AddText(value); } public override void WriteBase64(byte[] buffer, int offset, int count) {} public override void WriteStartElement(string prefix, string localName, string ns) { Debug.Assert( localName != null && localName.Length > 0 ); this.navigator.AddElement(prefix, localName, ns); } public override void WriteFullEndElement() { WriteEndElement(); } public override void WriteEndElement() { this.navigator.CloseElement(); } public override void WriteStartAttribute(string prefix, string localName, string ns) { Debug.Assert(!this.writingAttribute); this.currentAttributeName = localName; this.currentAttributePrefix = prefix; this.currentAttributeNs = ns; this.writingAttribute = true; } public override void WriteEndAttribute() { Debug.Assert(this.writingAttribute); this.writingAttribute = false; } public override void WriteCData(string text) { throw new NotSupportedException(); } public override void WriteComment(string text) { throw new NotSupportedException(); } public override void WriteProcessingInstruction(string name, string text) { throw new NotSupportedException(); } public override void WriteEntityRef(string name) { throw new NotSupportedException(); } public override void WriteCharEntity(char ch) { throw new NotSupportedException(); } public override void WriteSurrogateCharEntity(char lowChar, char highChar) { throw new NotSupportedException(); } public override void WriteWhitespace(string ws) { throw new NotSupportedException(); } public override void WriteString(string text) { if (this.writingAttribute) { this.navigator.AddAttribute(this.currentAttributeName, text, this.currentAttributeNs, this.currentAttributePrefix); } else { this.WriteValue(text); } } public override void WriteChars(Char[] buffer, int index, int count) { throw new NotSupportedException(); } public override void WriteRaw(String data) { //assumed preformatted with a newline at the end throw new NotSupportedException(); } public override void WriteRaw(Char[] buffer, int index, int count) { throw new NotSupportedException(); } public override void WriteBinHex(byte[] buffer, int index, int count) { throw new NotSupportedException(); } public override void Close() { } public override void Flush() { } } } // 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
- XmlAtomicValue.cs
- Base64Encoder.cs
- HttpPostedFile.cs
- OpenTypeLayoutCache.cs
- FilterQuery.cs
- ActivityStateQuery.cs
- StylusPointPropertyInfo.cs
- WeakReadOnlyCollection.cs
- TypeReference.cs
- DropShadowBitmapEffect.cs
- NamespaceQuery.cs
- RedistVersionInfo.cs
- ValueTypeFixupInfo.cs
- EnumType.cs
- WebPartUserCapability.cs
- XmlReader.cs
- TimeSpanValidator.cs
- ResourcesChangeInfo.cs
- InvokeDelegate.cs
- CapabilitiesRule.cs
- _SslState.cs
- DataGridState.cs
- BrowserDefinition.cs
- DataGridBoolColumn.cs
- DateTimeFormatInfoScanner.cs
- RefreshEventArgs.cs
- FloaterParaClient.cs
- RegexMatchCollection.cs
- TextElementCollection.cs
- DataPagerCommandEventArgs.cs
- UInt64Converter.cs
- SoapEnumAttribute.cs
- SqlTypeConverter.cs
- TypeConverterBase.cs
- Thread.cs
- Equal.cs
- Converter.cs
- ComponentCommands.cs
- ToolBarButton.cs
- ItemChangedEventArgs.cs
- PropertyEmitterBase.cs
- GetPageNumberCompletedEventArgs.cs
- XpsViewerException.cs
- WebConfigurationFileMap.cs
- WebPartZoneCollection.cs
- HighlightVisual.cs
- MemberMaps.cs
- COM2FontConverter.cs
- ResourceDescriptionAttribute.cs
- MemberInfoSerializationHolder.cs
- DesignColumn.cs
- TreeViewBindingsEditor.cs
- baseaxisquery.cs
- ProviderIncompatibleException.cs
- HMAC.cs
- UIHelper.cs
- TextReader.cs
- VisualStyleElement.cs
- Clause.cs
- AnnotationDocumentPaginator.cs
- UIPropertyMetadata.cs
- ClrPerspective.cs
- Application.cs
- EndOfStreamException.cs
- WindowsStatic.cs
- NavigationHelper.cs
- SqlDesignerDataSourceView.cs
- CollectionViewGroupRoot.cs
- LinkedResource.cs
- IntegerValidatorAttribute.cs
- BulletChrome.cs
- MimeMultiPart.cs
- SqlNotificationEventArgs.cs
- DBBindings.cs
- BufferBuilder.cs
- ResourceWriter.cs
- ChannelBinding.cs
- BmpBitmapDecoder.cs
- XamlPointCollectionSerializer.cs
- CalendarKeyboardHelper.cs
- ReadOnlyDictionary.cs
- ResourceFallbackManager.cs
- VirtualPathProvider.cs
- XmlWellformedWriter.cs
- Visual.cs
- SeparatorAutomationPeer.cs
- WindowsFormsHelpers.cs
- HeaderedContentControl.cs
- HttpCacheParams.cs
- ByteStreamMessageUtility.cs
- COM2PropertyDescriptor.cs
- AttributeSetAction.cs
- ResourceKey.cs
- TypeEnumerableViewSchema.cs
- EventLogPropertySelector.cs
- EllipticalNodeOperations.cs
- DataFormats.cs
- _ConnectOverlappedAsyncResult.cs
- SrgsRulesCollection.cs
- SQLDateTimeStorage.cs