| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | #pragma warning disable CS1591using System;using System.IO;using MediaBrowser.Model.IO;namespace Emby.Server.Implementations.IO{    public class MbLinkShortcutHandler : IShortcutHandler    {        private readonly IFileSystem _fileSystem;        public MbLinkShortcutHandler(IFileSystem fileSystem)        {            _fileSystem = fileSystem;        }        public string Extension => ".mblink";        public string Resolve(string shortcutPath)        {            if (string.IsNullOrEmpty(shortcutPath))            {                throw new ArgumentException("Shortcut path is empty or null.", nameof(shortcutPath));            }            if (string.Equals(Path.GetExtension(shortcutPath), ".mblink", StringComparison.OrdinalIgnoreCase))            {                var path = File.ReadAllText(shortcutPath);                return _fileSystem.NormalizePath(path);            }            return null;        }        public void Create(string shortcutPath, string targetPath)        {            if (string.IsNullOrEmpty(shortcutPath))            {                throw new ArgumentNullException(nameof(shortcutPath));            }            if (string.IsNullOrEmpty(targetPath))            {                throw new ArgumentNullException(nameof(targetPath));            }            File.WriteAllText(shortcutPath, targetPath);        }    }}
 |