using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MediaBrowser.Model.Net;
using MediaBrowser.Model.Threading;
using Rssdp.Infrastructure;
namespace Rssdp
{
	/// 
	/// Allows publishing devices both as notification and responses to search requests.
	/// 
	/// 
	/// This is  the 'server' part of the system. You add your devices to an instance of this class so clients can find them.
	/// 
	public class SsdpDevicePublisher : SsdpDevicePublisherBase
	{
		#region Constructors
		/// 
		/// Default constructor. 
		/// 
		/// 
		/// Uses the default  implementation and network settings for Windows and the SSDP specification.
		/// 
		[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Reliability", "CA2000:Dispose objects before losing scope", Justification = "No way to do this here, and we don't want to dispose it except in the (rare) case of an exception anyway.")]
		public SsdpDevicePublisher(ISocketFactory socketFactory, ITimerFactory timerFactory, string osName, string osVersion)
			: base(new SsdpCommunicationsServer(socketFactory), timerFactory, osName, osVersion)
		{
		}
		#endregion
    }
}