mirror of
				https://github.com/zoriya/Kyoo.git
				synced 2025-11-02 18:47:11 -05:00 
			
		
		
		
	Host: Fixing windows host console presence, renaming Kyoo to Kyoo.Core
This commit is contained in:
		
							parent
							
								
									3d14902a0b
								
							
						
					
					
						commit
						75346d8f7a
					
				
							
								
								
									
										3
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/workflows/build.yml
									
									
									
									
										vendored
									
									
								
							@ -10,7 +10,7 @@ jobs:
 | 
				
			|||||||
      fail-fast: false
 | 
					      fail-fast: false
 | 
				
			||||||
      matrix:
 | 
					      matrix:
 | 
				
			||||||
        include:
 | 
					        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
 | 
					            runtime: linux-x64
 | 
				
			||||||
            artifact: linux
 | 
					            artifact: linux
 | 
				
			||||||
          - os: windows-latest
 | 
					          - os: windows-latest
 | 
				
			||||||
@ -35,7 +35,6 @@ jobs:
 | 
				
			|||||||
          elif [[ "${{runner.os}}" == "macOS" ]]; then
 | 
					          elif [[ "${{runner.os}}" == "macOS" ]]; then
 | 
				
			||||||
            brew install ffmpeg
 | 
					            brew install ffmpeg
 | 
				
			||||||
          else
 | 
					          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 update 
 | 
				
			||||||
            sudo apt-get install -y libavutil-dev libavcodec-dev libavformat-dev
 | 
					            sudo apt-get install -y libavutil-dev libavcodec-dev libavformat-dev
 | 
				
			||||||
          fi
 | 
					          fi
 | 
				
			||||||
 | 
				
			|||||||
@ -6,6 +6,7 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Controllers
 | 
					namespace Kyoo.Abstractions.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -2,6 +2,7 @@ using System;
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Reflection;
 | 
					using System.Reflection;
 | 
				
			||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Models
 | 
					namespace Kyoo.Abstractions.Models
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
using System;
 | 
					using System;
 | 
				
			||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Linq;
 | 
					using System.Linq;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Models
 | 
					namespace Kyoo.Abstractions.Models
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,6 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Models
 | 
					namespace Kyoo.Abstractions.Models
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -2,6 +2,7 @@ using System;
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Models
 | 
					namespace Kyoo.Abstractions.Models
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,6 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions.Models
 | 
					namespace Kyoo.Abstractions.Models
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
using Autofac;
 | 
					using Autofac;
 | 
				
			||||||
using Autofac.Builder;
 | 
					using Autofac.Builder;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.Extensions.Configuration;
 | 
					using Microsoft.Extensions.Configuration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Abstractions
 | 
					namespace Kyoo.Abstractions
 | 
				
			||||||
 | 
				
			|||||||
@ -4,7 +4,7 @@ using System.Collections.Generic;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Utils
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A set of extensions class for enumerable.
 | 
						/// A set of extensions class for enumerable.
 | 
				
			||||||
 | 
				
			|||||||
@ -8,7 +8,7 @@ using JetBrains.Annotations;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Utils
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A class containing helper methods to merge objects.
 | 
						/// A class containing helper methods to merge objects.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,7 +1,7 @@
 | 
				
			|||||||
using System;
 | 
					using System;
 | 
				
			||||||
using System.Reflection;
 | 
					using System.Reflection;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Utils
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// Static class containing MethodOf calls.
 | 
						/// Static class containing MethodOf calls.
 | 
				
			||||||
 | 
				
			|||||||
@ -2,7 +2,7 @@ using System;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Utils
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A class containing helper method for tasks.
 | 
						/// A class containing helper method for tasks.
 | 
				
			||||||
 | 
				
			|||||||
@ -9,7 +9,7 @@ using System.Text;
 | 
				
			|||||||
using System.Text.RegularExpressions;
 | 
					using System.Text.RegularExpressions;
 | 
				
			||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Utils
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A set of utility functions that can be used everywhere.
 | 
						/// A set of utility functions that can be used everywhere.
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.ComponentModel.DataAnnotations;
 | 
					using System.ComponentModel.DataAnnotations;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Authentication.Models.DTO
 | 
					namespace Kyoo.Authentication.Models.DTO
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										0
									
								
								Kyoo/.gitignore → Kyoo.Core/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										0
									
								
								Kyoo/.gitignore → Kyoo.Core/.gitignore
									
									
									
									
										vendored
									
									
								
							@ -18,7 +18,7 @@ using Serilog.Templates;
 | 
				
			|||||||
