jellyfin/MediaBrowser.Api/LocalizationService.cs

112 lines
3.3 KiB
C#
Raw Normal View History

using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Net;
2013-02-20 20:33:05 -05:00
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Globalization;
2016-10-25 15:02:04 -04:00
using MediaBrowser.Model.Services;
using Microsoft.Extensions.Logging;
2013-02-20 20:33:05 -05:00
namespace MediaBrowser.Api
{
/// <summary>
/// Class GetCultures
/// </summary>
2014-03-23 16:07:02 -04:00
[Route("/Localization/Cultures", "GET", Summary = "Gets known cultures")]
2017-08-19 15:43:35 -04:00
public class GetCultures : IReturn<CultureDto[]>
2013-02-20 20:33:05 -05:00
{
}
/// <summary>
/// Class GetCountries
/// </summary>
2014-03-23 16:07:02 -04:00
[Route("/Localization/Countries", "GET", Summary = "Gets known countries")]
2017-08-19 15:43:35 -04:00
public class GetCountries : IReturn<CountryInfo[]>
2013-02-20 20:33:05 -05:00
{
}
/// <summary>
/// Class ParentalRatings
/// </summary>
2014-03-23 16:07:02 -04:00
[Route("/Localization/ParentalRatings", "GET", Summary = "Gets known parental ratings")]
2017-08-19 15:43:35 -04:00
public class GetParentalRatings : IReturn<ParentalRating[]>
2013-02-20 20:33:05 -05:00
{
}
2014-03-30 21:00:47 -04:00
/// <summary>
/// Class ParentalRatings
/// </summary>
[Route("/Localization/Options", "GET", Summary = "Gets localization options")]
2019-01-25 16:27:33 -05:00
public class GetLocalizationOptions : IReturn<LocalizationOption[]>
2014-03-30 21:00:47 -04:00
{
}
2013-02-20 20:33:05 -05:00
/// <summary>
/// Class CulturesService
/// </summary>
2014-11-14 21:31:03 -05:00
[Authenticated(AllowBeforeStartupWizard = true)]
2013-03-16 01:52:33 -04:00
public class LocalizationService : BaseApiService
2013-02-20 20:33:05 -05:00
{
/// <summary>
/// The _localization
/// </summary>
private readonly ILocalizationManager _localization;
/// <summary>
/// Initializes a new instance of the <see cref="LocalizationService"/> class.
/// </summary>
/// <param name="localization">The localization.</param>
public LocalizationService(
ILogger<LocalizationService> logger,
IServerConfigurationManager serverConfigurationManager,
IHttpResultFactory httpResultFactory,
ILocalizationManager localization)
: base(logger, serverConfigurationManager, httpResultFactory)
{
_localization = localization;
}
2013-02-20 20:33:05 -05:00
/// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
/// <returns>System.Object.</returns>
public object Get(GetParentalRatings request)
{
2017-08-19 15:43:35 -04:00
var result = _localization.GetParentalRatings();
2013-02-20 20:33:05 -05:00
2014-05-07 17:41:38 -04:00
return ToOptimizedResult(result);
2013-02-20 20:33:05 -05:00
}
2014-03-30 21:00:47 -04:00
public object Get(GetLocalizationOptions request)
{
2017-08-19 15:43:35 -04:00
var result = _localization.GetLocalizationOptions();
2014-03-30 21:00:47 -04:00
2014-05-07 17:41:38 -04:00
return ToOptimizedResult(result);
2014-03-30 21:00:47 -04:00
}
2013-02-20 20:33:05 -05:00
/// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
/// <returns>System.Object.</returns>
2019-08-16 11:31:47 -04:00
public object Get(GetCountries request)
2013-02-20 20:33:05 -05:00
{
2019-08-16 11:31:47 -04:00
var result = _localization.GetCountries();
2013-02-20 20:33:05 -05:00
2014-05-07 17:41:38 -04:00
return ToOptimizedResult(result);
2013-02-20 20:33:05 -05:00
}
/// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
/// <returns>System.Object.</returns>
public object Get(GetCultures request)
{
var result = _localization.GetCultures();
2013-02-20 20:33:05 -05:00
2014-05-07 17:41:38 -04:00
return ToOptimizedResult(result);
2013-02-20 20:33:05 -05:00
}
}
}