// ========================================================================== // Squidex Headless CMS // ========================================================================== // Copyright (c) Squidex UG (haftungsbeschraenkt) // All rights reserved. Licensed under the MIT license. // ========================================================================== using System.Threading; using System.Threading.Tasks; using Microsoft.Extensions.Options; namespace Squidex.Infrastructure { public sealed class LanguagesInitializer : IInitializable { private readonly LanguagesOptions options; public LanguagesInitializer(IOptions options) { Guard.NotNull(options, nameof(options)); this.options = options.Value; } public Task InitializeAsync(CancellationToken ct = default) { foreach (var (key, value) in options) { if (!string.IsNullOrWhiteSpace(key) && !string.IsNullOrWhiteSpace(value)) { Language.AddLanguage(key, value); } } return Task.CompletedTask; } } }