using Serilog.Templates.Themes;
 | 
					using Serilog.Templates.Themes;
 | 
				
			||||||
using ILogger = Serilog.ILogger;
 | 
					using ILogger = Serilog.ILogger;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Core
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class Application : IApplication
 | 
						public class Application : IApplication
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -8,11 +8,11 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Api;
 | 
					using Kyoo.Core.Api;
 | 
				
			||||||
using Microsoft.Extensions.Configuration;
 | 
					using Microsoft.Extensions.Configuration;
 | 
				
			||||||
using Newtonsoft.Json.Linq;
 | 
					using Newtonsoft.Json.Linq;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class ConfigurationManager : IConfigurationManager
 | 
						public class ConfigurationManager : IConfigurationManager
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -9,11 +9,11 @@ using JetBrains.Annotations;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A composite that merge every <see cref="IFileSystem"/> available
 | 
						/// A composite that merge every <see cref="IFileSystem"/> available
 | 
				
			||||||
@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A <see cref="IFileSystem"/> for http/https links.
 | 
						/// A <see cref="IFileSystem"/> for http/https links.
 | 
				
			||||||
@ -5,12 +5,12 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.AspNetCore.StaticFiles;
 | 
					using Microsoft.AspNetCore.StaticFiles;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A <see cref="IFileSystem"/> for the local filesystem (using System.IO).
 | 
						/// A <see cref="IFileSystem"/> for the local filesystem (using System.IO).
 | 
				
			||||||
@ -6,8 +6,9 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class LibraryManager : ILibraryManager
 | 
						public class LibraryManager : ILibraryManager
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -2,7 +2,7 @@ using Kyoo.Abstractions.Models.Permissions;
 | 
				
			|||||||
using Microsoft.AspNetCore.Mvc.Filters;
 | 
					using Microsoft.AspNetCore.Mvc.Filters;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A permission validator that always validate permissions. This effectively disable the permission system.
 | 
						/// A permission validator that always validate permissions. This effectively disable the permission system.
 | 
				
			||||||
@ -5,12 +5,12 @@ using System.Linq;
 | 
				
			|||||||
using System.Reflection;
 | 
					using System.Reflection;
 | 
				
			||||||
using System.Runtime.Loader;
 | 
					using System.Runtime.Loader;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.DependencyInjection;
 | 
					using Microsoft.Extensions.DependencyInjection;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// An implementation of <see cref="IPluginManager"/>.
 | 
						/// An implementation of <see cref="IPluginManager"/>.
 | 
				
			||||||
@ -4,9 +4,10 @@ using System.Linq;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A metadata provider composite that merge results from all available providers.
 | 
						/// A metadata provider composite that merge results from all available providers.
 | 
				
			||||||
@ -7,11 +7,12 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Kyoo.Models.Watch;
 | 
					using Kyoo.Core.Models.Watch;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// An identifier that use a regex to extract basics metadata.
 | 
						/// An identifier that use a regex to extract basics metadata.
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle collections
 | 
						/// A local repository to handle collections
 | 
				
			||||||
@ -7,9 +7,10 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle episodes.
 | 
						/// A local repository to handle episodes.
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository for genres.
 | 
						/// A local repository for genres.
 | 
				
			||||||
@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle library items.
 | 
						/// A local repository to handle library items.
 | 
				
			||||||
@ -6,9 +6,10 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle libraries.
 | 
						/// A local repository to handle libraries.
 | 
				
			||||||
@ -8,10 +8,11 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Api;
 | 
					using Kyoo.Utils;
 | 
				
			||||||
 | 
					using Kyoo.Core.Api;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A base class to create repositories using Entity Framework.
 | 
						/// A base class to create repositories using Entity Framework.
 | 
				
			||||||
@ -7,9 +7,10 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle people.
 | 
						/// A local repository to handle people.
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	///     A local repository to handle providers.
 | 
						///     A local repository to handle providers.
 | 
				
			||||||
@ -9,7 +9,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle seasons.
 | 
						/// A local repository to handle seasons.
 | 
				
			||||||
@ -5,10 +5,11 @@ using System.Linq.Expressions;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle shows
 | 
						/// A local repository to handle shows
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle studios
 | 
						/// A local repository to handle studios
 | 
				
			||||||
@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A local repository to handle tracks.
 | 
						/// A local repository to handle tracks.
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A repository for users.
 | 
						/// A repository for users.
 | 
				
			||||||
@ -10,12 +10,12 @@ using JetBrains.Annotations;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Hosting;
 | 
					using Microsoft.Extensions.Hosting;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A service to handle long running tasks and a background runner.
 | 
						/// A service to handle long running tasks and a background runner.
 | 
				
			||||||
