aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/LocalizationService.cs
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-07-20 14:28:33 -0600
committercrobibero <cody@robibe.ro>2020-07-20 14:28:33 -0600
commit13850644973b1223bbeb2271e42ad252d43a10bf (patch)
tree5373b3953dabd692ae937483078569cb0525772e /MediaBrowser.Api/LocalizationService.cs
parent352dab701866b37d0dd5dcaa6343ccc256d7e837 (diff)
parent0750357916b600a4b4c27bc4babd2adcc6390473 (diff)
Merge remote-tracking branch 'upstream/master' into api-migration-merge
Diffstat (limited to 'MediaBrowser.Api/LocalizationService.cs')
-rw-r--r--MediaBrowser.Api/LocalizationService.cs111
1 files changed, 111 insertions, 0 deletions
diff --git a/MediaBrowser.Api/LocalizationService.cs b/MediaBrowser.Api/LocalizationService.cs
new file mode 100644
index 000000000..d6b5f5195
--- /dev/null
+++ b/MediaBrowser.Api/LocalizationService.cs
@@ -0,0 +1,111 @@
+using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.Net;
+using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Globalization;
+using MediaBrowser.Model.Services;
+using Microsoft.Extensions.Logging;
+
+namespace MediaBrowser.Api
+{
+ /// <summary>
+ /// Class GetCultures.
+ /// </summary>
+ [Route("/Localization/Cultures", "GET", Summary = "Gets known cultures")]
+ public class GetCultures : IReturn<CultureDto[]>
+ {
+ }
+
+ /// <summary>
+ /// Class GetCountries.
+ /// </summary>
+ [Route("/Localization/Countries", "GET", Summary = "Gets known countries")]
+ public class GetCountries : IReturn<CountryInfo[]>
+ {
+ }
+
+ /// <summary>
+ /// Class ParentalRatings.
+ /// </summary>
+ [Route("/Localization/ParentalRatings", "GET", Summary = "Gets known parental ratings")]
+ public class GetParentalRatings : IReturn<ParentalRating[]>
+ {
+ }
+
+ /// <summary>
+ /// Class ParentalRatings.
+ /// </summary>
+ [Route("/Localization/Options", "GET", Summary = "Gets localization options")]
+ public class GetLocalizationOptions : IReturn<LocalizationOption[]>
+ {
+ }
+
+ /// <summary>
+ /// Class CulturesService.
+ /// </summary>
+ [Authenticated(AllowBeforeStartupWizard = true)]
+ public class LocalizationService : BaseApiService
+ {
+ /// <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;
+ }
+
+ /// <summary>
+ /// Gets the specified request.
+ /// </summary>
+ /// <param name="request">The request.</param>
+ /// <returns>System.Object.</returns>
+ public object Get(GetParentalRatings request)
+ {
+ var result = _localization.GetParentalRatings();
+
+ return ToOptimizedResult(result);
+ }
+
+ public object Get(GetLocalizationOptions request)
+ {
+ var result = _localization.GetLocalizationOptions();
+
+ return ToOptimizedResult(result);
+ }
+
+ /// <summary>
+ /// Gets the specified request.
+ /// </summary>
+ /// <param name="request">The request.</param>
+ /// <returns>System.Object.</returns>
+ public object Get(GetCountries request)
+ {
+ var result = _localization.GetCountries();
+
+ return ToOptimizedResult(result);
+ }
+
+ /// <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();
+
+ return ToOptimizedResult(result);
+ }
+ }
+
+}