Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Server / System / Data / Services / Serializers / Atom10FormatterFactory.cs / 1305376 / Atom10FormatterFactory.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a formatter factory for ATOM 1.0. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Serializers { using System.Diagnostics; using System.IO; using System.ServiceModel.Syndication; using System.Text; using System.Xml; ///Provides support for serializing responses in ATOM 1.0 format. ////// For more information, see http://tools.ietf.org/html/rfc4287. /// internal sealed class Atom10FormatterFactory : SyndicationFormatterFactory { ///Creates a new instance of the ///class. A new instance of the internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter() { return new Atom10FeedFormatter(); } ///class. /// Creates a new instance of the /// Theclass with the specified /// instance. /// to serialize. /// /// A new instance of the internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter(SyndicationFeed feedToWrite) { Debug.Assert(feedToWrite != null, "feedToWrite != null"); return new Atom10FeedFormatter(feedToWrite); } ///class with the specified /// instance. /// Creates a new instance of the ///class. A new instance of the internal override SyndicationItemFormatter CreateSyndicationItemFormatter() { return new Atom10ItemFormatter(); } ///class. /// Creates a new instance of the /// Theclass with the specified /// instance. /// to serialize. /// A new instance of the internal override SyndicationItemFormatter CreateSyndicationItemFormatter(SyndicationItem itemToWrite) { Debug.Assert(itemToWrite != null, "itemToWrite != null"); string value; if (itemToWrite.AttributeExtensions.TryGetValue(SyndicationSerializer.QualifiedNullAttribute, out value) && value == XmlConstants.XmlTrueLiteral) { return null; } return new Atom10ItemFormatter(itemToWrite); } ///class. /// Creates an /// Stream over which to read (the reader should close it when it's done with it). /// Encoding of the stream, possibly null. ///over the specified with the given /// , to be used with an appropriate formatter. /// A new internal override XmlReader CreateReader(Stream stream, Encoding encoding) { Debug.Assert(stream != null, "stream != null"); return XmlUtil.CreateXmlReader(stream, encoding); } ///instance. /// Creates an /// Stream over which to write (the writer should close it when it's done with it). /// Encoding of the stream. ///into the specified with the given /// , to be used with an appropriate formatter. /// A new internal override XmlWriter CreateWriter(Stream stream, Encoding encoding) { Debug.Assert(stream != null, "stream != null"); Debug.Assert(encoding != null, "encoding != null"); return XmlUtil.CreateXmlWriterAndWriteProcessingInstruction(stream, encoding); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- //instance. // Copyright (c) Microsoft Corporation. All rights reserved. // //// Provides a formatter factory for ATOM 1.0. // // // @owner [....] //--------------------------------------------------------------------- namespace System.Data.Services.Serializers { using System.Diagnostics; using System.IO; using System.ServiceModel.Syndication; using System.Text; using System.Xml; ///Provides support for serializing responses in ATOM 1.0 format. ////// For more information, see http://tools.ietf.org/html/rfc4287. /// internal sealed class Atom10FormatterFactory : SyndicationFormatterFactory { ///Creates a new instance of the ///class. A new instance of the internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter() { return new Atom10FeedFormatter(); } ///class. /// Creates a new instance of the /// Theclass with the specified /// instance. /// to serialize. /// /// A new instance of the internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter(SyndicationFeed feedToWrite) { Debug.Assert(feedToWrite != null, "feedToWrite != null"); return new Atom10FeedFormatter(feedToWrite); } ///class with the specified /// instance. /// Creates a new instance of the ///class. A new instance of the internal override SyndicationItemFormatter CreateSyndicationItemFormatter() { return new Atom10ItemFormatter(); } ///class. /// Creates a new instance of the /// Theclass with the specified /// instance. /// to serialize. /// A new instance of the internal override SyndicationItemFormatter CreateSyndicationItemFormatter(SyndicationItem itemToWrite) { Debug.Assert(itemToWrite != null, "itemToWrite != null"); string value; if (itemToWrite.AttributeExtensions.TryGetValue(SyndicationSerializer.QualifiedNullAttribute, out value) && value == XmlConstants.XmlTrueLiteral) { return null; } return new Atom10ItemFormatter(itemToWrite); } ///class. /// Creates an /// Stream over which to read (the reader should close it when it's done with it). /// Encoding of the stream, possibly null. ///over the specified with the given /// , to be used with an appropriate formatter. /// A new internal override XmlReader CreateReader(Stream stream, Encoding encoding) { Debug.Assert(stream != null, "stream != null"); return XmlUtil.CreateXmlReader(stream, encoding); } ///instance. /// Creates an /// Stream over which to write (the writer should close it when it's done with it). /// Encoding of the stream. ///into the specified with the given /// , to be used with an appropriate formatter. /// A new internal override XmlWriter CreateWriter(Stream stream, Encoding encoding) { Debug.Assert(stream != null, "stream != null"); Debug.Assert(encoding != null, "encoding != null"); return XmlUtil.CreateXmlWriterAndWriteProcessingInstruction(stream, encoding); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.instance.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- _HeaderInfo.cs
- EntitySqlQueryState.cs
- PageRanges.cs
- DataGridViewCell.cs
- Misc.cs
- RoutedEvent.cs
- TextSegment.cs
- ThrowOnMultipleAssignment.cs
- FlowLayout.cs
- PrintingPermissionAttribute.cs
- AccessText.cs
- XmlSchemaSubstitutionGroup.cs
- PrtTicket_Editor.cs
- ChannelManager.cs
- XXXOnTypeBuilderInstantiation.cs
- SamlAttributeStatement.cs
- ReverseInheritProperty.cs
- ContextProperty.cs
- BooleanSwitch.cs
- UnsafeNativeMethods.cs
- HttpDebugHandler.cs
- X509CertificateTrustedIssuerElement.cs
- UIElementIsland.cs
- _NetRes.cs
- HelpKeywordAttribute.cs
- RegistryKey.cs
- RawStylusSystemGestureInputReport.cs
- SqlTopReducer.cs
- ProfileService.cs
- QilLoop.cs
- DataBoundControlActionList.cs
- ReflectPropertyDescriptor.cs
- NetTcpBindingElement.cs
- HashCodeCombiner.cs
- CanExpandCollapseAllConverter.cs
- Rect.cs
- DateTimeOffsetStorage.cs
- PreProcessInputEventArgs.cs
- FieldTemplateUserControl.cs
- HttpApplication.cs
- FolderBrowserDialog.cs
- TabletCollection.cs
- DataDocumentXPathNavigator.cs
- InstanceValue.cs
- Viewport3DVisual.cs
- XPathAncestorIterator.cs
- NullEntityWrapper.cs
- XmlDataSourceDesigner.cs
- ThreadInterruptedException.cs
- SqlAggregateChecker.cs
- XsdBuilder.cs
- InternalMappingException.cs
- CompatibleIComparer.cs
- _ConnectOverlappedAsyncResult.cs
- KnownTypesProvider.cs
- MemberPath.cs
- SizeFConverter.cs
- AutomationPatternInfo.cs
- OpenFileDialog.cs
- DaylightTime.cs
- ConfigurationProperty.cs
- XPathExpr.cs
- Vector3D.cs
- InternalsVisibleToAttribute.cs
- newinstructionaction.cs
- BulletedListDesigner.cs
- SelectionUIService.cs
- CatalogZoneBase.cs
- DataKeyArray.cs
- VectorAnimation.cs
- HandlerMappingMemo.cs
- FileLevelControlBuilderAttribute.cs
- IItemContainerGenerator.cs
- TrailingSpaceComparer.cs
- DataGridItem.cs
- HttpRequestCacheValidator.cs
- WindowsRebar.cs
- TemplateControlBuildProvider.cs
- DataDocumentXPathNavigator.cs
- EntityCommandCompilationException.cs
- GenericUI.cs
- EventLogEntry.cs
- StringArrayEditor.cs
- DebugView.cs
- VScrollBar.cs
- LiteralDesigner.cs
- DocumentViewerAutomationPeer.cs
- ListControl.cs
- HeaderLabel.cs
- LockCookie.cs
- AdjustableArrowCap.cs
- RepeatButtonAutomationPeer.cs
- StateMachineWorkflow.cs
- LinqDataSourceStatusEventArgs.cs
- AutoGeneratedField.cs
- IconConverter.cs
- XappLauncher.cs
- CipherData.cs
- isolationinterop.cs
- LockCookie.cs