@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Microsoft.AspNetCore.StaticFiles;
 | 
					using Microsoft.AspNetCore.StaticFiles;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// Download images and retrieve the path of those images for a resource.
 | 
						/// Download images and retrieve the path of those images for a resource.
 | 
				
			||||||
@ -4,14 +4,14 @@ using System.Runtime.InteropServices;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.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.
 | 
					// We use threads so tasks are not always awaited.
 | 
				
			||||||
#pragma warning disable 4014
 | 
					#pragma warning disable 4014
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Controllers
 | 
					namespace Kyoo.Core.Controllers
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class BadTranscoderException : Exception {}
 | 
						public class BadTranscoderException : Exception {}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
@ -54,7 +54,7 @@ namespace Kyoo.Controllers
 | 
				
			|||||||
				path = path.Replace('\\', '/');
 | 
									path = path.Replace('\\', '/');
 | 
				
			||||||
				outPath = outPath.Replace('\\', '/');
 | 
									outPath = outPath.Replace('\\', '/');
 | 
				
			||||||
				
 | 
									
 | 
				
			||||||
				int size = Marshal.SizeOf<Stream>();
 | 
									int size = Marshal.SizeOf<Models.Watch.Stream>();
 | 
				
			||||||
				IntPtr ptr = extract_infos(path, outPath, out uint arrayLength, out uint trackCount, reextract);
 | 
									IntPtr ptr = extract_infos(path, outPath, out uint arrayLength, out uint trackCount, reextract);
 | 
				
			||||||
				IntPtr streamsPtr = ptr;
 | 
									IntPtr streamsPtr = ptr;
 | 
				
			||||||
				Track[] tracks;
 | 
									Track[] tracks;
 | 
				
			||||||
