using Kyoo.Abstractions.Models;
using System;
namespace Kyoo.Core.Models.Options
{
///
/// The typed list of basic/global options for Kyoo
///
public class BasicOptions
{
///
/// The path of this list of options
///
public const string Path = "Basics";
///
/// The internal url where the server will listen. It supports globing.
///
public string Url { get; set; } = "http://*:5000";
///
/// The public url that will be used in items response and in authentication server host.
///
public Uri PublicUrl { get; set; } = new("http://localhost:5000");
///
/// The path of the plugin directory.
///
public string PluginPath { get; set; } = "plugins/";
///
/// The temporary folder to cache transmuxed file.
///
public string TransmuxPath { get; set; } = "cached/transmux";
///
/// The temporary folder to cache transcoded file.
///
public string TranscodePath { get; set; } = "cached/transcode";
///
/// true if the metadata of a show/season/episode should be stored in the same directory as video files,
/// false to save them in a kyoo specific directory.
///
///
/// Some file systems might discard this option to store them somewhere else.
/// For example, readonly file systems will probably store them in a kyoo specific directory.
///
public bool MetadataInShow { get; set; } = true;
///
/// The path for metadata if they are not stored near show (see ).
/// Some resources can't be stored near a show and they are stored in this directory
/// (like ).
///
public string MetadataPath { get; set; } = "metadata/";
}
}