Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Server / System / Data / Services / Serializers / XmlDocumentSerializer.cs / 1305376 / XmlDocumentSerializer.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a serializer for the Atom Service Document format. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Serializers { using System; using System.Data.Services.Providers; using System.Diagnostics; using System.IO; using System.Text; using System.Xml; ///Provides support for serializing generic XML documents. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1001:TypesThatOwnDisposableFieldsShouldBeDisposable", Justification = "Pending review.")] [DebuggerDisplay("XmlDocumentSerializer={baseUri}")] internal abstract class XmlDocumentSerializer : IExceptionWriter { ///Base URI from which resources should be resolved. private readonly Uri baseUri; ///Data provider from which metadata should be gathered. private readonly DataServiceProviderWrapper provider; ///Writer to which output is sent. private readonly XmlWriter writer; ////// Initializes a new XmlDocumentSerializer, ready to write /// out an XML document /// /// Stream to which output should be sent. /// Base URI from which resources should be resolved. /// Data provider from which metadata should be gathered. /// Text encoding for the response. internal XmlDocumentSerializer( Stream output, Uri baseUri, DataServiceProviderWrapper provider, Encoding encoding) { Debug.Assert(output != null, "output != null"); Debug.Assert(provider != null, "provider != null"); Debug.Assert(baseUri != null, "baseUri != null"); Debug.Assert(encoding != null, "encoding != null"); Debug.Assert(baseUri.IsAbsoluteUri, "baseUri.IsAbsoluteUri(" + baseUri + ")"); Debug.Assert(baseUri.AbsoluteUri[baseUri.AbsoluteUri.Length - 1] == '/', "baseUri(" + baseUri.AbsoluteUri + ") ends with '/'"); this.writer = XmlUtil.CreateXmlWriterAndWriteProcessingInstruction(output, encoding); this.provider = provider; this.baseUri = baseUri; } ///Base URI from which resources should be resolved. protected Uri BaseUri { get { return this.baseUri; } } ///Data provider from which metadata should be gathered. protected DataServiceProviderWrapper Provider { get { return this.provider; } } ///Writer to which output is sent. protected XmlWriter Writer { get { return this.writer; } } ///Serializes exception information. /// Description of exception to serialize. public void WriteException(HandleExceptionArgs args) { ErrorHandler.SerializeXmlError(args, this.writer); } ///Writes the document for this request.. /// Data service instance. internal abstract void WriteRequest(IDataService service); } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a serializer for the Atom Service Document format. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Serializers { using System; using System.Data.Services.Providers; using System.Diagnostics; using System.IO; using System.Text; using System.Xml; ///Provides support for serializing generic XML documents. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1001:TypesThatOwnDisposableFieldsShouldBeDisposable", Justification = "Pending review.")] [DebuggerDisplay("XmlDocumentSerializer={baseUri}")] internal abstract class XmlDocumentSerializer : IExceptionWriter { ///Base URI from which resources should be resolved. private readonly Uri baseUri; ///Data provider from which metadata should be gathered. private readonly DataServiceProviderWrapper provider; ///Writer to which output is sent. private readonly XmlWriter writer; ////// Initializes a new XmlDocumentSerializer, ready to write /// out an XML document /// /// Stream to which output should be sent. /// Base URI from which resources should be resolved. /// Data provider from which metadata should be gathered. /// Text encoding for the response. internal XmlDocumentSerializer( Stream output, Uri baseUri, DataServiceProviderWrapper provider, Encoding encoding) { Debug.Assert(output != null, "output != null"); Debug.Assert(provider != null, "provider != null"); Debug.Assert(baseUri != null, "baseUri != null"); Debug.Assert(encoding != null, "encoding != null"); Debug.Assert(baseUri.IsAbsoluteUri, "baseUri.IsAbsoluteUri(" + baseUri + ")"); Debug.Assert(baseUri.AbsoluteUri[baseUri.AbsoluteUri.Length - 1] == '/', "baseUri(" + baseUri.AbsoluteUri + ") ends with '/'"); this.writer = XmlUtil.CreateXmlWriterAndWriteProcessingInstruction(output, encoding); this.provider = provider; this.baseUri = baseUri; } ///Base URI from which resources should be resolved. protected Uri BaseUri { get { return this.baseUri; } } ///Data provider from which metadata should be gathered. protected DataServiceProviderWrapper Provider { get { return this.provider; } } ///Writer to which output is sent. protected XmlWriter Writer { get { return this.writer; } } ///Serializes exception information. /// Description of exception to serialize. public void WriteException(HandleExceptionArgs args) { ErrorHandler.SerializeXmlError(args, this.writer); } ///Writes the document for this request.. /// Data service instance. internal abstract void WriteRequest(IDataService service); } } // 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
- CodeTypeReferenceCollection.cs
- LayoutInformation.cs
- Literal.cs
- Ref.cs
- StickyNote.cs
- UsernameTokenFactoryCredential.cs
- FtpCachePolicyElement.cs
- SHA1Managed.cs
- HttpProxyTransportBindingElement.cs
- Variable.cs
- WebPartMovingEventArgs.cs
- Normalization.cs
- GeometryDrawing.cs
- DataTableCollection.cs
- CssTextWriter.cs
- BamlRecordWriter.cs
- WebExceptionStatus.cs
- SettingsPropertyValueCollection.cs
- GridViewColumnHeader.cs
- PermissionSetTriple.cs
- ProfileManager.cs
- XmlSchema.cs
- FileUpload.cs
- PrePostDescendentsWalker.cs
- SortExpressionBuilder.cs
- CodeActivityMetadata.cs
- EditorPartCollection.cs
- VerificationException.cs
- DeviceSpecificChoice.cs
- DynamicHyperLink.cs
- DataGridViewButtonColumn.cs
- CellIdBoolean.cs
- TextPattern.cs
- PrintDocument.cs
- wmiprovider.cs
- PlatformCulture.cs
- NavigationProperty.cs
- ConstraintCollection.cs
- WebPartConnectionsConnectVerb.cs
- Timer.cs
- SecurityKeyUsage.cs
- listviewsubitemcollectioneditor.cs
- _OverlappedAsyncResult.cs
- XmlDictionaryWriter.cs
- DataComponentGenerator.cs
- MarshalDirectiveException.cs
- DataGridHelper.cs
- RectAnimation.cs
- EditorZoneBase.cs
- TypeToken.cs
- FullTextLine.cs
- EventManager.cs
- EventLogEntryCollection.cs
- KnownBoxes.cs
- ValidatorAttribute.cs
- ConditionCollection.cs
- ViewService.cs
- _ScatterGatherBuffers.cs
- DefaultTextStoreTextComposition.cs
- PackWebResponse.cs
- PackageFilter.cs
- InvalidComObjectException.cs
- SqlMethodAttribute.cs
- PostBackOptions.cs
- indexingfiltermarshaler.cs
- ConfigurationException.cs
- PenThread.cs
- DataListItemEventArgs.cs
- HuffModule.cs
- MemberHolder.cs
- FlowDocumentScrollViewer.cs
- ChannelSettingsElement.cs
- TrackingMemoryStream.cs
- TTSEvent.cs
- XPathChildIterator.cs
- SpotLight.cs
- SHA256.cs
- ScrollChrome.cs
- DESCryptoServiceProvider.cs
- UnsafeNativeMethods.cs
- EmbeddedMailObject.cs
- ToolStripDropDownClosedEventArgs.cs
- ReferencedAssemblyResolver.cs
- ActivitySurrogate.cs
- jithelpers.cs
- DbProviderSpecificTypePropertyAttribute.cs
- MostlySingletonList.cs
- SoapEnumAttribute.cs
- EventRouteFactory.cs
- InvalidPrinterException.cs
- XPathExpr.cs
- OLEDB_Enum.cs
- VSDExceptions.cs
- RoleGroup.cs
- ImageAttributes.cs
- LocalValueEnumerator.cs
- WorkflowServiceBuildProvider.cs
- XamlVector3DCollectionSerializer.cs
- PipelineModuleStepContainer.cs
- RenderTargetBitmap.cs