@ -66,7 +66,7 @@ namespace Kyoo.Controllers
 | 
				
			|||||||
					int j = 0;
 | 
										int j = 0;
 | 
				
			||||||
					for (int i = 0; i < arrayLength; i++)
 | 
										for (int i = 0; i < arrayLength; i++)
 | 
				
			||||||
					{
 | 
										{
 | 
				
			||||||
						Stream stream = Marshal.PtrToStructure<Stream>(streamsPtr);
 | 
											Models.Watch.Stream stream = Marshal.PtrToStructure<Models.Watch.Stream>(streamsPtr);
 | 
				
			||||||
						if (stream!.Type != StreamType.Unknown)
 | 
											if (stream!.Type != StreamType.Unknown)
 | 
				
			||||||
						{
 | 
											{
 | 
				
			||||||
							tracks[j] = stream.ToTrack();
 | 
												tracks[j] = stream.ToTrack();
 | 
				
			||||||
@ -94,7 +94,7 @@ namespace Kyoo.Controllers
 | 
				
			|||||||
			_options = options;
 | 
								_options = options;
 | 
				
			||||||
			_library = library;
 | 
								_library = library;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			if (TranscoderAPI.Init() != Marshal.SizeOf<Stream>())
 | 
								if (TranscoderAPI.Init() != Marshal.SizeOf<Models.Watch.Stream>())
 | 
				
			||||||
				throw new BadTranscoderException();
 | 
									throw new BadTranscoderException();
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -7,11 +7,11 @@ using Autofac.Extras.AttributeMetadata;
 | 
				
			|||||||
using Kyoo.Abstractions;
 | 
					using Kyoo.Abstractions;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Api;
 | 
					using Kyoo.Core.Api;
 | 
				
			||||||
using Kyoo.Controllers;
 | 
					using Kyoo.Core.Controllers;
 | 
				
			||||||
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
 | 
					using Kyoo.Core.Tasks;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					 | 
				
			||||||
using Kyoo.Tasks;
 | 
					 | 
				
			||||||
using Microsoft.AspNetCore.Builder;
 | 
					using Microsoft.AspNetCore.Builder;
 | 
				
			||||||
using Microsoft.AspNetCore.StaticFiles;
 | 
					using Microsoft.AspNetCore.StaticFiles;
 | 
				
			||||||
using Microsoft.Extensions.Configuration;
 | 
					using Microsoft.Extensions.Configuration;
 | 
				
			||||||
@ -20,7 +20,7 @@ using Microsoft.Extensions.Hosting;
 | 
				
			|||||||
using Serilog;
 | 
					using Serilog;
 | 
				
			||||||
using IMetadataProvider = Kyoo.Abstractions.Controllers.IMetadataProvider;
 | 
					using IMetadataProvider = Kyoo.Abstractions.Controllers.IMetadataProvider;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Core
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// The core module containing default implementations
 | 
						/// The core module containing default implementations
 | 
				
			||||||
@ -2,7 +2,7 @@ using System.Net.Http;
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Newtonsoft.Json;
 | 
					using Newtonsoft.Json;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Core
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public static class Helper
 | 
						public static class Helper
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -2,7 +2,7 @@ using System.Collections.Generic;
 | 
				
			|||||||
using System.Collections.Immutable;
 | 
					using System.Collections.Immutable;
 | 
				
			||||||
using System.IO;
 | 
					using System.IO;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Models.Watch
 | 
					namespace Kyoo.Core.Models.Watch
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A static class allowing one to identify files extensions.
 | 
						/// A static class allowing one to identify files extensions.
 | 
				
			||||||
@ -1,7 +1,7 @@
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using System;
 | 
					using System;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Models.Options
 | 
					namespace Kyoo.Core.Models.Options
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// The typed list of basic/global options for Kyoo
 | 
						/// The typed list of basic/global options for Kyoo
 | 
				
			||||||
@ -1,4 +1,4 @@
 | 
				
			|||||||
namespace Kyoo.Models.Options
 | 
					namespace Kyoo.Core.Models.Options
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// Options for media registering.
 | 
						/// Options for media registering.
 | 
				
			||||||
@ -2,7 +2,7 @@ using System;
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using JetBrains.Annotations;
 | 
					using JetBrains.Annotations;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Models.Options
 | 
					namespace Kyoo.Core.Models.Options
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// Options related to tasks
 | 
						/// Options related to tasks
 | 
				
			||||||
@ -2,7 +2,7 @@ using System.Runtime.InteropServices;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Models.Watch
 | 
					namespace Kyoo.Core.Models.Watch
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// The unmanaged stream that the transcoder will return.
 | 
						/// The unmanaged stream that the transcoder will return.
 | 
				
			||||||
@ -5,13 +5,14 @@ using Autofac;
 | 
				
			|||||||
using Kyoo.Abstractions;
 | 
					using Kyoo.Abstractions;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Authentication;
 | 
					using Kyoo.Authentication;
 | 
				
			||||||
using Kyoo.Controllers;
 | 
					using Kyoo.Core.Controllers;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
 | 
					using Kyoo.Core.Tasks;
 | 
				
			||||||
using Kyoo.Postgresql;
 | 
					using Kyoo.Postgresql;
 | 
				
			||||||
using Kyoo.SqLite;
 | 
					using Kyoo.SqLite;
 | 
				
			||||||
using Kyoo.Tasks;
 | 
					 | 
				
			||||||
using Kyoo.TheMovieDb;
 | 
					using Kyoo.TheMovieDb;
 | 
				
			||||||
using Kyoo.TheTvdb;
 | 
					using Kyoo.TheTvdb;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Kyoo.WebApp;
 | 
					using Kyoo.WebApp;
 | 
				
			||||||
using Microsoft.AspNetCore.Builder;
 | 
					using Microsoft.AspNetCore.Builder;
 | 
				
			||||||
using Microsoft.AspNetCore.Hosting;
 | 
					using Microsoft.AspNetCore.Hosting;
 | 
				
			||||||
@ -21,7 +22,7 @@ using Microsoft.Extensions.Hosting;
 | 
				
			|||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Core
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// The Startup class is used to configure the AspNet's webhost.
 | 
						/// The Startup class is used to configure the AspNet's webhost.
 | 
				
			||||||
@ -7,10 +7,10 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Models.Watch;
 | 
					using Kyoo.Core.Models.Watch;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task to add new video files.
 | 
						/// A task to add new video files.
 | 
				
			||||||
@ -6,7 +6,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Microsoft.Extensions.Logging;
 | 
					using Microsoft.Extensions.Logging;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task to remove orphaned episode and series.
 | 
						/// A task to remove orphaned episode and series.
 | 
				
			||||||
@ -6,7 +6,7 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task that download metadata providers images.
 | 
						/// A task that download metadata providers images.
 | 
				
			||||||
@ -5,7 +5,7 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task run on Kyoo's startup to initialize plugins
 | 
						/// A task run on Kyoo's startup to initialize plugins
 | 
				
			||||||
@ -7,7 +7,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task to register a new episode
 | 
						/// A task to register a new episode
 | 
				
			||||||
@ -6,7 +6,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Tasks
 | 
					namespace Kyoo.Core.Tasks
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A task to register a new episode
 | 
						/// A task to register a new episode
 | 
				
			||||||
@ -7,10 +7,10 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/collection")]
 | 
						[Route("api/collection")]
 | 
				
			||||||
	[Route("api/collections")]
 | 
						[Route("api/collections")]
 | 
				
			||||||
@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// An API to retrieve or edit configuration settings
 | 
						/// An API to retrieve or edit configuration settings
 | 
				
			||||||
@ -7,10 +7,10 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/episode")]
 | 
						[Route("api/episode")]
 | 
				
			||||||
	[Route("api/episodes")]
 | 
						[Route("api/episodes")]
 | 
				
			||||||
@ -5,11 +5,11 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/genre")]
 | 
						[Route("api/genre")]
 | 
				
			||||||
	[Route("api/genres")]
 | 
						[Route("api/genres")]
 | 
				
			||||||
@ -6,7 +6,7 @@ using System.Linq.Expressions;
 | 
				
			|||||||
using System.Reflection;
 | 
					using System.Reflection;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public static class ApiHelper
 | 
						public static class ApiHelper
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -8,7 +8,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
	[ResourceView]
 | 
						[ResourceView]
 | 
				
			||||||
@ -6,11 +6,12 @@ using System.Reflection;
 | 
				
			|||||||
using System.Text.RegularExpressions;
 | 
					using System.Text.RegularExpressions;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Newtonsoft.Json;
 | 
					using Newtonsoft.Json;
 | 
				
			||||||
using Newtonsoft.Json.Linq;
 | 
					using Newtonsoft.Json.Linq;
 | 
				
			||||||
using Newtonsoft.Json.Serialization;
 | 
					using Newtonsoft.Json.Serialization;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class JsonPropertyIgnorer : CamelCasePropertyNamesContractResolver
 | 
						public class JsonPropertyIgnorer : CamelCasePropertyNamesContractResolver
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -6,12 +6,13 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Attributes;
 | 
					using Kyoo.Abstractions.Models.Attributes;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc.Controllers;
 | 
					using Microsoft.AspNetCore.Mvc.Controllers;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc.Filters;
 | 
					using Microsoft.AspNetCore.Mvc.Filters;
 | 
				
			||||||
using Microsoft.Extensions.DependencyInjection;
 | 
					using Microsoft.Extensions.DependencyInjection;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public class ResourceViewAttribute : ActionFilterAttribute
 | 
						public class ResourceViewAttribute : ActionFilterAttribute
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@ -6,10 +6,10 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/library")]
 | 
						[Route("api/library")]
 | 
				
			||||||
	[Route("api/libraries")]
 | 
						[Route("api/libraries")]
 | 
				
			||||||
@ -6,11 +6,11 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/item")]
 | 
						[Route("api/item")]
 | 
				
			||||||
	[Route("api/items")]
 | 
						[Route("api/items")]
 | 
				
			||||||
@ -5,11 +5,11 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/people")]
 | 
						[Route("api/people")]
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
@ -2,11 +2,11 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/provider")]
 | 
						[Route("api/provider")]
 | 
				
			||||||
	[Route("api/providers")]
 | 
						[Route("api/providers")]
 | 
				
			||||||
@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/search/{query}")]
 | 
						[Route("api/search/{query}")]
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
@ -6,10 +6,10 @@ using System.Linq;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/season")]
 | 
						[Route("api/season")]
 | 
				
			||||||
	[Route("api/seasons")]
 | 
						[Route("api/seasons")]
 | 
				
			||||||
@ -8,10 +8,10 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/show")]
 | 
						[Route("api/show")]
 | 
				
			||||||
	[Route("api/shows")]
 | 
						[Route("api/shows")]
 | 
				
			||||||
@ -5,11 +5,11 @@ using System.Threading.Tasks;
 | 
				
			|||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/studio")]
 | 
						[Route("api/studio")]
 | 
				
			||||||
	[Route("api/studios")]
 | 
						[Route("api/studios")]
 | 
				
			||||||
@ -7,7 +7,7 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("subtitle")]
 | 
						[Route("subtitle")]
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/task")]
 | 
						[Route("api/task")]
 | 
				
			||||||
	[Route("api/tasks")]
 | 
						[Route("api/tasks")]
 | 
				
			||||||
@ -4,11 +4,11 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/track")]
 | 
						[Route("api/track")]
 | 
				
			||||||
	[Route("api/tracks")]
 | 
						[Route("api/tracks")]
 | 
				
			||||||
@ -5,11 +5,11 @@ using Kyoo.Abstractions.Controllers;
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Exceptions;
 | 
					using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc.Filters;
 | 
					using Microsoft.AspNetCore.Mvc.Filters;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("video")]
 | 
						[Route("video")]
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
@ -5,7 +5,7 @@ using Kyoo.Abstractions.Models.Exceptions;
 | 
				
			|||||||
using Kyoo.Abstractions.Models.Permissions;
 | 
					using Kyoo.Abstractions.Models.Permissions;
 | 
				
			||||||
using Microsoft.AspNetCore.Mvc;
 | 
					using Microsoft.AspNetCore.Mvc;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Api
 | 
					namespace Kyoo.Core.Api
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	[Route("api/watch")]
 | 
						[Route("api/watch")]
 | 
				
			||||||
	[ApiController]
 | 
						[ApiController]
 | 
				
			||||||
@ -1,7 +1,7 @@
 | 
				
			|||||||
using System.Data.Common;
 | 
					using System.Data.Common;
 | 
				
			||||||
using Microsoft.Extensions.Configuration;
 | 
					using Microsoft.Extensions.Configuration;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo
 | 
					namespace Kyoo.Database
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	/// <summary>
 | 
						/// <summary>
 | 
				
			||||||
	/// A class that regroup extensions used by some asp-net related parts of the app.
 | 
						/// A class that regroup extensions used by some asp-net related parts of the app.
 | 
				
			||||||
 | 
				
			|||||||
@ -10,7 +10,16 @@
 | 
				
			|||||||
		<LangVersion>default</LangVersion>
 | 
							<LangVersion>default</LangVersion>
 | 
				
			||||||
	</PropertyGroup>
 | 
						</PropertyGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						<PropertyGroup Condition="$(IncludeConsole) == true">
 | 
				
			||||||
 | 
							<!-- 
 | 
				
			||||||
 | 
								IncludeConsole is a property used when deploying the windows host. Since the runtime identifier is removed, 
 | 
				
			||||||
 | 
								we specify it manually. This is kindy hacky but MsBuild does not really work well with multiples exe output
 | 
				
			||||||
 | 
								and we need multiples exe with the same shared framework (SelfContained).
 | 
				
			||||||
 | 
							 -->
 | 
				
			||||||
 | 
							<RuntimeIdentifier>win-x64</RuntimeIdentifier>
 | 
				
			||||||
 | 
						</PropertyGroup>
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	<ItemGroup>
 | 
						<ItemGroup>
 | 
				
			||||||
		<ProjectReference Include="../Kyoo/Kyoo.csproj" />
 | 
							<ProjectReference Include="../Kyoo.Core/Kyoo.Core.csproj" />
 | 
				
			||||||
	</ItemGroup>
 | 
						</ItemGroup>
 | 
				
			||||||
</Project>
 | 
					</Project>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
 | 
					using Kyoo.Core;
 | 
				
			||||||
using Microsoft.AspNetCore.Hosting;
 | 
					using Microsoft.AspNetCore.Hosting;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Host.Console
 | 
					namespace Kyoo.Host.Console
 | 
				
			||||||
 | 
				
			|||||||
@ -11,7 +11,8 @@
 | 
				
			|||||||
	</PropertyGroup>
 | 
						</PropertyGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	<ItemGroup>
 | 
						<ItemGroup>
 | 
				
			||||||
		<ProjectReference Include="../Kyoo/Kyoo.csproj" />
 | 
							<ProjectReference Include="../Kyoo.Core/Kyoo.Core.csproj" />
 | 
				
			||||||
 | 
							<ProjectReference Include="../Kyoo.Host.Console/Kyoo.Host.Console.csproj" Condition="$(IncludeConsole) == true" />
 | 
				
			||||||
	</ItemGroup>
 | 
						</ItemGroup>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	<ItemGroup>
 | 
						<ItemGroup>
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,6 @@
 | 
				
			|||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Autofac;
 | 
					using Autofac;
 | 
				
			||||||
 | 
					using Kyoo.Core;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Host.WindowsTrait
 | 
					namespace Kyoo.Host.WindowsTrait
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -6,7 +6,7 @@ using System.Threading;
 | 
				
			|||||||
using System.Windows.Forms;
 | 
					using System.Windows.Forms;
 | 
				
			||||||
using Autofac;
 | 
					using Autofac;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Models.Options;
 | 
					using Kyoo.Core.Models.Options;
 | 
				
			||||||
using Microsoft.Extensions.Options;
 | 
					using Microsoft.Extensions.Options;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.Host.WindowsTrait
 | 
					namespace Kyoo.Host.WindowsTrait
 | 
				
			||||||
 | 
				
			|||||||
@ -5,6 +5,7 @@ using System.Reflection;
 | 
				
			|||||||
using EFCore.NamingConventions.Internal;
 | 
					using EFCore.NamingConventions.Internal;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
using Npgsql;
 | 
					using Npgsql;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -4,6 +4,7 @@ using System.Linq.Expressions;
 | 
				
			|||||||
using System.Reflection;
 | 
					using System.Reflection;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using Microsoft.Data.Sqlite;
 | 
					using Microsoft.Data.Sqlite;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore;
 | 
					using Microsoft.EntityFrameworkCore;
 | 
				
			||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 | 
					using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,6 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TMDbLib.Objects.Search;
 | 
					using TMDbLib.Objects.Search;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.TheMovieDb
 | 
					namespace Kyoo.TheMovieDb
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Linq;
 | 
					using System.Linq;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TMDbLib.Objects.Movies;
 | 
					using TMDbLib.Objects.Movies;
 | 
				
			||||||
using TMDbLib.Objects.Search;
 | 
					using TMDbLib.Objects.Search;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,6 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TMDbLib.Objects.General;
 | 
					using TMDbLib.Objects.General;
 | 
				
			||||||
using TMDbLib.Objects.People;
 | 
					using TMDbLib.Objects.People;
 | 
				
			||||||
using TMDbLib.Objects.Search;
 | 
					using TMDbLib.Objects.Search;
 | 
				
			||||||
 | 
				
			|||||||
@ -1,6 +1,7 @@
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Linq;
 | 
					using System.Linq;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TMDbLib.Objects.Search;
 | 
					using TMDbLib.Objects.Search;
 | 
				
			||||||
using TMDbLib.Objects.TvShows;
 | 
					using TMDbLib.Objects.TvShows;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,4 +1,5 @@
 | 
				
			|||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TMDbLib.Objects.Companies;
 | 
					using TMDbLib.Objects.Companies;
 | 
				
			||||||
using TMDbLib.Objects.Search;
 | 
					using TMDbLib.Objects.Search;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -3,6 +3,7 @@ using System.Collections.Generic;
 | 
				
			|||||||
using System.Globalization;
 | 
					using System.Globalization;
 | 
				
			||||||
using System.Linq;
 | 
					using System.Linq;
 | 
				
			||||||
using Kyoo.Abstractions.Models;
 | 
					using Kyoo.Abstractions.Models;
 | 
				
			||||||
 | 
					using Kyoo.Utils;
 | 
				
			||||||
using TvDbSharper.Dto;
 | 
					using TvDbSharper.Dto;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace Kyoo.TheTvdb
 | 
					namespace Kyoo.TheTvdb
 | 
				
			||||||
 | 
				
			|||||||
@ -47,7 +47,8 @@
 | 
				
			|||||||
		<Touch Files="$(NpmStamp)" AlwaysCreate="true" />
 | 
							<Touch Files="$(NpmStamp)" AlwaysCreate="true" />
 | 
				
			||||||
	</Target>
 | 
						</Target>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	<Target Name="RunWebpack" Condition="'$(SkipWebApp)' != 'true' And '$(Configuration)' == 'Debug'">
 | 
						<Target Name="RunWebpack" Condition="'$(SkipWebApp)' != 'true' And '$(Configuration)' == 'Release'">
 | 
				
			||||||
 | 
							<Message Importance="high" Text="Building the web app. This may take several minutes..." />
 | 
				
			||||||
		<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build -- --prod" />
 | 
							<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build -- --prod" />
 | 
				
			||||||
		<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build:ssr -- --prod" Condition="'$(BuildServerSideRenderer)' == 'true'" />
 | 
							<Exec WorkingDirectory="$(SpaRoot)" Command="npm run build:ssr -- --prod" Condition="'$(BuildServerSideRenderer)' == 'true'" />
 | 
				
			||||||
	</Target>
 | 
						</Target>
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								Kyoo.sln
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Kyoo.sln
									
									
									
									
									
								
							@ -1,5 +1,5 @@
 | 
				
			|||||||
Microsoft Visual Studio Solution File, Format Version 12.00
 | 
					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
 | 
					EndProject
 | 
				
			||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kyoo.Abstractions", "Kyoo.Abstractions\Kyoo.Abstractions.csproj", "{BAB2CAE1-AC28-4509-AA3E-8DC75BD59220}"
 | 
					Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kyoo.Abstractions", "Kyoo.Abstractions\Kyoo.Abstractions.csproj", "{BAB2CAE1-AC28-4509-AA3E-8DC75BD59220}"
 | 
				
			||||||
EndProject
 | 
					EndProject
 | 
				
			||||||
 | 
				
			|||||||
@ -29,7 +29,7 @@ build() {
 | 
				
			|||||||
	# cd "Kyoo-$pkgver"
 | 
						# cd "Kyoo-$pkgver"
 | 
				
			||||||
	cd "Kyoo"
 | 
						cd "Kyoo"
 | 
				
			||||||
	export DOTNET_CLI_TELEMETRY_OPTOUT=1
 | 
						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() {
 | 
					package() {
 | 
				
			||||||
 | 
				
			|||||||
@ -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
 | 
					Name: "none"; Description: "Do not start automatically"; GroupDescription: "Start automatically"; Flags: exclusive unchecked
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Files]
 | 
					[Files]
 | 
				
			||||||
Source: "{#kyoo}\Kyoo.exe"; DestDir: "{app}"; Flags: ignoreversion
 | 
					Source: "{#kyoo}\Kyoo.Host.Console.exe"; DestDir: "{app}"; Flags: ignoreversion
 | 
				
			||||||
Source: "{#kyoo}\Kyoo.WindowsHost.exe"; DestDir: "{app}"; Flags: ignoreversion
 | 
					Source: "{#kyoo}\Kyoo.Host.WindowsTrait.exe"; DestDir: "{app}"; Flags: ignoreversion
 | 
				
			||||||
Source: "{#kyoo}\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
 | 
					Source: "{#kyoo}\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Registry]
 | 
					[Registry]
 | 
				
			||||||
@ -38,13 +38,13 @@ Root: HKA; Subkey: "Software\SDG\Kyoo\Settings"; ValueType: string; ValueName: "
 | 
				
			|||||||
Type: filesandordirs; Name: "{code:GetDataDir}"
 | 
					Type: filesandordirs; Name: "{code:GetDataDir}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Icons]
 | 
					[Icons]
 | 
				
			||||||
Name: "{autoprograms}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe"
 | 
					Name: "{autoprograms}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe"
 | 
				
			||||||
Name: "{autoprograms}\Kyoo (Console)"; Filename: "{app}\Kyoo.exe"
 | 
					Name: "{autoprograms}\Kyoo (Console)"; Filename: "{app}\Kyoo.Host.Console.exe"
 | 
				
			||||||
Name: "{autodesktop}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe"; Tasks: desktopicon
 | 
					Name: "{autodesktop}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe"; Tasks: desktopicon
 | 
				
			||||||
Name: "{autostartup}\Kyoo"; Filename: "{app}\Kyoo.WindowsHost.exe"; Tasks: startupShortcut
 | 
					Name: "{autostartup}\Kyoo"; Filename: "{app}\Kyoo.Host.WindowsTrait.exe"; Tasks: startupShortcut
 | 
				
			||||||
 | 
					
 | 
				
			||||||
[Run]
 | 
					[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]
 | 
					[Code]
 | 
				
			||||||
var
 | 
					var
 | 
				
			||||||
 | 
				
			|||||||
@ -6,7 +6,7 @@ After=network.target
 | 
				
			|||||||
[Service]
 | 
					[Service]
 | 
				
			||||||
User=kyoo
 | 
					User=kyoo
 | 
				
			||||||
Environment=KYOO_DATADIR=/var/lib/kyoo
 | 
					Environment=KYOO_DATADIR=/var/lib/kyoo
 | 
				
			||||||
ExecStart=/usr/lib/kyoo/Kyoo
 | 
					ExecStart=/usr/lib/kyoo/Kyoo.Host.Console
 | 
				
			||||||
Restart=on-abort
 | 
					Restart=on-abort
 | 
				
			||||||
TimeoutSec=20
 | 
					TimeoutSec=20
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -2,7 +2,7 @@ using System;
 | 
				
			|||||||
using System.Collections.Generic;
 | 
					using System.Collections.Generic;
 | 
				
			||||||
using System.Threading.Tasks;
 | 
					using System.Threading.Tasks;
 | 
				
			||||||
using Kyoo.Abstractions.Controllers;
 | 
					using Kyoo.Abstractions.Controllers;
 | 
				
			||||||
using Kyoo.Controllers;
 | 
					using Kyoo.Core.Controllers;
 | 
				
			||||||
using Kyoo.Database;
 | 
					using Kyoo.Database;
 | 
				
			||||||
using Xunit.Abstractions;
 | 
					using Xunit.Abstractions;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user