diff --git a/Kyoo.Abstractions/Controllers/IRepository.cs b/Kyoo.Abstractions/Controllers/IRepository.cs index 1fa8af25..60cd6343 100644 --- a/Kyoo.Abstractions/Controllers/IRepository.cs +++ b/Kyoo.Abstractions/Controllers/IRepository.cs @@ -217,7 +217,6 @@ namespace Kyoo.Abstractions.Controllers /// How many resources matched that filter Task GetCount(Expression> where = null); - /// /// Create a new resource. /// diff --git a/Kyoo.Abstractions/Controllers/ITask.cs b/Kyoo.Abstractions/Controllers/ITask.cs index 69856e21..b6d33fc5 100644 --- a/Kyoo.Abstractions/Controllers/ITask.cs +++ b/Kyoo.Abstractions/Controllers/ITask.cs @@ -140,7 +140,6 @@ namespace Kyoo.Abstractions.Controllers /// The name of the task (case sensitive) public TaskParameter this[string name] => this.FirstOrDefault(x => x.Name == name); - /// /// Create a new, empty, /// diff --git a/Kyoo.Abstractions/Controllers/StartupAction.cs b/Kyoo.Abstractions/Controllers/StartupAction.cs index b5b9274e..f2f52866 100644 --- a/Kyoo.Abstractions/Controllers/StartupAction.cs +++ b/Kyoo.Abstractions/Controllers/StartupAction.cs @@ -60,7 +60,6 @@ namespace Kyoo.Abstractions.Controllers => new(action, priority); } - /// /// An action executed on kyoo's startup to initialize the asp-net container. /// diff --git a/Kyoo.Abstractions/Models/Attributes/FileSystemMetadataAttribute.cs b/Kyoo.Abstractions/Models/Attributes/FileSystemMetadataAttribute.cs index 574b98d6..1303ab60 100644 --- a/Kyoo.Abstractions/Models/Attributes/FileSystemMetadataAttribute.cs +++ b/Kyoo.Abstractions/Models/Attributes/FileSystemMetadataAttribute.cs @@ -27,7 +27,6 @@ namespace Kyoo.Abstractions.Models.Attributes /// public bool StripScheme { get; set; } - /// /// Create a new using the specified schemes. /// diff --git a/Kyoo.Abstractions/Models/Attributes/TaskMetadataAttribute.cs b/Kyoo.Abstractions/Models/Attributes/TaskMetadataAttribute.cs index 697303b7..55ff7cf3 100644 --- a/Kyoo.Abstractions/Models/Attributes/TaskMetadataAttribute.cs +++ b/Kyoo.Abstractions/Models/Attributes/TaskMetadataAttribute.cs @@ -43,7 +43,6 @@ namespace Kyoo.Abstractions.Models.Attributes /// public bool IsHidden { get; set; } - /// /// Create a new with the given slug, name and description. /// diff --git a/Kyoo.Abstractions/Models/ConfigurationReference.cs b/Kyoo.Abstractions/Models/ConfigurationReference.cs index b0fde22c..39842543 100644 --- a/Kyoo.Abstractions/Models/ConfigurationReference.cs +++ b/Kyoo.Abstractions/Models/ConfigurationReference.cs @@ -21,7 +21,6 @@ namespace Kyoo.Abstractions.Models /// public Type Type { get; } - /// /// Create a new using a given path and type. /// This method does not create sub configuration resources. Please see @@ -53,7 +52,6 @@ namespace Kyoo.Abstractions.Models new ConfigurationReference(path, type) }; - if (!type.IsClass || type.AssemblyQualifiedName?.StartsWith("System") == true) return ret; @@ -89,7 +87,6 @@ namespace Kyoo.Abstractions.Models return CreateReference(path, typeof(T)); } - public static ConfigurationReference CreateUntyped(string path) { return new(path, null); diff --git a/Kyoo.Abstractions/Models/LibraryItem.cs b/Kyoo.Abstractions/Models/LibraryItem.cs index d761bbf3..5b8e9ee5 100644 --- a/Kyoo.Abstractions/Models/LibraryItem.cs +++ b/Kyoo.Abstractions/Models/LibraryItem.cs @@ -70,7 +70,6 @@ namespace Kyoo.Abstractions.Models /// public ItemType Type { get; set; } - /// /// Create a new, empty . /// diff --git a/Kyoo.Abstractions/Models/Page.cs b/Kyoo.Abstractions/Models/Page.cs index 547e903f..dd3cc4e3 100644 --- a/Kyoo.Abstractions/Models/Page.cs +++ b/Kyoo.Abstractions/Models/Page.cs @@ -36,7 +36,6 @@ namespace Kyoo.Abstractions.Models /// public ICollection Items { get; } - /// /// Create a new . /// diff --git a/Kyoo.Abstractions/Models/WatchItem.cs b/Kyoo.Abstractions/Models/WatchItem.cs index 17be136f..0692aa90 100644 --- a/Kyoo.Abstractions/Models/WatchItem.cs +++ b/Kyoo.Abstractions/Models/WatchItem.cs @@ -130,7 +130,6 @@ namespace Kyoo.Abstractions.Models /// public ICollection Chapters { get; set; } - /// /// Create a from an . /// diff --git a/Kyoo.Authentication/AuthenticationModule.cs b/Kyoo.Authentication/AuthenticationModule.cs index 50ffa9b2..7ab35374 100644 --- a/Kyoo.Authentication/AuthenticationModule.cs +++ b/Kyoo.Authentication/AuthenticationModule.cs @@ -48,7 +48,6 @@ namespace Kyoo.Authentication { CertificateOption.Path, typeof(CertificateOption) } }; - /// /// The configuration to use. /// @@ -64,7 +63,6 @@ namespace Kyoo.Authentication /// private readonly IWebHostEnvironment _environment; - /// /// Create a new authentication module instance and use the given configuration and environment. /// diff --git a/Kyoo.Authentication/Models/DTO/RegisterRequest.cs b/Kyoo.Authentication/Models/DTO/RegisterRequest.cs index 5ba89f3b..bf1d5ce8 100644 --- a/Kyoo.Authentication/Models/DTO/RegisterRequest.cs +++ b/Kyoo.Authentication/Models/DTO/RegisterRequest.cs @@ -28,7 +28,6 @@ namespace Kyoo.Authentication.Models.DTO [MinLength(8, ErrorMessage = "The password must have at least {1} characters")] public string Password { get; set; } - /// /// Convert this register request to a new class. /// diff --git a/Kyoo.Authentication/Views/AccountApi.cs b/Kyoo.Authentication/Views/AccountApi.cs index de2a06a5..1574d15e 100644 --- a/Kyoo.Authentication/Views/AccountApi.cs +++ b/Kyoo.Authentication/Views/AccountApi.cs @@ -44,7 +44,6 @@ namespace Kyoo.Authentication.Views /// private readonly IOptions _options; - /// /// Create a new handle to handle login/users requests. /// @@ -60,7 +59,6 @@ namespace Kyoo.Authentication.Views _options = options; } - /// /// Register a new user and return a OTAC to connect to it. /// diff --git a/Kyoo.Core/Controllers/ConfigurationManager.cs b/Kyoo.Core/Controllers/ConfigurationManager.cs index 88927d76..8a5c50d1 100644 --- a/Kyoo.Core/Controllers/ConfigurationManager.cs +++ b/Kyoo.Core/Controllers/ConfigurationManager.cs @@ -44,7 +44,6 @@ namespace Kyoo.Core.Controllers _references = references.ToDictionary(x => x.Path, x => x.Type, StringComparer.OrdinalIgnoreCase); } - /// public void AddTyped(string path) { diff --git a/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs b/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs index 2b637051..84ee1072 100644 --- a/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs +++ b/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs @@ -53,7 +53,6 @@ namespace Kyoo.Core.Controllers _options = options; } - /// /// Retrieve the file system that should be used for a given path. /// diff --git a/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs b/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs index 4b27686b..6a51d443 100644 --- a/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs +++ b/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs @@ -31,7 +31,6 @@ namespace Kyoo.Core.Controllers _clientFactory = factory; } - /// public IActionResult FileResult(string path, bool rangeSupport = false, string type = null) { diff --git a/Kyoo.Core/Controllers/LibraryManager.cs b/Kyoo.Core/Controllers/LibraryManager.cs index 21801c9b..46ed2d44 100644 --- a/Kyoo.Core/Controllers/LibraryManager.cs +++ b/Kyoo.Core/Controllers/LibraryManager.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Linq.Expressions; using System.Threading.Tasks; @@ -53,7 +54,6 @@ namespace Kyoo.Core.Controllers /// public IUserRepository UserRepository { get; } - /// /// Create a new instance with every repository available. /// @@ -184,7 +184,7 @@ namespace Kyoo.Core.Controllers /// A setter function to store the owner of a releated object loaded /// The type of the owner object /// The type of the related object - private static async Task SetRelation(T1 obj, + private static async Task _SetRelation(T1 obj, Task> loader, Action> setter, Action inverse) @@ -224,6 +224,8 @@ namespace Kyoo.Core.Controllers } /// + [SuppressMessage("StyleCop.CSharp.LayoutRules", "SA1507:CodeMustNotContainMultipleBlankLinesInARow", + Justification = "Separate the code by semantics and simplify the code read.")] public Task Load(IResource obj, string memberName, bool force = false) { if (obj == null) @@ -251,7 +253,7 @@ namespace Kyoo.Core.Controllers .Then(x => l.Collections = x), - (Collection c, nameof(Collection.ExternalIDs)) => SetRelation(c, + (Collection c, nameof(Collection.ExternalIDs)) => _SetRelation(c, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), @@ -265,7 +267,7 @@ namespace Kyoo.Core.Controllers .Then(x => c.Libraries = x), - (Show s, nameof(Show.ExternalIDs)) => SetRelation(s, + (Show s, nameof(Show.ExternalIDs)) => _SetRelation(s, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), @@ -278,12 +280,12 @@ namespace Kyoo.Core.Controllers .GetFromShow(obj.ID) .Then(x => s.People = x), - (Show s, nameof(Show.Seasons)) => SetRelation(s, + (Show s, nameof(Show.Seasons)) => _SetRelation(s, SeasonRepository.GetAll(x => x.Show.ID == obj.ID), (x, y) => x.Seasons = y, (x, y) => { x.Show = y; x.ShowID = y.ID; }), - (Show s, nameof(Show.Episodes)) => SetRelation(s, + (Show s, nameof(Show.Episodes)) => _SetRelation(s, EpisodeRepository.GetAll(x => x.Show.ID == obj.ID), (x, y) => x.Episodes = y, (x, y) => { x.Show = y; x.ShowID = y.ID; }), @@ -305,12 +307,12 @@ namespace Kyoo.Core.Controllers }), - (Season s, nameof(Season.ExternalIDs)) => SetRelation(s, + (Season s, nameof(Season.ExternalIDs)) => _SetRelation(s, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), - (Season s, nameof(Season.Episodes)) => SetRelation(s, + (Season s, nameof(Season.Episodes)) => _SetRelation(s, EpisodeRepository.GetAll(x => x.Season.ID == obj.ID), (x, y) => x.Episodes = y, (x, y) => { x.Season = y; x.SeasonID = y.ID; }), @@ -324,12 +326,12 @@ namespace Kyoo.Core.Controllers }), - (Episode e, nameof(Episode.ExternalIDs)) => SetRelation(e, + (Episode e, nameof(Episode.ExternalIDs)) => _SetRelation(e, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), - (Episode e, nameof(Episode.Tracks)) => SetRelation(e, + (Episode e, nameof(Episode.Tracks)) => _SetRelation(e, TrackRepository.GetAll(x => x.Episode.ID == obj.ID), (x, y) => x.Tracks = y, (x, y) => { x.Episode = y; x.EpisodeID = y.ID; }), @@ -369,13 +371,13 @@ namespace Kyoo.Core.Controllers .GetAll(x => x.Studio.ID == obj.ID) .Then(x => s.Shows = x), - (Studio s, nameof(Studio.ExternalIDs)) => SetRelation(s, + (Studio s, nameof(Studio.ExternalIDs)) => _SetRelation(s, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), - (People p, nameof(People.ExternalIDs)) => SetRelation(p, + (People p, nameof(People.ExternalIDs)) => _SetRelation(p, ProviderRepository.GetMetadataID(x => x.ResourceID == obj.ID), (x, y) => x.ExternalIDs = y, (x, y) => { x.ResourceID = y.ID; }), diff --git a/Kyoo.Core/Controllers/ProviderComposite.cs b/Kyoo.Core/Controllers/ProviderComposite.cs index d75584f6..58b018f1 100644 --- a/Kyoo.Core/Controllers/ProviderComposite.cs +++ b/Kyoo.Core/Controllers/ProviderComposite.cs @@ -29,7 +29,6 @@ namespace Kyoo.Core.Controllers /// private readonly ILogger _logger; - /// /// Create a new with a list of available providers. /// @@ -41,7 +40,6 @@ namespace Kyoo.Core.Controllers _logger = logger; } - /// public override void UseProviders(IEnumerable providers) { diff --git a/Kyoo.Core/Controllers/RegexIdentifier.cs b/Kyoo.Core/Controllers/RegexIdentifier.cs index 44bdd4f8..046fb991 100644 --- a/Kyoo.Core/Controllers/RegexIdentifier.cs +++ b/Kyoo.Core/Controllers/RegexIdentifier.cs @@ -101,7 +101,6 @@ namespace Kyoo.Core.Controllers if (ret.episode.SeasonNumber.HasValue) ret.season = new Season { SeasonNumber = ret.episode.SeasonNumber.Value }; - if (ret.episode.SeasonNumber == null && ret.episode.EpisodeNumber == null && ret.episode.AbsoluteNumber == null) { diff --git a/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs b/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs index 6946c747..b09abc10 100644 --- a/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs @@ -35,7 +35,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.EpisodeNumber; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/GenreRepository.cs b/Kyoo.Core/Controllers/Repositories/GenreRepository.cs index cb58406f..1747b6b5 100644 --- a/Kyoo.Core/Controllers/Repositories/GenreRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/GenreRepository.cs @@ -23,7 +23,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.Slug; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs b/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs index 79b36f9a..f307b8db 100644 --- a/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs @@ -29,7 +29,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.Title; - /// /// Create a new . /// @@ -43,7 +42,6 @@ namespace Kyoo.Core.Controllers _libraries = libraries; } - /// public override Task GetOrDefault(int id) { diff --git a/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs b/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs index 8339505d..38f0e0b7 100644 --- a/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs @@ -29,7 +29,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.ID; - /// /// Create a new instance. /// @@ -42,7 +41,6 @@ namespace Kyoo.Core.Controllers _providers = providers; } - /// public override async Task> Search(string query) { diff --git a/Kyoo.Core/Controllers/Repositories/LocalRepository.cs b/Kyoo.Core/Controllers/Repositories/LocalRepository.cs index 0a729adb..79a528aa 100644 --- a/Kyoo.Core/Controllers/Repositories/LocalRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LocalRepository.cs @@ -31,7 +31,6 @@ namespace Kyoo.Core.Controllers /// protected abstract Expression> DefaultSort { get; } - /// /// Create a new base with the given database handle. /// diff --git a/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs b/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs index 6be87e9f..8deb8f76 100644 --- a/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs @@ -51,7 +51,6 @@ namespace Kyoo.Core.Controllers _shows = shows; } - /// public override async Task> Search(string query) { diff --git a/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs b/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs index 321b11d3..b1dca378 100644 --- a/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs @@ -20,7 +20,6 @@ namespace Kyoo.Core.Controllers /// private readonly DatabaseContext _database; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs b/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs index 7f26c4b3..bfc1ae16 100644 --- a/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs @@ -29,7 +29,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.SeasonNumber; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/ShowRepository.cs b/Kyoo.Core/Controllers/Repositories/ShowRepository.cs index 4d06daf1..bb1e98ea 100644 --- a/Kyoo.Core/Controllers/Repositories/ShowRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/ShowRepository.cs @@ -66,7 +66,6 @@ namespace Kyoo.Core.Controllers _providers = providers; } - /// public override async Task> Search(string query) { diff --git a/Kyoo.Core/Controllers/Repositories/StudioRepository.cs b/Kyoo.Core/Controllers/Repositories/StudioRepository.cs index 24bf8122..57cf1b95 100644 --- a/Kyoo.Core/Controllers/Repositories/StudioRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/StudioRepository.cs @@ -28,7 +28,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.Name; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/TrackRepository.cs b/Kyoo.Core/Controllers/Repositories/TrackRepository.cs index ce582bb8..769e5fc3 100644 --- a/Kyoo.Core/Controllers/Repositories/TrackRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/TrackRepository.cs @@ -22,7 +22,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.TrackIndex; - /// /// Create a new . /// diff --git a/Kyoo.Core/Controllers/Repositories/UserRepository.cs b/Kyoo.Core/Controllers/Repositories/UserRepository.cs index d632a473..0f12145e 100644 --- a/Kyoo.Core/Controllers/Repositories/UserRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/UserRepository.cs @@ -23,7 +23,6 @@ namespace Kyoo.Core.Controllers /// protected override Expression> DefaultSort => x => x.Username; - /// /// Create a new /// diff --git a/Kyoo.Core/Controllers/TaskManager.cs b/Kyoo.Core/Controllers/TaskManager.cs index 63ae2f3f..4ba9ee25 100644 --- a/Kyoo.Core/Controllers/TaskManager.cs +++ b/Kyoo.Core/Controllers/TaskManager.cs @@ -100,7 +100,6 @@ namespace Kyoo.Core.Controllers /// private readonly CancellationTokenSource _taskToken = new(); - /// /// Create a new . /// @@ -126,7 +125,6 @@ namespace Kyoo.Core.Controllers _logger.LogInformation("Task manager initiated without any tasks"); } - /// /// Triggered when the application host is ready to start the service. /// diff --git a/Kyoo.Core/Controllers/Transcoder.cs b/Kyoo.Core/Controllers/Transcoder.cs index fdbd28e1..176e429c 100644 --- a/Kyoo.Core/Controllers/Transcoder.cs +++ b/Kyoo.Core/Controllers/Transcoder.cs @@ -48,7 +48,6 @@ namespace Kyoo.Core.Controllers [DllImport(TranscoderPath, CallingConvention = CallingConvention.Cdecl)] private static extern void free_streams(IntPtr streams, uint count); - public static Track[] ExtractInfos(string path, string outPath, bool reextract) { path = path.Replace('\\', '/'); diff --git a/Kyoo.Core/CoreModule.cs b/Kyoo.Core/CoreModule.cs index 0b04223f..d2ec5f66 100644 --- a/Kyoo.Core/CoreModule.cs +++ b/Kyoo.Core/CoreModule.cs @@ -46,13 +46,11 @@ namespace Kyoo.Core { "logging", null } }; - /// /// The configuration to use. /// private readonly IConfiguration _configuration; - /// /// Create a new core module instance and use the given configuration. /// diff --git a/Kyoo.Core/Models/Stream.cs b/Kyoo.Core/Models/Stream.cs index 0161b16b..5d1a25dc 100644 --- a/Kyoo.Core/Models/Stream.cs +++ b/Kyoo.Core/Models/Stream.cs @@ -45,7 +45,6 @@ namespace Kyoo.Core.Models.Watch /// [SerializeIgnore] public StreamType Type { get; set; } - /// /// Create a track from this stream. /// diff --git a/Kyoo.Core/PluginsStartup.cs b/Kyoo.Core/PluginsStartup.cs index 74c800f9..1e7d62b5 100644 --- a/Kyoo.Core/PluginsStartup.cs +++ b/Kyoo.Core/PluginsStartup.cs @@ -126,7 +126,6 @@ namespace Kyoo.Core config.Register(path, type); } - /// /// Create a new from a webhost. /// This is meant to be used from . @@ -169,7 +168,6 @@ namespace Kyoo.Core /// private readonly ILoggerFactory _loggerFactory; - /// /// Create a new that will return given services when asked. /// diff --git a/Kyoo.Core/Tasks/Crawler.cs b/Kyoo.Core/Tasks/Crawler.cs index 78625dea..75a328b5 100644 --- a/Kyoo.Core/Tasks/Crawler.cs +++ b/Kyoo.Core/Tasks/Crawler.cs @@ -56,7 +56,6 @@ namespace Kyoo.Core.Tasks _logger = logger; } - /// public TaskParameters GetParameters() { @@ -125,7 +124,6 @@ namespace Kyoo.Core.Tasks .GroupBy(Path.GetDirectoryName) .ToList(); - string[] paths = shows.Select(x => x.First()) .Concat(shows.SelectMany(x => x.Skip(1))) .ToArray(); @@ -146,7 +144,6 @@ namespace Kyoo.Core.Tasks percent += 100f / paths.Length; } - string[] subtitles = files .Where(FileExtensions.IsSubtitle) .Where(x => !x.Contains("Extra")) diff --git a/Kyoo.Core/Tasks/MetadataProviderLoader.cs b/Kyoo.Core/Tasks/MetadataProviderLoader.cs index 36ed7f14..88f0a255 100644 --- a/Kyoo.Core/Tasks/MetadataProviderLoader.cs +++ b/Kyoo.Core/Tasks/MetadataProviderLoader.cs @@ -51,7 +51,6 @@ namespace Kyoo.Core.Tasks _metadataProviders = metadataProviders; } - /// public TaskParameters GetParameters() { diff --git a/Kyoo.Core/Tasks/PluginInitializer.cs b/Kyoo.Core/Tasks/PluginInitializer.cs index e51219bf..0694671d 100644 --- a/Kyoo.Core/Tasks/PluginInitializer.cs +++ b/Kyoo.Core/Tasks/PluginInitializer.cs @@ -35,7 +35,6 @@ namespace Kyoo.Core.Tasks _provider = provider; } - /// public TaskParameters GetParameters() { diff --git a/Kyoo.Core/Views/Helper/CrudApi.cs b/Kyoo.Core/Views/Helper/CrudApi.cs index 31ea394d..9a64bb14 100644 --- a/Kyoo.Core/Views/Helper/CrudApi.cs +++ b/Kyoo.Core/Views/Helper/CrudApi.cs @@ -23,7 +23,6 @@ namespace Kyoo.Core.Api BaseURL = baseURL; } - [HttpGet("{id:int}")] [PartialPermission(Kind.Read)] public virtual async Task> Get(int id) diff --git a/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs b/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs index b3d3a2a8..951b402e 100644 --- a/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs +++ b/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs @@ -90,7 +90,6 @@ namespace Kyoo.Core.Api ICollection fields = (ICollection)context.HttpContext.Items["fields"]; Type pageType = Utility.GetGenericDefinition(result.DeclaredType, typeof(Page<>)); - if (pageType != null) { foreach (IResource resource in ((dynamic)result.Value).Items) diff --git a/Kyoo.Core/Views/LibraryItemApi.cs b/Kyoo.Core/Views/LibraryItemApi.cs index 549f9b11..61014616 100644 --- a/Kyoo.Core/Views/LibraryItemApi.cs +++ b/Kyoo.Core/Views/LibraryItemApi.cs @@ -21,7 +21,6 @@ namespace Kyoo.Core.Api private readonly ILibraryItemRepository _libraryItems; private readonly Uri _baseURL; - public LibraryItemApi(ILibraryItemRepository libraryItems, IOptions options) { _libraryItems = libraryItems; diff --git a/Kyoo.Core/Views/SubtitleApi.cs b/Kyoo.Core/Views/SubtitleApi.cs index 2d2fd772..6c1efdd2 100644 --- a/Kyoo.Core/Views/SubtitleApi.cs +++ b/Kyoo.Core/Views/SubtitleApi.cs @@ -44,7 +44,6 @@ namespace Kyoo.Core.Api return _files.FileResult(subtitle.Path); } - [HttpGet("{slug}")] [Permission(nameof(SubtitleApi), Kind.Read)] public async Task GetSubtitle(string slug) @@ -67,7 +66,6 @@ namespace Kyoo.Core.Api } } - public class ConvertSubripToVtt : IActionResult { private readonly string _path; diff --git a/Kyoo.Core/Views/TaskApi.cs b/Kyoo.Core/Views/TaskApi.cs index a1490714..7d9908c5 100644 --- a/Kyoo.Core/Views/TaskApi.cs +++ b/Kyoo.Core/Views/TaskApi.cs @@ -19,7 +19,6 @@ namespace Kyoo.Core.Api _taskManager = taskManager; } - [HttpGet] [Permission(nameof(TaskApi), Kind.Read)] public ActionResult> GetTasks() diff --git a/Kyoo.Core/Views/VideoApi.cs b/Kyoo.Core/Views/VideoApi.cs index 7c16ead1..f99f3c2d 100644 --- a/Kyoo.Core/Views/VideoApi.cs +++ b/Kyoo.Core/Views/VideoApi.cs @@ -40,7 +40,6 @@ namespace Kyoo.Core.Api ctx.HttpContext.Response.Headers.Add("Expires", "0"); } - // TODO enable the following line, this is disabled since the web app can't use bearers. [Permission("video", Kind.Read)] [HttpGet("{slug}")] [HttpGet("direct/{slug}")] @@ -95,7 +94,6 @@ namespace Kyoo.Core.Api } } - [HttpGet("transmux/{episodeLink}/segments/{chunk}")] [Permission("video", Kind.Read)] public IActionResult GetTransmuxedChunk(string episodeLink, string chunk) diff --git a/Kyoo.Database/DatabaseContext.cs b/Kyoo.Database/DatabaseContext.cs index 8819d1e6..6b00b963 100644 --- a/Kyoo.Database/DatabaseContext.cs +++ b/Kyoo.Database/DatabaseContext.cs @@ -126,7 +126,6 @@ namespace Kyoo.Database }); } - /// /// The default constructor /// @@ -227,7 +226,6 @@ namespace Kyoo.Database ); } - /// /// Set database parameters to support every types of Kyoo. /// diff --git a/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.csproj b/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.csproj index 5c69b009..dffd572f 100644 --- a/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.csproj +++ b/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.csproj @@ -1,4 +1,8 @@ + + {98851001-40DD-46A6-94B3-2F8D90722076} + + diff --git a/Kyoo.Postgresql/Migrations/20210801171641_Triggers.cs b/Kyoo.Postgresql/Migrations/20210801171641_Triggers.cs index 5d0de3e0..9d7bd2e5 100644 --- a/Kyoo.Postgresql/Migrations/20210801171641_Triggers.cs +++ b/Kyoo.Postgresql/Migrations/20210801171641_Triggers.cs @@ -27,7 +27,6 @@ namespace Kyoo.Postgresql.Migrations CREATE TRIGGER season_slug_trigger BEFORE INSERT OR UPDATE OF season_number, show_id ON seasons FOR EACH ROW EXECUTE PROCEDURE season_slug_update();"); - // language=PostgreSQL migrationBuilder.Sql(@" CREATE FUNCTION episode_slug_update() @@ -53,7 +52,6 @@ namespace Kyoo.Postgresql.Migrations BEFORE INSERT OR UPDATE OF absolute_number, episode_number, season_number, show_id ON episodes FOR EACH ROW EXECUTE PROCEDURE episode_slug_update();"); - // language=PostgreSQL migrationBuilder.Sql(@" CREATE FUNCTION show_slug_update() @@ -137,7 +135,6 @@ namespace Kyoo.Postgresql.Migrations BEFORE INSERT OR UPDATE OF episode_id, is_forced, language, track_index, type ON tracks FOR EACH ROW EXECUTE PROCEDURE track_slug_update();"); - // language=PostgreSQL migrationBuilder.Sql(@" CREATE VIEW library_items AS diff --git a/Kyoo.Postgresql/PostgresContext.cs b/Kyoo.Postgresql/PostgresContext.cs index 1e8a7cf7..a6a5b679 100644 --- a/Kyoo.Postgresql/PostgresContext.cs +++ b/Kyoo.Postgresql/PostgresContext.cs @@ -31,7 +31,6 @@ namespace Kyoo.Postgresql /// private readonly bool _skipConfigure; - static PostgresContext() { NpgsqlConnection.GlobalTypeMapper.MapEnum(); diff --git a/Kyoo.SqLite/Migrations/20210801171544_Triggers.cs b/Kyoo.SqLite/Migrations/20210801171544_Triggers.cs index 1e57c4e1..dfe24c54 100644 --- a/Kyoo.SqLite/Migrations/20210801171544_Triggers.cs +++ b/Kyoo.SqLite/Migrations/20210801171544_Triggers.cs @@ -134,7 +134,6 @@ namespace Kyoo.SqLite.Migrations WHERE EpisodeID = NEW.ID; END;"); - // language=SQLite migrationBuilder.Sql(@" CREATE TRIGGER ShowSlugUpdate AFTER UPDATE OF Slug ON Shows FOR EACH ROW @@ -150,7 +149,6 @@ namespace Kyoo.SqLite.Migrations WHERE ShowID = new.ID; END;"); - // language=SQLite migrationBuilder.Sql(@" CREATE VIEW LibraryItems AS diff --git a/Kyoo.SqLite/SqLiteContext.cs b/Kyoo.SqLite/SqLiteContext.cs index 709e239f..32379ed8 100644 --- a/Kyoo.SqLite/SqLiteContext.cs +++ b/Kyoo.SqLite/SqLiteContext.cs @@ -139,7 +139,6 @@ namespace Kyoo.SqLite .Property(x => x.Images) .HasConversion(jsonConvertor); - modelBuilder.Entity() .ToView("LibraryItems") .HasKey(x => x.ID); diff --git a/Kyoo.SqLite/SqLiteModule.cs b/Kyoo.SqLite/SqLiteModule.cs index 7c0c0f2c..ecb0b62f 100644 --- a/Kyoo.SqLite/SqLiteModule.cs +++ b/Kyoo.SqLite/SqLiteModule.cs @@ -30,7 +30,6 @@ namespace Kyoo.SqLite /// public bool Enabled => _configuration.GetSelectedDatabase() == "sqlite"; - /// /// The configuration to use. The database connection string is pulled from it. /// @@ -52,7 +51,6 @@ namespace Kyoo.SqLite _environment = env; } - /// public void Configure(IServiceCollection services) { diff --git a/Kyoo.TheTvdb/ProviderTvdb.cs b/Kyoo.TheTvdb/ProviderTvdb.cs index b1422bc3..b0c6540f 100644 --- a/Kyoo.TheTvdb/ProviderTvdb.cs +++ b/Kyoo.TheTvdb/ProviderTvdb.cs @@ -38,7 +38,6 @@ namespace Kyoo.TheTvdb } }; - /// /// Create a new using a tvdb client and an api key. /// diff --git a/tests/Kyoo.Tests/Database/RepositoryActivator.cs b/tests/Kyoo.Tests/Database/RepositoryActivator.cs index 902d7c68..6dfa8ed1 100644 --- a/tests/Kyoo.Tests/Database/RepositoryActivator.cs +++ b/tests/Kyoo.Tests/Database/RepositoryActivator.cs @@ -13,7 +13,6 @@ namespace Kyoo.Tests public TestContext Context { get; } public ILibraryManager LibraryManager { get; } - private readonly List _databases = new(); public RepositoryActivator(ITestOutputHelper output, PostgresFixture postgres = null) diff --git a/tests/Kyoo.Tests/Database/SpecificTests/EpisodeTests.cs b/tests/Kyoo.Tests/Database/SpecificTests/EpisodeTests.cs index b8fcdbd0..7bda71ae 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/EpisodeTests.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/EpisodeTests.cs @@ -19,7 +19,6 @@ namespace Kyoo.Tests.Database } } - namespace PostgreSQL { [Collection(nameof(Postgresql))] @@ -127,7 +126,6 @@ namespace Kyoo.Tests.Database Assert.Equal($"new-slug-3", episode.Slug); } - [Fact] public async Task AbsoluteNumberEditTest() { diff --git a/tests/Kyoo.Tests/Database/SpecificTests/LibraryItemTest.cs b/tests/Kyoo.Tests/Database/SpecificTests/LibraryItemTest.cs index 2d6fdef3..1d6b5dd0 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/LibraryItemTest.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/LibraryItemTest.cs @@ -16,7 +16,6 @@ namespace Kyoo.Tests.Database } } - namespace PostgreSQL { [Collection(nameof(Postgresql))] diff --git a/tests/Kyoo.Tests/Database/SpecificTests/SeasonTests.cs b/tests/Kyoo.Tests/Database/SpecificTests/SeasonTests.cs index fb2aed76..676cbd5d 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/SeasonTests.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/SeasonTests.cs @@ -19,7 +19,6 @@ namespace Kyoo.Tests.Database } } - namespace PostgreSQL { [Collection(nameof(Postgresql))] diff --git a/tests/Kyoo.Tests/Database/SpecificTests/TrackTests.cs b/tests/Kyoo.Tests/Database/SpecificTests/TrackTests.cs index d451c6df..af3f9603 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/TrackTests.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/TrackTests.cs @@ -15,7 +15,6 @@ namespace Kyoo.Tests.Database } } - namespace PostgreSQL { [Collection(nameof(Postgresql))] diff --git a/tests/Kyoo.Tests/Database/TestContext.cs b/tests/Kyoo.Tests/Database/TestContext.cs index aa6cc396..5c587839 100644 --- a/tests/Kyoo.Tests/Database/TestContext.cs +++ b/tests/Kyoo.Tests/Database/TestContext.cs @@ -163,7 +163,6 @@ namespace Kyoo.Tests } } - /// /// Class responsible to fill and create in memory databases for unit tests. /// diff --git a/tests/Kyoo.Tests/Database/TestSample.cs b/tests/Kyoo.Tests/Database/TestSample.cs index 10994708..4c686a29 100644 --- a/tests/Kyoo.Tests/Database/TestSample.cs +++ b/tests/Kyoo.Tests/Database/TestSample.cs @@ -122,7 +122,6 @@ namespace Kyoo.Tests } }; - private static readonly Dictionary> Samples = new() { { diff --git a/tests/Kyoo.Tests/Identifier/IdentifierTests.cs b/tests/Kyoo.Tests/Identifier/IdentifierTests.cs index 337cb924..9eedb89e 100644 --- a/tests/Kyoo.Tests/Identifier/IdentifierTests.cs +++ b/tests/Kyoo.Tests/Identifier/IdentifierTests.cs @@ -36,7 +36,6 @@ namespace Kyoo.Tests.Identifier _identifier = new RegexIdentifier(options.Object, _manager.Object); } - [Fact] public async Task EpisodeIdentification() {