using System.Collections.Generic;
using MediaBrowser.Model.Net;
namespace MediaBrowser.Common.Net
{
public interface INetworkManager
{
///
/// Gets the machine's local ip address
///
/// IPAddress.
string GetLocalIpAddress();
///
/// Gets a random port number that is currently available
///
/// System.Int32.
int GetRandomUnusedPort();
///
/// Creates the netsh URL registration.
///
void AuthorizeHttpListening(string url);
///
/// Adds the windows firewall rule.
///
/// The port.
/// The protocol.
void AddSystemFirewallRule(int port, NetworkProtocol protocol);
///
/// Removes the windows firewall rule.
///
/// The port.
/// The protocol.
void RemoveSystemFirewallRule(int port, NetworkProtocol protocol);
///
/// Returns MAC Address from first Network Card in Computer
///
/// [string] MAC Address
string GetMacAddress();
///
/// Gets available devices within the domain
///
/// PC's in the Domain
IEnumerable GetNetworkDevices();
///
/// Gets the network shares.
///
/// The path.
/// IEnumerable{NetworkShare}.
IEnumerable GetNetworkShares(string path);
}
///
/// Enum NetworkProtocol
///
public enum NetworkProtocol
{
///
/// The TCP
///
Tcp,
///
/// The UDP
///
Udp
}
}