Atom10FormatterFactory.cs source code in C# .NET

Source code for the .NET framework in C#

                        

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  class.
        internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter() 
        {
            return new Atom10FeedFormatter();
        }
 
        /// 
        /// Creates a new instance of the  class with the specified 
        ///  instance. 
        /// 
        /// The  to serialize. 
        /// 
        /// A new instance of the  class with the specified
        ///  instance.
        ///  
        internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter(SyndicationFeed feedToWrite)
        { 
            Debug.Assert(feedToWrite != null, "feedToWrite != null"); 
            return new Atom10FeedFormatter(feedToWrite);
        } 

        /// Creates a new instance of the  class.
        /// A new instance of the  class.
        internal override SyndicationItemFormatter CreateSyndicationItemFormatter() 
        {
            return new Atom10ItemFormatter(); 
        } 

        ///  
        /// Creates a new instance of the  class with the specified
        ///  instance.
        /// 
        /// The  to serialize. 
        /// A new instance of the  class.
        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); 
        }
 
        /// 
        /// Creates an  over the specified  with the given
        /// , to be used with an appropriate formatter.
        ///  
        /// Stream over which to read (the reader should close it when it's done with it).
        /// Encoding of the stream, possibly null. 
        /// A new  instance. 
        internal override XmlReader CreateReader(Stream stream, Encoding encoding)
        { 
            Debug.Assert(stream != null, "stream != null");
            return XmlUtil.CreateXmlReader(stream, encoding);
        }
 
        /// 
        /// Creates an  into the specified  with the given 
        /// , to be used with an appropriate formatter. 
        /// 
        /// Stream over which to write (the writer should close it when it's done with it). 
        /// Encoding of the stream.
        /// A new  instance.
        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.
//---------------------------------------------------------------------- 
// 
//      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  class.
        internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter() 
        {
            return new Atom10FeedFormatter();
        }
 
        /// 
        /// Creates a new instance of the  class with the specified 
        ///  instance. 
        /// 
        /// The  to serialize. 
        /// 
        /// A new instance of the  class with the specified
        ///  instance.
        ///  
        internal override SyndicationFeedFormatter CreateSyndicationFeedFormatter(SyndicationFeed feedToWrite)
        { 
            Debug.Assert(feedToWrite != null, "feedToWrite != null"); 
            return new Atom10FeedFormatter(feedToWrite);
        } 

        /// Creates a new instance of the  class.
        /// A new instance of the  class.
        internal override SyndicationItemFormatter CreateSyndicationItemFormatter() 
        {
            return new Atom10ItemFormatter(); 
        } 

        ///  
        /// Creates a new instance of the  class with the specified
        ///  instance.
        /// 
        /// The  to serialize. 
        /// A new instance of the  class.
        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); 
        }
 
        /// 
        /// Creates an  over the specified  with the given
        /// , to be used with an appropriate formatter.
        ///  
        /// Stream over which to read (the reader should close it when it's done with it).
        /// Encoding of the stream, possibly null. 
        /// A new  instance. 
        internal override XmlReader CreateReader(Stream stream, Encoding encoding)
        { 
            Debug.Assert(stream != null, "stream != null");
            return XmlUtil.CreateXmlReader(stream, encoding);
        }
 
        /// 
        /// Creates an  into the specified  with the given 
        /// , to be used with an appropriate formatter. 
        /// 
        /// Stream over which to write (the writer should close it when it's done with it). 
        /// Encoding of the stream.
        /// A new  instance.
        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.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK