diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e0e25260..c6f063b7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,7 +10,7 @@ jobs: fail-fast: false matrix: include: - - os: ubuntu-latest #ubuntu-16.04 # We are using an old version of ubuntu to have an old libc version (forward compatibility exist but not backward) + - os: ubuntu-latest runtime: linux-x64 artifact: linux - os: windows-latest @@ -35,7 +35,6 @@ jobs: elif [[ "${{runner.os}}" == "macOS" ]]; then brew install ffmpeg else - # sudo add-apt-repository -y "deb http://azure.archive.ubuntu.com/ubuntu groovy main multiverse restricted universe" sudo apt-get update sudo apt-get install -y libavutil-dev libavcodec-dev libavformat-dev fi diff --git a/Kyoo.Abstractions/Controllers/IRepository.cs b/Kyoo.Abstractions/Controllers/IRepository.cs index 3a7dee05..45c866ba 100644 --- a/Kyoo.Abstractions/Controllers/IRepository.cs +++ b/Kyoo.Abstractions/Controllers/IRepository.cs @@ -6,6 +6,7 @@ using System.Threading.Tasks; using JetBrains.Annotations; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; +using Kyoo.Utils; namespace Kyoo.Abstractions.Controllers { diff --git a/Kyoo.Abstractions/Models/ConfigurationReference.cs b/Kyoo.Abstractions/Models/ConfigurationReference.cs index 8b1064dd..676367e3 100644 --- a/Kyoo.Abstractions/Models/ConfigurationReference.cs +++ b/Kyoo.Abstractions/Models/ConfigurationReference.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Reflection; using JetBrains.Annotations; +using Kyoo.Utils; namespace Kyoo.Abstractions.Models { diff --git a/Kyoo.Abstractions/Models/Page.cs b/Kyoo.Abstractions/Models/Page.cs index eb8898d2..5dc37abb 100644 --- a/Kyoo.Abstractions/Models/Page.cs +++ b/Kyoo.Abstractions/Models/Page.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using Kyoo.Utils; namespace Kyoo.Abstractions.Models { diff --git a/Kyoo.Abstractions/Models/Resources/Genre.cs b/Kyoo.Abstractions/Models/Resources/Genre.cs index b346381f..0cf2d9b3 100644 --- a/Kyoo.Abstractions/Models/Resources/Genre.cs +++ b/Kyoo.Abstractions/Models/Resources/Genre.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; namespace Kyoo.Abstractions.Models { diff --git a/Kyoo.Abstractions/Models/Resources/Provider.cs b/Kyoo.Abstractions/Models/Resources/Provider.cs index 61726100..d1a34223 100644 --- a/Kyoo.Abstractions/Models/Resources/Provider.cs +++ b/Kyoo.Abstractions/Models/Resources/Provider.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; namespace Kyoo.Abstractions.Models { diff --git a/Kyoo.Abstractions/Models/Resources/Studio.cs b/Kyoo.Abstractions/Models/Resources/Studio.cs index f0e14567..fbc4934b 100644 --- a/Kyoo.Abstractions/Models/Resources/Studio.cs +++ b/Kyoo.Abstractions/Models/Resources/Studio.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; namespace Kyoo.Abstractions.Models { diff --git a/Kyoo.Abstractions/Module.cs b/Kyoo.Abstractions/Module.cs index f4594387..dcc5bc18 100644 --- a/Kyoo.Abstractions/Module.cs +++ b/Kyoo.Abstractions/Module.cs @@ -1,6 +1,7 @@ using Autofac; using Autofac.Builder; using Kyoo.Abstractions.Controllers; +using Kyoo.Utils; using Microsoft.Extensions.Configuration; namespace Kyoo.Abstractions diff --git a/Kyoo.Abstractions/Utility/EnumerableExtensions.cs b/Kyoo.Abstractions/Utility/EnumerableExtensions.cs index 93f1b52e..9bd81157 100644 --- a/Kyoo.Abstractions/Utility/EnumerableExtensions.cs +++ b/Kyoo.Abstractions/Utility/EnumerableExtensions.cs @@ -4,7 +4,7 @@ using System.Collections.Generic; using System.Threading.Tasks; using JetBrains.Annotations; -namespace Kyoo +namespace Kyoo.Utils { /// /// A set of extensions class for enumerable. diff --git a/Kyoo.Abstractions/Utility/Merger.cs b/Kyoo.Abstractions/Utility/Merger.cs index c59f47a1..fe00a924 100644 --- a/Kyoo.Abstractions/Utility/Merger.cs +++ b/Kyoo.Abstractions/Utility/Merger.cs @@ -8,7 +8,7 @@ using JetBrains.Annotations; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; -namespace Kyoo +namespace Kyoo.Utils { /// /// A class containing helper methods to merge objects. diff --git a/Kyoo.Abstractions/Utility/MethodOfUtils.cs b/Kyoo.Abstractions/Utility/MethodOfUtils.cs index 5d051f69..30a1ce4c 100644 --- a/Kyoo.Abstractions/Utility/MethodOfUtils.cs +++ b/Kyoo.Abstractions/Utility/MethodOfUtils.cs @@ -1,7 +1,7 @@ using System; using System.Reflection; -namespace Kyoo +namespace Kyoo.Utils { /// /// Static class containing MethodOf calls. diff --git a/Kyoo.Abstractions/Utility/TaskUtils.cs b/Kyoo.Abstractions/Utility/TaskUtils.cs index a0d04b03..91413f2c 100644 --- a/Kyoo.Abstractions/Utility/TaskUtils.cs +++ b/Kyoo.Abstractions/Utility/TaskUtils.cs @@ -2,7 +2,7 @@ using System; using System.Threading.Tasks; using JetBrains.Annotations; -namespace Kyoo +namespace Kyoo.Utils { /// /// A class containing helper method for tasks. diff --git a/Kyoo.Abstractions/Utility/Utility.cs b/Kyoo.Abstractions/Utility/Utility.cs index ab4fc92d..d1bb91b1 100644 --- a/Kyoo.Abstractions/Utility/Utility.cs +++ b/Kyoo.Abstractions/Utility/Utility.cs @@ -9,7 +9,7 @@ using System.Text; using System.Text.RegularExpressions; using JetBrains.Annotations; -namespace Kyoo +namespace Kyoo.Utils { /// /// A set of utility functions that can be used everywhere. diff --git a/Kyoo.Authentication/Models/DTO/RegisterRequest.cs b/Kyoo.Authentication/Models/DTO/RegisterRequest.cs index e10967fd..1e505bb7 100644 --- a/Kyoo.Authentication/Models/DTO/RegisterRequest.cs +++ b/Kyoo.Authentication/Models/DTO/RegisterRequest.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using Kyoo.Abstractions.Models; +using Kyoo.Utils; namespace Kyoo.Authentication.Models.DTO { diff --git a/Kyoo/.gitignore b/Kyoo.Core/.gitignore similarity index 100% rename from Kyoo/.gitignore rename to Kyoo.Core/.gitignore diff --git a/Kyoo/Application.cs b/Kyoo.Core/Application.cs similarity index 99% rename from Kyoo/Application.cs rename to Kyoo.Core/Application.cs index b51192f3..2101aeb6 100644 --- a/Kyoo/Application.cs +++ b/Kyoo.Core/Application.cs @@ -18,7 +18,7 @@ using Serilog.Templates; using Serilog.Templates.Themes; using ILogger = Serilog.ILogger; -namespace Kyoo +namespace Kyoo.Core { public class Application : IApplication { diff --git a/Kyoo/Controllers/ConfigurationManager.cs b/Kyoo.Core/Controllers/ConfigurationManager.cs similarity index 99% rename from Kyoo/Controllers/ConfigurationManager.cs rename to Kyoo.Core/Controllers/ConfigurationManager.cs index d43129de..7f5432f1 100644 --- a/Kyoo/Controllers/ConfigurationManager.cs +++ b/Kyoo.Core/Controllers/ConfigurationManager.cs @@ -8,11 +8,11 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; -using Kyoo.Api; +using Kyoo.Core.Api; using Microsoft.Extensions.Configuration; using Newtonsoft.Json.Linq; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { public class ConfigurationManager : IConfigurationManager { diff --git a/Kyoo/Controllers/FileSystems/FileSystemComposite.cs b/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs similarity index 99% rename from Kyoo/Controllers/FileSystems/FileSystemComposite.cs rename to Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs index bab7167d..4a715602 100644 --- a/Kyoo/Controllers/FileSystems/FileSystemComposite.cs +++ b/Kyoo.Core/Controllers/FileSystems/FileSystemComposite.cs @@ -9,11 +9,11 @@ using JetBrains.Annotations; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A composite that merge every available diff --git a/Kyoo/Controllers/FileSystems/HttpFileSystem.cs b/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs similarity index 99% rename from Kyoo/Controllers/FileSystems/HttpFileSystem.cs rename to Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs index 8bd3d62f..0b5618fa 100644 --- a/Kyoo/Controllers/FileSystems/HttpFileSystem.cs +++ b/Kyoo.Core/Controllers/FileSystems/HttpFileSystem.cs @@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A for http/https links. diff --git a/Kyoo/Controllers/FileSystems/LocalFileSystem.cs b/Kyoo.Core/Controllers/FileSystems/LocalFileSystem.cs similarity index 98% rename from Kyoo/Controllers/FileSystems/LocalFileSystem.cs rename to Kyoo.Core/Controllers/FileSystems/LocalFileSystem.cs index 3c4da8a0..3c75717f 100644 --- a/Kyoo/Controllers/FileSystems/LocalFileSystem.cs +++ b/Kyoo.Core/Controllers/FileSystems/LocalFileSystem.cs @@ -5,12 +5,12 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.StaticFiles; using Microsoft.Extensions.Options; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A for the local filesystem (using System.IO). diff --git a/Kyoo/Controllers/LibraryManager.cs b/Kyoo.Core/Controllers/LibraryManager.cs similarity index 99% rename from Kyoo/Controllers/LibraryManager.cs rename to Kyoo.Core/Controllers/LibraryManager.cs index 2b396ed5..e7759f0a 100644 --- a/Kyoo/Controllers/LibraryManager.cs +++ b/Kyoo.Core/Controllers/LibraryManager.cs @@ -6,8 +6,9 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; +using Kyoo.Utils; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { public class LibraryManager : ILibraryManager { diff --git a/Kyoo/Controllers/PassthroughPermissionValidator.cs b/Kyoo.Core/Controllers/PassthroughPermissionValidator.cs similarity index 96% rename from Kyoo/Controllers/PassthroughPermissionValidator.cs rename to Kyoo.Core/Controllers/PassthroughPermissionValidator.cs index 5b623008..914835bf 100644 --- a/Kyoo/Controllers/PassthroughPermissionValidator.cs +++ b/Kyoo.Core/Controllers/PassthroughPermissionValidator.cs @@ -2,7 +2,7 @@ using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.Extensions.Logging; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A permission validator that always validate permissions. This effectively disable the permission system. diff --git a/Kyoo/Controllers/PluginManager.cs b/Kyoo.Core/Controllers/PluginManager.cs similarity index 98% rename from Kyoo/Controllers/PluginManager.cs rename to Kyoo.Core/Controllers/PluginManager.cs index 3b60e83f..37dc173d 100644 --- a/Kyoo/Controllers/PluginManager.cs +++ b/Kyoo.Core/Controllers/PluginManager.cs @@ -5,12 +5,12 @@ using System.Linq; using System.Reflection; using System.Runtime.Loader; using Kyoo.Abstractions.Controllers; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// An implementation of . diff --git a/Kyoo/Controllers/ProviderComposite.cs b/Kyoo.Core/Controllers/ProviderComposite.cs similarity index 98% rename from Kyoo/Controllers/ProviderComposite.cs rename to Kyoo.Core/Controllers/ProviderComposite.cs index dd9ecb41..1032b022 100644 --- a/Kyoo/Controllers/ProviderComposite.cs +++ b/Kyoo.Core/Controllers/ProviderComposite.cs @@ -4,9 +4,10 @@ using System.Linq; using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using Microsoft.Extensions.Logging; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A metadata provider composite that merge results from all available providers. diff --git a/Kyoo/Controllers/RegexIdentifier.cs b/Kyoo.Core/Controllers/RegexIdentifier.cs similarity index 97% rename from Kyoo/Controllers/RegexIdentifier.cs rename to Kyoo.Core/Controllers/RegexIdentifier.cs index 41a6e0d8..1032d4bb 100644 --- a/Kyoo/Controllers/RegexIdentifier.cs +++ b/Kyoo.Core/Controllers/RegexIdentifier.cs @@ -7,11 +7,12 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; -using Kyoo.Models.Options; -using Kyoo.Models.Watch; +using Kyoo.Core.Models.Options; +using Kyoo.Core.Models.Watch; +using Kyoo.Utils; using Microsoft.Extensions.Options; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// An identifier that use a regex to extract basics metadata. diff --git a/Kyoo/Controllers/Repositories/CollectionRepository.cs b/Kyoo.Core/Controllers/Repositories/CollectionRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/CollectionRepository.cs rename to Kyoo.Core/Controllers/Repositories/CollectionRepository.cs index cdb0740a..f6d1e220 100644 --- a/Kyoo/Controllers/Repositories/CollectionRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/CollectionRepository.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle collections diff --git a/Kyoo/Controllers/Repositories/EpisodeRepository.cs b/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/EpisodeRepository.cs rename to Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs index d31e97cc..f19acdb2 100644 --- a/Kyoo/Controllers/Repositories/EpisodeRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/EpisodeRepository.cs @@ -7,9 +7,10 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle episodes. diff --git a/Kyoo/Controllers/Repositories/GenreRepository.cs b/Kyoo.Core/Controllers/Repositories/GenreRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/GenreRepository.cs rename to Kyoo.Core/Controllers/Repositories/GenreRepository.cs index b791f627..f72b13e7 100644 --- a/Kyoo/Controllers/Repositories/GenreRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/GenreRepository.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository for genres. diff --git a/Kyoo/Controllers/Repositories/LibraryItemRepository.cs b/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/LibraryItemRepository.cs rename to Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs index 172c7ab6..ba075c09 100644 --- a/Kyoo/Controllers/Repositories/LibraryItemRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LibraryItemRepository.cs @@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle library items. diff --git a/Kyoo/Controllers/Repositories/LibraryRepository.cs b/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/LibraryRepository.cs rename to Kyoo.Core/Controllers/Repositories/LibraryRepository.cs index e532d4e0..1e835114 100644 --- a/Kyoo/Controllers/Repositories/LibraryRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LibraryRepository.cs @@ -6,9 +6,10 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle libraries. diff --git a/Kyoo/Controllers/Repositories/LocalRepository.cs b/Kyoo.Core/Controllers/Repositories/LocalRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/LocalRepository.cs rename to Kyoo.Core/Controllers/Repositories/LocalRepository.cs index 14d4cb40..55c6e259 100644 --- a/Kyoo/Controllers/Repositories/LocalRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/LocalRepository.cs @@ -8,10 +8,11 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models.Exceptions; -using Kyoo.Api; +using Kyoo.Utils; +using Kyoo.Core.Api; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A base class to create repositories using Entity Framework. diff --git a/Kyoo/Controllers/Repositories/PeopleRepository.cs b/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/PeopleRepository.cs rename to Kyoo.Core/Controllers/Repositories/PeopleRepository.cs index 10ca820b..9b8eb38f 100644 --- a/Kyoo/Controllers/Repositories/PeopleRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/PeopleRepository.cs @@ -7,9 +7,10 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle people. diff --git a/Kyoo/Controllers/Repositories/ProviderRepository.cs b/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/ProviderRepository.cs rename to Kyoo.Core/Controllers/Repositories/ProviderRepository.cs index a1f00608..321b11d3 100644 --- a/Kyoo/Controllers/Repositories/ProviderRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/ProviderRepository.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle providers. diff --git a/Kyoo/Controllers/Repositories/SeasonRepository.cs b/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/SeasonRepository.cs rename to Kyoo.Core/Controllers/Repositories/SeasonRepository.cs index f63f37e2..1a22fe15 100644 --- a/Kyoo/Controllers/Repositories/SeasonRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/SeasonRepository.cs @@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle seasons. diff --git a/Kyoo/Controllers/Repositories/ShowRepository.cs b/Kyoo.Core/Controllers/Repositories/ShowRepository.cs similarity index 99% rename from Kyoo/Controllers/Repositories/ShowRepository.cs rename to Kyoo.Core/Controllers/Repositories/ShowRepository.cs index 1605eab6..dca498c7 100644 --- a/Kyoo/Controllers/Repositories/ShowRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/ShowRepository.cs @@ -5,10 +5,11 @@ using System.Linq.Expressions; using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle shows diff --git a/Kyoo/Controllers/Repositories/StudioRepository.cs b/Kyoo.Core/Controllers/Repositories/StudioRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/StudioRepository.cs rename to Kyoo.Core/Controllers/Repositories/StudioRepository.cs index 42b98b44..185e4420 100644 --- a/Kyoo/Controllers/Repositories/StudioRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/StudioRepository.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle studios diff --git a/Kyoo/Controllers/Repositories/TrackRepository.cs b/Kyoo.Core/Controllers/Repositories/TrackRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/TrackRepository.cs rename to Kyoo.Core/Controllers/Repositories/TrackRepository.cs index b7c29c47..c6b7889c 100644 --- a/Kyoo/Controllers/Repositories/TrackRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/TrackRepository.cs @@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A local repository to handle tracks. diff --git a/Kyoo/Controllers/Repositories/UserRepository.cs b/Kyoo.Core/Controllers/Repositories/UserRepository.cs similarity index 98% rename from Kyoo/Controllers/Repositories/UserRepository.cs rename to Kyoo.Core/Controllers/Repositories/UserRepository.cs index 896b8480..1b267ab6 100644 --- a/Kyoo/Controllers/Repositories/UserRepository.cs +++ b/Kyoo.Core/Controllers/Repositories/UserRepository.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Database; using Microsoft.EntityFrameworkCore; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A repository for users. diff --git a/Kyoo/Controllers/TaskManager.cs b/Kyoo.Core/Controllers/TaskManager.cs similarity index 99% rename from Kyoo/Controllers/TaskManager.cs rename to Kyoo.Core/Controllers/TaskManager.cs index df89f290..af1d24e6 100644 --- a/Kyoo/Controllers/TaskManager.cs +++ b/Kyoo.Core/Controllers/TaskManager.cs @@ -10,12 +10,12 @@ using JetBrains.Annotations; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models.Exceptions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// A service to handle long running tasks and a background runner. diff --git a/Kyoo/Controllers/ThumbnailsManager.cs b/Kyoo.Core/Controllers/ThumbnailsManager.cs similarity index 99% rename from Kyoo/Controllers/ThumbnailsManager.cs rename to Kyoo.Core/Controllers/ThumbnailsManager.cs index 274b655f..d82db69f 100644 --- a/Kyoo/Controllers/ThumbnailsManager.cs +++ b/Kyoo.Core/Controllers/ThumbnailsManager.cs @@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models; using Microsoft.AspNetCore.StaticFiles; using Microsoft.Extensions.Logging; -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { /// /// Download images and retrieve the path of those images for a resource. diff --git a/Kyoo/Controllers/Transcoder.cs b/Kyoo.Core/Controllers/Transcoder.cs similarity index 92% rename from Kyoo/Controllers/Transcoder.cs rename to Kyoo.Core/Controllers/Transcoder.cs index 379c1827..1f2f8d08 100644 --- a/Kyoo/Controllers/Transcoder.cs +++ b/Kyoo.Core/Controllers/Transcoder.cs @@ -4,14 +4,14 @@ using System.Runtime.InteropServices; using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -using Stream = Kyoo.Models.Watch.Stream; +using Stream = Kyoo.Core.Models.Watch.Stream; // We use threads so tasks are not always awaited. #pragma warning disable 4014 -namespace Kyoo.Controllers +namespace Kyoo.Core.Controllers { public class BadTranscoderException : Exception {} @@ -54,7 +54,7 @@ namespace Kyoo.Controllers path = path.Replace('\\', '/'); outPath = outPath.Replace('\\', '/'); - int size = Marshal.SizeOf(); + int size = Marshal.SizeOf(); IntPtr ptr = extract_infos(path, outPath, out uint arrayLength, out uint trackCount, reextract); IntPtr streamsPtr = ptr; Track[] tracks; @@ -66,7 +66,7 @@ namespace Kyoo.Controllers int j = 0; for (int i = 0; i < arrayLength; i++) { - Stream stream = Marshal.PtrToStructure(streamsPtr); + Models.Watch.Stream stream = Marshal.PtrToStructure(streamsPtr); if (stream!.Type != StreamType.Unknown) { tracks[j] = stream.ToTrack(); @@ -94,7 +94,7 @@ namespace Kyoo.Controllers _options = options; _library = library; - if (TranscoderAPI.Init() != Marshal.SizeOf()) + if (TranscoderAPI.Init() != Marshal.SizeOf()) throw new BadTranscoderException(); } diff --git a/Kyoo/CoreModule.cs b/Kyoo.Core/CoreModule.cs similarity index 97% rename from Kyoo/CoreModule.cs rename to Kyoo.Core/CoreModule.cs index 470ad3bd..ef0961cc 100644 --- a/Kyoo/CoreModule.cs +++ b/Kyoo.Core/CoreModule.cs @@ -7,11 +7,11 @@ using Autofac.Extras.AttributeMetadata; using Kyoo.Abstractions; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Api; -using Kyoo.Controllers; +using Kyoo.Core.Api; +using Kyoo.Core.Controllers; +using Kyoo.Core.Models.Options; +using Kyoo.Core.Tasks; using Kyoo.Database; -using Kyoo.Models.Options; -using Kyoo.Tasks; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.StaticFiles; using Microsoft.Extensions.Configuration; @@ -20,7 +20,7 @@ using Microsoft.Extensions.Hosting; using Serilog; using IMetadataProvider = Kyoo.Abstractions.Controllers.IMetadataProvider; -namespace Kyoo +namespace Kyoo.Core { /// /// The core module containing default implementations diff --git a/Kyoo/Helper.cs b/Kyoo.Core/Helper.cs similarity index 97% rename from Kyoo/Helper.cs rename to Kyoo.Core/Helper.cs index ad8a6dfb..570e22d6 100644 --- a/Kyoo/Helper.cs +++ b/Kyoo.Core/Helper.cs @@ -2,7 +2,7 @@ using System.Net.Http; using System.Threading.Tasks; using Newtonsoft.Json; -namespace Kyoo +namespace Kyoo.Core { public static class Helper { diff --git a/Kyoo/Kyoo.csproj b/Kyoo.Core/Kyoo.Core.csproj similarity index 100% rename from Kyoo/Kyoo.csproj rename to Kyoo.Core/Kyoo.Core.csproj diff --git a/Kyoo/Models/FileExtensions.cs b/Kyoo.Core/Models/FileExtensions.cs similarity index 98% rename from Kyoo/Models/FileExtensions.cs rename to Kyoo.Core/Models/FileExtensions.cs index 5b29fe08..26e520d1 100644 --- a/Kyoo/Models/FileExtensions.cs +++ b/Kyoo.Core/Models/FileExtensions.cs @@ -2,7 +2,7 @@ using System.Collections.Generic; using System.Collections.Immutable; using System.IO; -namespace Kyoo.Models.Watch +namespace Kyoo.Core.Models.Watch { /// /// A static class allowing one to identify files extensions. diff --git a/Kyoo/Models/Options/BasicOptions.cs b/Kyoo.Core/Models/Options/BasicOptions.cs similarity index 98% rename from Kyoo/Models/Options/BasicOptions.cs rename to Kyoo.Core/Models/Options/BasicOptions.cs index ca018fd4..5bb108f8 100644 --- a/Kyoo/Models/Options/BasicOptions.cs +++ b/Kyoo.Core/Models/Options/BasicOptions.cs @@ -1,7 +1,7 @@ using Kyoo.Abstractions.Models; using System; -namespace Kyoo.Models.Options +namespace Kyoo.Core.Models.Options { /// /// The typed list of basic/global options for Kyoo diff --git a/Kyoo/Models/Options/MediaOptions.cs b/Kyoo.Core/Models/Options/MediaOptions.cs similarity index 92% rename from Kyoo/Models/Options/MediaOptions.cs rename to Kyoo.Core/Models/Options/MediaOptions.cs index 4b02e4db..3133e8d2 100644 --- a/Kyoo/Models/Options/MediaOptions.cs +++ b/Kyoo.Core/Models/Options/MediaOptions.cs @@ -1,4 +1,4 @@ -namespace Kyoo.Models.Options +namespace Kyoo.Core.Models.Options { /// /// Options for media registering. diff --git a/Kyoo/Models/Options/TaskOptions.cs b/Kyoo.Core/Models/Options/TaskOptions.cs similarity index 94% rename from Kyoo/Models/Options/TaskOptions.cs rename to Kyoo.Core/Models/Options/TaskOptions.cs index 922a9ff4..89b77687 100644 --- a/Kyoo/Models/Options/TaskOptions.cs +++ b/Kyoo.Core/Models/Options/TaskOptions.cs @@ -2,7 +2,7 @@ using System; using System.Collections.Generic; using JetBrains.Annotations; -namespace Kyoo.Models.Options +namespace Kyoo.Core.Models.Options { /// /// Options related to tasks diff --git a/Kyoo/Models/Stream.cs b/Kyoo.Core/Models/Stream.cs similarity index 97% rename from Kyoo/Models/Stream.cs rename to Kyoo.Core/Models/Stream.cs index 6d2b4a3c..2980adae 100644 --- a/Kyoo/Models/Stream.cs +++ b/Kyoo.Core/Models/Stream.cs @@ -2,7 +2,7 @@ using System.Runtime.InteropServices; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; -namespace Kyoo.Models.Watch +namespace Kyoo.Core.Models.Watch { /// /// The unmanaged stream that the transcoder will return. diff --git a/Kyoo/PluginsStartup.cs b/Kyoo.Core/PluginsStartup.cs similarity index 98% rename from Kyoo/PluginsStartup.cs rename to Kyoo.Core/PluginsStartup.cs index c5545842..470c9a4f 100644 --- a/Kyoo/PluginsStartup.cs +++ b/Kyoo.Core/PluginsStartup.cs @@ -5,13 +5,14 @@ using Autofac; using Kyoo.Abstractions; using Kyoo.Abstractions.Controllers; using Kyoo.Authentication; -using Kyoo.Controllers; -using Kyoo.Models.Options; +using Kyoo.Core.Controllers; +using Kyoo.Core.Models.Options; +using Kyoo.Core.Tasks; using Kyoo.Postgresql; using Kyoo.SqLite; -using Kyoo.Tasks; using Kyoo.TheMovieDb; using Kyoo.TheTvdb; +using Kyoo.Utils; using Kyoo.WebApp; using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; @@ -21,7 +22,7 @@ using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; -namespace Kyoo +namespace Kyoo.Core { /// /// The Startup class is used to configure the AspNet's webhost. diff --git a/Kyoo/Tasks/Crawler.cs b/Kyoo.Core/Tasks/Crawler.cs similarity index 98% rename from Kyoo/Tasks/Crawler.cs rename to Kyoo.Core/Tasks/Crawler.cs index 6e94a97f..3633fbb3 100644 --- a/Kyoo/Tasks/Crawler.cs +++ b/Kyoo.Core/Tasks/Crawler.cs @@ -7,10 +7,10 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; -using Kyoo.Models.Watch; +using Kyoo.Core.Models.Watch; using Microsoft.Extensions.Logging; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task to add new video files. diff --git a/Kyoo/Tasks/ExtractMetadata.cs b/Kyoo.Core/Tasks/ExtractMetadata.cs similarity index 100% rename from Kyoo/Tasks/ExtractMetadata.cs rename to Kyoo.Core/Tasks/ExtractMetadata.cs diff --git a/Kyoo/Tasks/Housekeeping.cs b/Kyoo.Core/Tasks/Housekeeping.cs similarity index 99% rename from Kyoo/Tasks/Housekeeping.cs rename to Kyoo.Core/Tasks/Housekeeping.cs index 1724b0e7..38d1c9f4 100644 --- a/Kyoo/Tasks/Housekeeping.cs +++ b/Kyoo.Core/Tasks/Housekeeping.cs @@ -6,7 +6,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; using Microsoft.Extensions.Logging; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task to remove orphaned episode and series. diff --git a/Kyoo/Tasks/MetadataProviderLoader.cs b/Kyoo.Core/Tasks/MetadataProviderLoader.cs similarity index 98% rename from Kyoo/Tasks/MetadataProviderLoader.cs rename to Kyoo.Core/Tasks/MetadataProviderLoader.cs index 3c9163c4..cfe398ae 100644 --- a/Kyoo/Tasks/MetadataProviderLoader.cs +++ b/Kyoo.Core/Tasks/MetadataProviderLoader.cs @@ -6,7 +6,7 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models.Exceptions; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task that download metadata providers images. diff --git a/Kyoo/Tasks/PluginInitializer.cs b/Kyoo.Core/Tasks/PluginInitializer.cs similarity index 98% rename from Kyoo/Tasks/PluginInitializer.cs rename to Kyoo.Core/Tasks/PluginInitializer.cs index 7f9e5171..a5b36b6d 100644 --- a/Kyoo/Tasks/PluginInitializer.cs +++ b/Kyoo.Core/Tasks/PluginInitializer.cs @@ -5,7 +5,7 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models.Attributes; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task run on Kyoo's startup to initialize plugins diff --git a/Kyoo/Tasks/ReScan.cs b/Kyoo.Core/Tasks/ReScan.cs similarity index 100% rename from Kyoo/Tasks/ReScan.cs rename to Kyoo.Core/Tasks/ReScan.cs diff --git a/Kyoo/Tasks/RegisterEpisode.cs b/Kyoo.Core/Tasks/RegisterEpisode.cs similarity index 99% rename from Kyoo/Tasks/RegisterEpisode.cs rename to Kyoo.Core/Tasks/RegisterEpisode.cs index 851d658d..d713a9d1 100644 --- a/Kyoo/Tasks/RegisterEpisode.cs +++ b/Kyoo.Core/Tasks/RegisterEpisode.cs @@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models.Exceptions; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task to register a new episode diff --git a/Kyoo/Tasks/RegisterSubtitle.cs b/Kyoo.Core/Tasks/RegisterSubtitle.cs similarity index 98% rename from Kyoo/Tasks/RegisterSubtitle.cs rename to Kyoo.Core/Tasks/RegisterSubtitle.cs index 2ace1f0b..3b931ab7 100644 --- a/Kyoo/Tasks/RegisterSubtitle.cs +++ b/Kyoo.Core/Tasks/RegisterSubtitle.cs @@ -6,7 +6,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; using Kyoo.Abstractions.Models.Exceptions; -namespace Kyoo.Tasks +namespace Kyoo.Core.Tasks { /// /// A task to register a new episode diff --git a/Kyoo/Views/CollectionApi.cs b/Kyoo.Core/Views/CollectionApi.cs similarity index 98% rename from Kyoo/Views/CollectionApi.cs rename to Kyoo.Core/Views/CollectionApi.cs index b6cada95..56af8b0a 100644 --- a/Kyoo/Views/CollectionApi.cs +++ b/Kyoo.Core/Views/CollectionApi.cs @@ -7,10 +7,10 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/collection")] [Route("api/collections")] diff --git a/Kyoo/Views/ConfigurationApi.cs b/Kyoo.Core/Views/ConfigurationApi.cs similarity index 99% rename from Kyoo/Views/ConfigurationApi.cs rename to Kyoo.Core/Views/ConfigurationApi.cs index 1abef5bf..0b20df11 100644 --- a/Kyoo/Views/ConfigurationApi.cs +++ b/Kyoo.Core/Views/ConfigurationApi.cs @@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Api +namespace Kyoo.Core.Api { /// /// An API to retrieve or edit configuration settings diff --git a/Kyoo/Views/EpisodeApi.cs b/Kyoo.Core/Views/EpisodeApi.cs similarity index 99% rename from Kyoo/Views/EpisodeApi.cs rename to Kyoo.Core/Views/EpisodeApi.cs index f225c0b7..c4fdf566 100644 --- a/Kyoo/Views/EpisodeApi.cs +++ b/Kyoo.Core/Views/EpisodeApi.cs @@ -7,10 +7,10 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/episode")] [Route("api/episodes")] diff --git a/Kyoo/Views/GenreApi.cs b/Kyoo.Core/Views/GenreApi.cs similarity index 97% rename from Kyoo/Views/GenreApi.cs rename to Kyoo.Core/Views/GenreApi.cs index 3076fca2..d6e6a678 100644 --- a/Kyoo/Views/GenreApi.cs +++ b/Kyoo.Core/Views/GenreApi.cs @@ -5,11 +5,11 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/genre")] [Route("api/genres")] diff --git a/Kyoo/Views/Helper/ApiHelper.cs b/Kyoo.Core/Views/Helper/ApiHelper.cs similarity index 99% rename from Kyoo/Views/Helper/ApiHelper.cs rename to Kyoo.Core/Views/Helper/ApiHelper.cs index f2650942..31e545c6 100644 --- a/Kyoo/Views/Helper/ApiHelper.cs +++ b/Kyoo.Core/Views/Helper/ApiHelper.cs @@ -6,7 +6,7 @@ using System.Linq.Expressions; using System.Reflection; using Kyoo.Abstractions.Models; -namespace Kyoo.Api +namespace Kyoo.Core.Api { public static class ApiHelper { diff --git a/Kyoo/Views/Helper/CrudApi.cs b/Kyoo.Core/Views/Helper/CrudApi.cs similarity index 99% rename from Kyoo/Views/Helper/CrudApi.cs rename to Kyoo.Core/Views/Helper/CrudApi.cs index eba42b1d..ab1eef72 100644 --- a/Kyoo/Views/Helper/CrudApi.cs +++ b/Kyoo.Core/Views/Helper/CrudApi.cs @@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [ApiController] [ResourceView] diff --git a/Kyoo/Views/Helper/JsonSerializer.cs b/Kyoo.Core/Views/Helper/JsonSerializer.cs similarity index 99% rename from Kyoo/Views/Helper/JsonSerializer.cs rename to Kyoo.Core/Views/Helper/JsonSerializer.cs index c5b91b03..96d6d6ea 100644 --- a/Kyoo/Views/Helper/JsonSerializer.cs +++ b/Kyoo.Core/Views/Helper/JsonSerializer.cs @@ -6,11 +6,12 @@ using System.Reflection; using System.Text.RegularExpressions; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Serialization; -namespace Kyoo.Api +namespace Kyoo.Core.Api { public class JsonPropertyIgnorer : CamelCasePropertyNamesContractResolver { diff --git a/Kyoo/Views/Helper/ResourceViewAttribute.cs b/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs similarity index 98% rename from Kyoo/Views/Helper/ResourceViewAttribute.cs rename to Kyoo.Core/Views/Helper/ResourceViewAttribute.cs index 386dc60c..ad4d9055 100644 --- a/Kyoo/Views/Helper/ResourceViewAttribute.cs +++ b/Kyoo.Core/Views/Helper/ResourceViewAttribute.cs @@ -6,12 +6,13 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Controllers; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.Extensions.DependencyInjection; -namespace Kyoo.Api +namespace Kyoo.Core.Api { public class ResourceViewAttribute : ActionFilterAttribute { diff --git a/Kyoo/Views/LibraryApi.cs b/Kyoo.Core/Views/LibraryApi.cs similarity index 99% rename from Kyoo/Views/LibraryApi.cs rename to Kyoo.Core/Views/LibraryApi.cs index 69203926..60991589 100644 --- a/Kyoo/Views/LibraryApi.cs +++ b/Kyoo.Core/Views/LibraryApi.cs @@ -6,10 +6,10 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/library")] [Route("api/libraries")] diff --git a/Kyoo/Views/LibraryItemApi.cs b/Kyoo.Core/Views/LibraryItemApi.cs similarity index 96% rename from Kyoo/Views/LibraryItemApi.cs rename to Kyoo.Core/Views/LibraryItemApi.cs index 0c801a5c..207eae9c 100644 --- a/Kyoo/Views/LibraryItemApi.cs +++ b/Kyoo.Core/Views/LibraryItemApi.cs @@ -6,11 +6,11 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/item")] [Route("api/items")] diff --git a/Kyoo/Views/PeopleApi.cs b/Kyoo.Core/Views/PeopleApi.cs similarity index 98% rename from Kyoo/Views/PeopleApi.cs rename to Kyoo.Core/Views/PeopleApi.cs index 06ce4df7..5135aa86 100644 --- a/Kyoo/Views/PeopleApi.cs +++ b/Kyoo.Core/Views/PeopleApi.cs @@ -5,11 +5,11 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/people")] [ApiController] diff --git a/Kyoo/Views/ProviderApi.cs b/Kyoo.Core/Views/ProviderApi.cs similarity index 96% rename from Kyoo/Views/ProviderApi.cs rename to Kyoo.Core/Views/ProviderApi.cs index 04f999a1..431fefed 100644 --- a/Kyoo/Views/ProviderApi.cs +++ b/Kyoo.Core/Views/ProviderApi.cs @@ -2,11 +2,11 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/provider")] [Route("api/providers")] diff --git a/Kyoo/Views/SearchApi.cs b/Kyoo.Core/Views/SearchApi.cs similarity index 99% rename from Kyoo/Views/SearchApi.cs rename to Kyoo.Core/Views/SearchApi.cs index 5abe1467..a6e17c91 100644 --- a/Kyoo/Views/SearchApi.cs +++ b/Kyoo.Core/Views/SearchApi.cs @@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/search/{query}")] [ApiController] diff --git a/Kyoo/Views/SeasonApi.cs b/Kyoo.Core/Views/SeasonApi.cs similarity index 98% rename from Kyoo/Views/SeasonApi.cs rename to Kyoo.Core/Views/SeasonApi.cs index 6979b47b..f7be874a 100644 --- a/Kyoo/Views/SeasonApi.cs +++ b/Kyoo.Core/Views/SeasonApi.cs @@ -6,10 +6,10 @@ using System.Linq; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/season")] [Route("api/seasons")] diff --git a/Kyoo/Views/ShowApi.cs b/Kyoo.Core/Views/ShowApi.cs similarity index 99% rename from Kyoo/Views/ShowApi.cs rename to Kyoo.Core/Views/ShowApi.cs index 1c3c3fa5..fe0aaeee 100644 --- a/Kyoo/Views/ShowApi.cs +++ b/Kyoo.Core/Views/ShowApi.cs @@ -8,10 +8,10 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/show")] [Route("api/shows")] diff --git a/Kyoo/Views/StudioApi.cs b/Kyoo.Core/Views/StudioApi.cs similarity index 97% rename from Kyoo/Views/StudioApi.cs rename to Kyoo.Core/Views/StudioApi.cs index 5474d1f5..87a06a11 100644 --- a/Kyoo/Views/StudioApi.cs +++ b/Kyoo.Core/Views/StudioApi.cs @@ -5,11 +5,11 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/studio")] [Route("api/studios")] diff --git a/Kyoo/Views/SubtitleApi.cs b/Kyoo.Core/Views/SubtitleApi.cs similarity index 99% rename from Kyoo/Views/SubtitleApi.cs rename to Kyoo.Core/Views/SubtitleApi.cs index b6681841..04ddf1d5 100644 --- a/Kyoo/Views/SubtitleApi.cs +++ b/Kyoo.Core/Views/SubtitleApi.cs @@ -7,7 +7,7 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Permissions; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("subtitle")] [ApiController] diff --git a/Kyoo/Views/TaskApi.cs b/Kyoo.Core/Views/TaskApi.cs similarity index 97% rename from Kyoo/Views/TaskApi.cs rename to Kyoo.Core/Views/TaskApi.cs index 25097411..4bb5b534 100644 --- a/Kyoo/Views/TaskApi.cs +++ b/Kyoo.Core/Views/TaskApi.cs @@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/task")] [Route("api/tasks")] diff --git a/Kyoo/Views/TrackApi.cs b/Kyoo.Core/Views/TrackApi.cs similarity index 95% rename from Kyoo/Views/TrackApi.cs rename to Kyoo.Core/Views/TrackApi.cs index a6a1b6cb..6d16f632 100644 --- a/Kyoo/Views/TrackApi.cs +++ b/Kyoo.Core/Views/TrackApi.cs @@ -4,11 +4,11 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/track")] [Route("api/tracks")] diff --git a/Kyoo/Views/VideoApi.cs b/Kyoo.Core/Views/VideoApi.cs similarity index 98% rename from Kyoo/Views/VideoApi.cs rename to Kyoo.Core/Views/VideoApi.cs index 2badb6dd..b2fa82df 100644 --- a/Kyoo/Views/VideoApi.cs +++ b/Kyoo.Core/Views/VideoApi.cs @@ -5,11 +5,11 @@ using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.AspNetCore.Mvc.Filters; using Microsoft.Extensions.Options; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("video")] [ApiController] diff --git a/Kyoo/Views/WatchApi.cs b/Kyoo.Core/Views/WatchApi.cs similarity index 97% rename from Kyoo/Views/WatchApi.cs rename to Kyoo.Core/Views/WatchApi.cs index d4a46e8a..f310c258 100644 --- a/Kyoo/Views/WatchApi.cs +++ b/Kyoo.Core/Views/WatchApi.cs @@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions; using Kyoo.Abstractions.Models.Permissions; using Microsoft.AspNetCore.Mvc; -namespace Kyoo.Api +namespace Kyoo.Core.Api { [Route("api/watch")] [ApiController] diff --git a/Kyoo/settings.json b/Kyoo.Core/settings.json similarity index 100% rename from Kyoo/settings.json rename to Kyoo.Core/settings.json diff --git a/Kyoo.Database/Extensions.cs b/Kyoo.Database/Extensions.cs index 43031638..57c72417 100644 --- a/Kyoo.Database/Extensions.cs +++ b/Kyoo.Database/Extensions.cs @@ -1,7 +1,7 @@ using System.Data.Common; using Microsoft.Extensions.Configuration; -namespace Kyoo +namespace Kyoo.Database { /// /// A class that regroup extensions used by some asp-net related parts of the app. diff --git a/Kyoo.Host.Console/Kyoo.Host.Console.csproj b/Kyoo.Host.Console/Kyoo.Host.Console.csproj index e7b396be..20dc8559 100644 --- a/Kyoo.Host.Console/Kyoo.Host.Console.csproj +++ b/Kyoo.Host.Console/Kyoo.Host.Console.csproj @@ -9,8 +9,17 @@ https://github.com/AnonymusRaccoon/Kyoo default + + + + win-x64 + - + diff --git a/Kyoo.Host.Console/Program.cs b/Kyoo.Host.Console/Program.cs index b6699fcf..6d5edb49 100644 --- a/Kyoo.Host.Console/Program.cs +++ b/Kyoo.Host.Console/Program.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using Kyoo.Core; using Microsoft.AspNetCore.Hosting; namespace Kyoo.Host.Console diff --git a/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.target b/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.target index c10e4fa0..d0f97e34 100644 --- a/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.target +++ b/Kyoo.Host.WindowsTrait/Kyoo.Host.WindowsTrait.target @@ -11,7 +11,8 @@ - + + diff --git a/Kyoo.Host.WindowsTrait/Program.cs b/Kyoo.Host.WindowsTrait/Program.cs index 9b4936ba..65b9a2bc 100644 --- a/Kyoo.Host.WindowsTrait/Program.cs +++ b/Kyoo.Host.WindowsTrait/Program.cs @@ -1,5 +1,6 @@ using System.Threading.Tasks; using Autofac; +using Kyoo.Core; namespace Kyoo.Host.WindowsTrait { diff --git a/Kyoo.Host.WindowsTrait/SystemTrait.cs b/Kyoo.Host.WindowsTrait/SystemTrait.cs index 86037c1d..34708f86 100644 --- a/Kyoo.Host.WindowsTrait/SystemTrait.cs +++ b/Kyoo.Host.WindowsTrait/SystemTrait.cs @@ -6,7 +6,7 @@ using System.Threading; using System.Windows.Forms; using Autofac; using Kyoo.Abstractions.Controllers; -using Kyoo.Models.Options; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; namespace Kyoo.Host.WindowsTrait diff --git a/Kyoo.Postgresql/PostgresContext.cs b/Kyoo.Postgresql/PostgresContext.cs index cbefb849..c8477169 100644 --- a/Kyoo.Postgresql/PostgresContext.cs +++ b/Kyoo.Postgresql/PostgresContext.cs @@ -5,6 +5,7 @@ using System.Reflection; using EFCore.NamingConventions.Internal; using Kyoo.Abstractions.Models; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; using Npgsql; diff --git a/Kyoo.SqLite/SqLiteContext.cs b/Kyoo.SqLite/SqLiteContext.cs index 123de717..87aa5637 100644 --- a/Kyoo.SqLite/SqLiteContext.cs +++ b/Kyoo.SqLite/SqLiteContext.cs @@ -4,6 +4,7 @@ using System.Linq.Expressions; using System.Reflection; using Kyoo.Abstractions.Models; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.Data.Sqlite; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; diff --git a/Kyoo.TheMovieDb/Convertors/CollectionConvertors.cs b/Kyoo.TheMovieDb/Convertors/CollectionConvertors.cs index 3c1460f2..47c88f41 100644 --- a/Kyoo.TheMovieDb/Convertors/CollectionConvertors.cs +++ b/Kyoo.TheMovieDb/Convertors/CollectionConvertors.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TMDbLib.Objects.Search; namespace Kyoo.TheMovieDb diff --git a/Kyoo.TheMovieDb/Convertors/MovieConvertors.cs b/Kyoo.TheMovieDb/Convertors/MovieConvertors.cs index f859c489..d123ca28 100644 --- a/Kyoo.TheMovieDb/Convertors/MovieConvertors.cs +++ b/Kyoo.TheMovieDb/Convertors/MovieConvertors.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.Linq; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TMDbLib.Objects.Movies; using TMDbLib.Objects.Search; diff --git a/Kyoo.TheMovieDb/Convertors/PeopleConvertors.cs b/Kyoo.TheMovieDb/Convertors/PeopleConvertors.cs index 32a0cbaf..61c57db9 100644 --- a/Kyoo.TheMovieDb/Convertors/PeopleConvertors.cs +++ b/Kyoo.TheMovieDb/Convertors/PeopleConvertors.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TMDbLib.Objects.General; using TMDbLib.Objects.People; using TMDbLib.Objects.Search; diff --git a/Kyoo.TheMovieDb/Convertors/ShowConvertors.cs b/Kyoo.TheMovieDb/Convertors/ShowConvertors.cs index a47b62c5..99ccc046 100644 --- a/Kyoo.TheMovieDb/Convertors/ShowConvertors.cs +++ b/Kyoo.TheMovieDb/Convertors/ShowConvertors.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.Linq; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TMDbLib.Objects.Search; using TMDbLib.Objects.TvShows; diff --git a/Kyoo.TheMovieDb/Convertors/StudioConvertors.cs b/Kyoo.TheMovieDb/Convertors/StudioConvertors.cs index 42290c73..22f2ef9d 100644 --- a/Kyoo.TheMovieDb/Convertors/StudioConvertors.cs +++ b/Kyoo.TheMovieDb/Convertors/StudioConvertors.cs @@ -1,4 +1,5 @@ using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TMDbLib.Objects.Companies; using TMDbLib.Objects.Search; diff --git a/Kyoo.TheTvdb/Convertors.cs b/Kyoo.TheTvdb/Convertors.cs index 20413570..d53dfe62 100644 --- a/Kyoo.TheTvdb/Convertors.cs +++ b/Kyoo.TheTvdb/Convertors.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using TvDbSharper.Dto; namespace Kyoo.TheTvdb diff --git a/Kyoo.WebApp/Kyoo.WebApp.csproj b/Kyoo.WebApp/Kyoo.WebApp.csproj index c5f22695..d1a0402b 100644 --- a/Kyoo.WebApp/Kyoo.WebApp.csproj +++ b/Kyoo.WebApp/Kyoo.WebApp.csproj @@ -47,7 +47,8 @@ - + + diff --git a/Kyoo.sln b/Kyoo.sln index cbb05a6c..39e1cc4e 100644 --- a/Kyoo.sln +++ b/Kyoo.sln @@ -1,5 +1,5 @@ Microsoft Visual Studio Solution File, Format Version 12.00 -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kyoo", "Kyoo\Kyoo.csproj", "{0F8275B6-C7DD-42DF-A168-755C81B1C329}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Kyoo.Core", "Kyoo.Core\Kyoo.Core.csproj", "{0F8275B6-C7DD-42DF-A168-755C81B1C329}" EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kyoo.Abstractions", "Kyoo.Abstractions\Kyoo.Abstractions.csproj", "{BAB2CAE1-AC28-4509-AA3E-8DC75BD59220}" EndProject diff --git a/deployment/PKGBUILD b/deployment/PKGBUILD index ecd32404..5446499f 100644 --- a/deployment/PKGBUILD +++ b/deployment/PKGBUILD @@ -29,7 +29,7 @@ build() { # cd "Kyoo-$pkgver" cd "Kyoo" export DOTNET_CLI_TELEMETRY_OPTOUT=1 - dotnet publish -c Release -o "$srcdir/output" Kyoo + dotnet publish -c Release -o "$srcdir/output" Kyoo.Host.Console } package() { diff --git a/deployment/kyoo-windows.iss b/deployment/kyoo-windows.iss index 34744576..276fe810 100644 --- a/deployment/kyoo-windows.iss +++ b/deployment/kyoo-windows.iss @@ -25,8 +25,8 @@ Name: "startupShortcut"; Description: "Create shortcut in Startup folder (Starts Name: "none"; Description: "Do not start automatically"; GroupDescription: "Start automatically"; Flags: exclusive unchecked [Files] -Source: "{#kyoo}\Kyoo.exe"; DestDir: "{app}"; Flags: ignoreversion -Source: "{#kyoo}\Kyoo.WindowsHost.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "{#kyoo}\Kyoo.Host.Console.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "{#kyoo}\Kyoo.Host.WindowsTrait.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "{#kyoo}\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs [Registry] @@ -38,13 +38,13 @@ Root: HKA; Subkey: "Software\SDG\Kyoo\Settings"; ValueType: string; ValueName: " Type: filesandordirs; Name: "{code:GetDataDir}" [Icons] -Name: "{autoprograms}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe" -Name: "{autoprograms}\Kyoo (Console)"; Filename: "{app}\Kyoo.exe" -Name: "{autodesktop}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe"; Tasks: desktopicon -Name: "{autostartup}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe"; Tasks: startupShortcut +Name: "{autoprograms}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe" +Name: "{autoprograms}\Kyoo (Console)"; Filename: "{app}\Kyoo.Host.Console.exe" +Name: "{autodesktop}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe"; Tasks: desktopicon +Name: "{autostartup}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe"; Tasks: startupShortcut [Run] -Filename: "{app}\Kyoo.WindowsHost.exe"; Description: "{cm:LaunchProgram,Kyoo}"; Flags: nowait postinstall skipifsilent +Filename: "{app}\Kyoo.Host.WindowsTrait.exe"; Description: "{cm:LaunchProgram,Kyoo}"; Flags: nowait postinstall skipifsilent [Code] var diff --git a/deployment/kyoo.service b/deployment/kyoo.service index a53b1967..121ffc9d 100644 --- a/deployment/kyoo.service +++ b/deployment/kyoo.service @@ -6,7 +6,7 @@ After=network.target [Service] User=kyoo Environment=KYOO_DATADIR=/var/lib/kyoo -ExecStart=/usr/lib/kyoo/Kyoo +ExecStart=/usr/lib/kyoo/Kyoo.Host.Console Restart=on-abort TimeoutSec=20 diff --git a/tests/Kyoo.Tests/Database/RepositoryActivator.cs b/tests/Kyoo.Tests/Database/RepositoryActivator.cs index 92addd86..267bafb7 100644 --- a/tests/Kyoo.Tests/Database/RepositoryActivator.cs +++ b/tests/Kyoo.Tests/Database/RepositoryActivator.cs @@ -2,7 +2,7 @@ using System; using System.Collections.Generic; using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; -using Kyoo.Controllers; +using Kyoo.Core.Controllers; using Kyoo.Database; using Xunit.Abstractions; diff --git a/tests/Kyoo.Tests/Database/SpecificTests/LibraryTests.cs b/tests/Kyoo.Tests/Database/SpecificTests/LibraryTests.cs index 20b7defe..a1a3d131 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/LibraryTests.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/LibraryTests.cs @@ -5,6 +5,7 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; using Xunit; using Xunit.Abstractions; diff --git a/tests/Kyoo.Tests/Database/SpecificTests/ShowTests.cs b/tests/Kyoo.Tests/Database/SpecificTests/ShowTests.cs index c46aaa26..b502e125 100644 --- a/tests/Kyoo.Tests/Database/SpecificTests/ShowTests.cs +++ b/tests/Kyoo.Tests/Database/SpecificTests/ShowTests.cs @@ -6,6 +6,7 @@ using FluentAssertions; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Database; +using Kyoo.Utils; using Microsoft.EntityFrameworkCore; using Xunit; using Xunit.Abstractions; diff --git a/tests/Kyoo.Tests/Identifier/IdentifierTests.cs b/tests/Kyoo.Tests/Identifier/IdentifierTests.cs index 93f6c345..3ab526d6 100644 --- a/tests/Kyoo.Tests/Identifier/IdentifierTests.cs +++ b/tests/Kyoo.Tests/Identifier/IdentifierTests.cs @@ -2,8 +2,8 @@ using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Exceptions; -using Kyoo.Controllers; -using Kyoo.Models.Options; +using Kyoo.Core.Controllers; +using Kyoo.Core.Models.Options; using Microsoft.Extensions.Options; using Moq; using Xunit; diff --git a/tests/Kyoo.Tests/Identifier/ProviderTests.cs b/tests/Kyoo.Tests/Identifier/ProviderTests.cs index 0d9eb34a..384e6b79 100644 --- a/tests/Kyoo.Tests/Identifier/ProviderTests.cs +++ b/tests/Kyoo.Tests/Identifier/ProviderTests.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Threading.Tasks; using Kyoo.Abstractions.Controllers; using Kyoo.Abstractions.Models; -using Kyoo.Controllers; +using Kyoo.Core.Controllers; using Microsoft.Extensions.Logging; using Moq; using Xunit; diff --git a/tests/Kyoo.Tests/Kyoo.Tests.csproj b/tests/Kyoo.Tests/Kyoo.Tests.csproj index 7568e9d5..02627f91 100644 --- a/tests/Kyoo.Tests/Kyoo.Tests.csproj +++ b/tests/Kyoo.Tests/Kyoo.Tests.csproj @@ -34,7 +34,7 @@ - + diff --git a/tests/Kyoo.Tests/Utility/EnumerableTests.cs b/tests/Kyoo.Tests/Utility/EnumerableTests.cs index c03efa06..627de26b 100644 --- a/tests/Kyoo.Tests/Utility/EnumerableTests.cs +++ b/tests/Kyoo.Tests/Utility/EnumerableTests.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using Kyoo.Utils; using Xunit; namespace Kyoo.Tests.Utility diff --git a/tests/Kyoo.Tests/Utility/MergerTests.cs b/tests/Kyoo.Tests/Utility/MergerTests.cs index a378ebb7..2765c7e2 100644 --- a/tests/Kyoo.Tests/Utility/MergerTests.cs +++ b/tests/Kyoo.Tests/Utility/MergerTests.cs @@ -5,6 +5,7 @@ using System.Linq; using JetBrains.Annotations; using Kyoo.Abstractions.Models; using Kyoo.Abstractions.Models.Attributes; +using Kyoo.Utils; using Xunit; namespace Kyoo.Tests.Utility diff --git a/tests/Kyoo.Tests/Utility/TaskTests.cs b/tests/Kyoo.Tests/Utility/TaskTests.cs index 3bcd723f..47cbbf69 100644 --- a/tests/Kyoo.Tests/Utility/TaskTests.cs +++ b/tests/Kyoo.Tests/Utility/TaskTests.cs @@ -1,6 +1,7 @@ using System; using System.Threading; using System.Threading.Tasks; +using Kyoo.Utils; using Xunit; namespace Kyoo.Tests.Utility diff --git a/tests/Kyoo.Tests/Utility/UtilityTests.cs b/tests/Kyoo.Tests/Utility/UtilityTests.cs index 5c01069c..262337d0 100644 --- a/tests/Kyoo.Tests/Utility/UtilityTests.cs +++ b/tests/Kyoo.Tests/Utility/UtilityTests.cs @@ -2,9 +2,10 @@ using System; using System.Linq.Expressions; using System.Reflection; using Kyoo.Abstractions.Models; +using Kyoo.Utils; using Xunit; -using Utils = Kyoo.Utility; +using KUtility = Kyoo.Utils.Utility; namespace Kyoo.Tests.Utility { @@ -16,12 +17,12 @@ namespace Kyoo.Tests.Utility Expression> member = x => x.ID; Expression> memberCast = x => x.ID; - Assert.False(Utils.IsPropertyExpression(null)); - Assert.True(Utils.IsPropertyExpression(member)); - Assert.True(Utils.IsPropertyExpression(memberCast)); + Assert.False(KUtility.IsPropertyExpression(null)); + Assert.True(KUtility.IsPropertyExpression(member)); + Assert.True(KUtility.IsPropertyExpression(memberCast)); Expression> call = x => x.GetID("test"); - Assert.False(Utils.IsPropertyExpression(call)); + Assert.False(KUtility.IsPropertyExpression(call)); } [Fact] @@ -30,15 +31,15 @@ namespace Kyoo.Tests.Utility Expression> member = x => x.ID; Expression> memberCast = x => x.ID; - Assert.Equal("ID", Utils.GetPropertyName(member)); - Assert.Equal("ID", Utils.GetPropertyName(memberCast)); - Assert.Throws(() => Utils.GetPropertyName(null)); + Assert.Equal("ID", KUtility.GetPropertyName(member)); + Assert.Equal("ID", KUtility.GetPropertyName(memberCast)); + Assert.Throws(() => KUtility.GetPropertyName(null)); } [Fact] public void GetMethodTest() { - MethodInfo method = Utils.GetMethod(typeof(UtilityTests), + MethodInfo method = KUtility.GetMethod(typeof(UtilityTests), BindingFlags.Instance | BindingFlags.Public, nameof(GetMethodTest), Array.Empty(), @@ -49,17 +50,17 @@ namespace Kyoo.Tests.Utility [Fact] public void GetMethodInvalidGenericsTest() { - Assert.Throws(() => Utils.GetMethod(typeof(UtilityTests), + Assert.Throws(() => KUtility.GetMethod(typeof(UtilityTests), BindingFlags.Instance | BindingFlags.Public, nameof(GetMethodTest), - new [] { typeof(Utils) }, + new [] { typeof(KUtility) }, Array.Empty())); } [Fact] public void GetMethodInvalidParamsTest() { - Assert.Throws(() => Utils.GetMethod(typeof(UtilityTests), + Assert.Throws(() => KUtility.GetMethod(typeof(UtilityTests), BindingFlags.Instance | BindingFlags.Public, nameof(GetMethodTest), Array.Empty(), @@ -69,7 +70,7 @@ namespace Kyoo.Tests.Utility [Fact] public void GetMethodTest2() { - MethodInfo method = Utils.GetMethod(typeof(Merger), + MethodInfo method = KUtility.GetMethod(typeof(Merger), BindingFlags.Static | BindingFlags.Public, nameof(Merger.MergeLists), new [] { typeof(string) },