Pārlūkot izejas kodu

Apply review suggestions

Shadowghost 2 gadi atpakaļ
vecāks
revīzija
a5f16136eb

+ 0 - 1
MediaBrowser.Common/Net/INetworkManager.cs

@@ -76,7 +76,6 @@ namespace MediaBrowser.Common.Net
         /// <summary>
         /// Retrieves the bind address to use in system URLs. (Server Discovery, PlayTo, LiveTV, SystemInfo)
         /// If no bind addresses are specified, an internal interface address is selected.
-        /// (See <see cref="GetBindAddress(IPAddress, out int?, bool)"/>.
         /// </summary>
         /// <param name="source">IP address of the request.</param>
         /// <param name="port">Optional port returned, if it's part of an override.</param>

+ 54 - 55
MediaBrowser.Model/Net/IPData.cs

@@ -2,73 +2,72 @@ using System.Net;
 using System.Net.Sockets;
 using Microsoft.AspNetCore.HttpOverrides;
 
-namespace MediaBrowser.Model.Net
+namespace MediaBrowser.Model.Net;
+
+/// <summary>
+/// Base network object class.
+/// </summary>
+public class IPData
 {
     /// <summary>
-    /// Base network object class.
+    /// Initializes a new instance of the <see cref="IPData"/> class.
     /// </summary>
-    public class IPData
+    /// <param name="address">The <see cref="IPAddress"/>.</param>
+    /// <param name="subnet">The <see cref="IPNetwork"/>.</param>
+    /// <param name="name">The interface name.</param>
+    public IPData(IPAddress address, IPNetwork? subnet, string name)
     {
-        /// <summary>
-        /// Initializes a new instance of the <see cref="IPData"/> class.
-        /// </summary>
-        /// <param name="address">The <see cref="IPAddress"/>.</param>
-        /// <param name="subnet">The <see cref="IPNetwork"/>.</param>
-        /// <param name="name">The interface name.</param>
-        public IPData(IPAddress address, IPNetwork? subnet, string name)
-        {
-            Address = address;
-            Subnet = subnet ?? (address.AddressFamily == AddressFamily.InterNetwork ? new IPNetwork(address, 32) : new IPNetwork(address, 128));
-            Name = name;
-        }
+        Address = address;
+        Subnet = subnet ?? (address.AddressFamily == AddressFamily.InterNetwork ? new IPNetwork(address, 32) : new IPNetwork(address, 128));
+        Name = name;
+    }
 
-        /// <summary>
-        /// Initializes a new instance of the <see cref="IPData"/> class.
-        /// </summary>
-        /// <param name="address">The <see cref="IPAddress"/>.</param>
-        /// <param name="subnet">The <see cref="IPNetwork"/>.</param>
-        public IPData(IPAddress address, IPNetwork? subnet)
-            : this(address, subnet, string.Empty)
-        {
-        }
+    /// <summary>
+    /// Initializes a new instance of the <see cref="IPData"/> class.
+    /// </summary>
+    /// <param name="address">The <see cref="IPAddress"/>.</param>
+    /// <param name="subnet">The <see cref="IPNetwork"/>.</param>
+    public IPData(IPAddress address, IPNetwork? subnet)
+        : this(address, subnet, string.Empty)
+    {
+    }
 
-        /// <summary>
-        /// Gets or sets the object's IP address.
-        /// </summary>
-        public IPAddress Address { get; set; }
+    /// <summary>
+    /// Gets or sets the object's IP address.
+    /// </summary>
+    public IPAddress Address { get; set; }
 
-        /// <summary>
-        /// Gets or sets the object's IP address.
-        /// </summary>
-        public IPNetwork Subnet { get; set; }
+    /// <summary>
+    /// Gets or sets the object's IP address.
+    /// </summary>
+    public IPNetwork Subnet { get; set; }
 
-        /// <summary>
-        /// Gets or sets the interface index.
-        /// </summary>
-        public int Index { get; set; }
+    /// <summary>
+    /// Gets or sets the interface index.
+    /// </summary>
+    public int Index { get; set; }
 
-        /// <summary>
-        /// Gets or sets the interface name.
-        /// </summary>
-        public string Name { get; set; }
+    /// <summary>
+    /// Gets or sets the interface name.
+    /// </summary>
+    public string Name { get; set; }
 
-        /// <summary>
-        /// Gets the AddressFamily of the object.
-        /// </summary>
-        public AddressFamily AddressFamily
+    /// <summary>
+    /// Gets the AddressFamily of the object.
+    /// </summary>
+    public AddressFamily AddressFamily
+    {
+        get
         {
-            get
+            if (Address.Equals(IPAddress.None))
+            {
+                return Subnet.Prefix.AddressFamily.Equals(IPAddress.None)
+                    ? AddressFamily.Unspecified
+                    : Subnet.Prefix.AddressFamily;
+            }
+            else
             {
-                if (Address.Equals(IPAddress.None))
-                {
-                    return Subnet.Prefix.AddressFamily.Equals(IPAddress.None)
-                        ? AddressFamily.Unspecified
-                        : Subnet.Prefix.AddressFamily;
-                }
-                else
-                {
-                    return Address.AddressFamily;
-                }
+                return Address.AddressFamily;
             }
         }
     }

+ 26 - 27
MediaBrowser.Model/Net/ISocketFactory.cs

@@ -1,36 +1,35 @@
 using System.Net;
 using System.Net.Sockets;
 
-namespace MediaBrowser.Model.Net
+namespace MediaBrowser.Model.Net;
+
+/// <summary>
+/// Implemented by components that can create specific socket configurations.
+/// </summary>
+public interface ISocketFactory
 {
     /// <summary>
-    /// Implemented by components that can create specific socket configurations.
+    /// Creates a new unicast socket using the specified local port number.
     /// </summary>
-    public interface ISocketFactory
-    {
-        /// <summary>
-        /// Creates a new unicast socket using the specified local port number.
-        /// </summary>
-        /// <param name="localPort">The local port to bind to.</param>
-        /// <returns>A new unicast socket using the specified local port number.</returns>
-        Socket CreateUdpBroadcastSocket(int localPort);
+    /// <param name="localPort">The local port to bind to.</param>
+    /// <returns>A new unicast socket using the specified local port number.</returns>
+    Socket CreateUdpBroadcastSocket(int localPort);
 
-        /// <summary>
-        /// Creates a new unicast socket using the specified local port number.
-        /// </summary>
-        /// <param name="bindInterface">The bind interface.</param>
-        /// <param name="localPort">The local port to bind to.</param>
-        /// <returns>A new unicast socket using the specified local port number.</returns>
-        Socket CreateSsdpUdpSocket(IPData bindInterface, int localPort);
+    /// <summary>
+    /// Creates a new unicast socket using the specified local port number.
+    /// </summary>
+    /// <param name="bindInterface">The bind interface.</param>
+    /// <param name="localPort">The local port to bind to.</param>
+    /// <returns>A new unicast socket using the specified local port number.</returns>
+    Socket CreateSsdpUdpSocket(IPData bindInterface, int localPort);
 
-        /// <summary>
-        /// Creates a new multicast socket using the specified multicast IP address, multicast time to live and local port.
-        /// </summary>
-        /// <param name="multicastAddress">The multicast IP address to bind to.</param>
-        /// <param name="bindInterface">The bind interface.</param>
-        /// <param name="multicastTimeToLive">The multicast time to live value. Actually a maximum number of network hops for UDP packets.</param>
-        /// <param name="localPort">The local port to bind to.</param>
-        /// <returns>A new multicast socket using the specfied bind interface, multicast address, multicast time to live and port.</returns>
-        Socket CreateUdpMulticastSocket(IPAddress multicastAddress, IPData bindInterface, int multicastTimeToLive, int localPort);
-    }
+    /// <summary>
+    /// Creates a new multicast socket using the specified multicast IP address, multicast time to live and local port.
+    /// </summary>
+    /// <param name="multicastAddress">The multicast IP address to bind to.</param>
+    /// <param name="bindInterface">The bind interface.</param>
+    /// <param name="multicastTimeToLive">The multicast time to live value. Actually a maximum number of network hops for UDP packets.</param>
+    /// <param name="localPort">The local port to bind to.</param>
+    /// <returns>A new multicast socket using the specfied bind interface, multicast address, multicast time to live and port.</returns>
+    Socket CreateUdpMulticastSocket(IPAddress multicastAddress, IPData bindInterface, int multicastTimeToLive, int localPort);
 }

+ 3 - 25
RSSDP/SsdpDeviceLocator.cs

@@ -34,30 +34,9 @@ namespace Rssdp.Infrastructure
             string osName,
             string osVersion)
         {
-            if (communicationsServer is null)
-            {
-                throw new ArgumentNullException(nameof(communicationsServer));
-            }
-
-            if (osName is null)
-            {
-                throw new ArgumentNullException(nameof(osName));
-            }
-
-            if (osName.Length == 0)
-            {
-                throw new ArgumentException("osName cannot be an empty string.", nameof(osName));
-            }
-
-            if (osVersion is null)
-            {
-                throw new ArgumentNullException(nameof(osVersion));
-            }
-
-            if (osVersion.Length == 0)
-            {
-                throw new ArgumentException("osVersion cannot be an empty string.", nameof(osName));
-            }
+            ArgumentNullException.ThrowIfNull(communicationsServer);
+            ArgumentNullException.ThrowIfNullOrEmpty(osName);
+            ArgumentNullException.ThrowIfNullOrEmpty(osVersion);
 
             _OSName = osName;
             _OSVersion = osVersion;
@@ -363,7 +342,6 @@ namespace Rssdp.Infrastructure
             var values = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
 
             values["HOST"] = "239.255.255.250:1900";
-            values["USER-AGENT"] = "UPnP/1.0 DLNADOC/1.50 Platinum/1.0.4.2";
             values["USER-AGENT"] = string.Format(CultureInfo.InvariantCulture, "{0}/{1} UPnP/1.0 RSSDP/{2}", _OSName, _OSVersion, SsdpConstants.ServerVersion);
             values["MAN"] = "\"ssdp:discover\"";
 

+ 3 - 24
RSSDP/SsdpDevicePublisher.cs

@@ -40,30 +40,9 @@ namespace Rssdp.Infrastructure
             string osVersion,
             bool sendOnlyMatchedHost)
         {
-            if (communicationsServer is null)
-            {
-                throw new ArgumentNullException(nameof(communicationsServer));
-            }
-
-            if (osName is null)
-            {
-                throw new ArgumentNullException(nameof(osName));
-            }
-
-            if (osName.Length == 0)
-            {
-                throw new ArgumentException("osName cannot be an empty string.", nameof(osName));
-            }
-
-            if (osVersion is null)
-            {
-                throw new ArgumentNullException(nameof(osVersion));
-            }
-
-            if (osVersion.Length == 0)
-            {
-                throw new ArgumentException("osVersion cannot be an empty string.", nameof(osName));
-            }
+            ArgumentNullException.ThrowIfNull(communicationsServer);
+            ArgumentNullException.ThrowIfNullOrEmpty(osName);
+            ArgumentNullException.ThrowIfNullOrEmpty(osVersion);
 
             _SupportPnpRootDevice = true;
             _Devices = new List<SsdpRootDevice>();