/*
 * FeedExpress
 * (C) Copyright 2003 Jeppe Cramon
 * 
 * This software is provided "as is" without warranty of any kind,
 * either expressed or implied. The entire risk as to the
 * quality and performance of the software is with you. Should the
 * software prove defective, you assume the cost of all necessary
 * servicing, repair, or correction. In no event shall the author,
 * copyright holder, or any other party who may redistribute the
 * software be liable to you for damages, including any general,
 * special, incidental, or consequential damages arising out of
 * the use or inability to use the software (including, but not
 * limited to, loss of data, data being rendered inaccurate, loss of
 * business profits, loss of business information, business
 * interruptions, loss sustained by you or third parties, or a
 * failure of the software to operate with any other software) even
 * if the author, copyright holder, or other party has been advised
 * of the possibility of such damages. 
 */

namespace FeedExpress {
	/// <summary>
	/// The interface all Feed readers must implement.
	/// </summary>
	public interface IRssReader {
		/// <summary>
		/// Returns true if it can read/parse the document handed to it.
		/// </summary>
		/// <param name="doc">The document to test</param>
		/// <returns>Returns true if it can read/parse the document handed to it.</returns>
		bool canRead(XmlDocument document);

		/// <summary>
		/// Reads the document and returns a Dictionary of FeedEntry objects which the FeedEntry.Link as key
		/// </summary>
		/// <param name="doc">The docment to parse</param>
		/// <returns>An IDictionary of FeedEntry objects which the FeedEntry.Link as key</returns>
		IDictionary readFeeds(XmlDocument doc);
		

		/// <summary>
		/// Reads information about the subscription
		/// </summary>
		ChannelInformation readInformation(XmlDocument doc);

	}
}
	
Close Window