mirror of https://github.com/abpframework/abp.git
10 changed files with 62 additions and 69 deletions
@ -1,18 +0,0 @@ |
|||
using System.Collections.Generic; |
|||
|
|||
namespace Volo.Abp.Localization.Distributed; |
|||
|
|||
public class DistributedLocalizationData |
|||
{ |
|||
public List<DistributedLocalizationResourceData> Resources { get; } |
|||
|
|||
public DistributedLocalizationData() |
|||
{ |
|||
Resources = new(); |
|||
} |
|||
|
|||
public DistributedLocalizationData(List<DistributedLocalizationResourceData> resources) |
|||
{ |
|||
Resources = Check.NotNull(resources, nameof(resources)); |
|||
} |
|||
} |
|||
@ -1,12 +0,0 @@ |
|||
using System.Threading.Tasks; |
|||
|
|||
namespace Volo.Abp.Localization.Distributed; |
|||
|
|||
public interface IDistributedLocalizationStore |
|||
{ |
|||
Task SaveAsync(); |
|||
|
|||
Task<DistributedLocalizationData> GetAsync(); |
|||
|
|||
Task<string[]> GetResourceNames(); |
|||
} |
|||
@ -1,25 +0,0 @@ |
|||
using System; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.DependencyInjection; |
|||
|
|||
namespace Volo.Abp.Localization.Distributed; |
|||
|
|||
public class NullDistributedLocalizationStore : IDistributedLocalizationStore, ISingletonDependency |
|||
{ |
|||
private readonly DistributedLocalizationData _data = new(); |
|||
|
|||
public Task SaveAsync() |
|||
{ |
|||
return Task.CompletedTask; |
|||
} |
|||
|
|||
public Task<DistributedLocalizationData> GetAsync() |
|||
{ |
|||
return Task.FromResult(_data); |
|||
} |
|||
|
|||
public Task<string[]> GetResourceNames() |
|||
{ |
|||
return Task.FromResult(Array.Empty<string>()); |
|||
} |
|||
} |
|||
@ -1,14 +1,14 @@ |
|||
namespace Volo.Abp.Localization.Distributed; |
|||
|
|||
public class AbpDistributedLocalizationOptions |
|||
public class AbpExternalLocalizationOptions |
|||
{ |
|||
/// <summary>
|
|||
/// Default: true.
|
|||
/// </summary>
|
|||
public bool SaveToDistributedStore { get; set; } = true; |
|||
public bool SaveToExternalStore { get; set; } = true; |
|||
|
|||
/// <summary>
|
|||
/// Default: false.
|
|||
/// </summary>
|
|||
public bool GetFromDistributedStore { get; set; } |
|||
public bool GetFromExternalStore { get; set; } |
|||
} |
|||
@ -0,0 +1,18 @@ |
|||
using System.Collections.Generic; |
|||
|
|||
namespace Volo.Abp.Localization.Distributed; |
|||
|
|||
public class ExternalLocalizationData |
|||
{ |
|||
public List<ExternalLocalizationResourceData> Resources { get; } |
|||
|
|||
public ExternalLocalizationData() |
|||
{ |
|||
Resources = new(); |
|||
} |
|||
|
|||
public ExternalLocalizationData(List<ExternalLocalizationResourceData> resources) |
|||
{ |
|||
Resources = Check.NotNull(resources, nameof(resources)); |
|||
} |
|||
} |
|||
@ -1,9 +1,17 @@ |
|||
using System.Threading.Tasks; |
|||
using JetBrains.Annotations; |
|||
using Volo.Abp.Localization.Distributed; |
|||
|
|||
namespace Volo.Abp.Localization.External; |
|||
|
|||
public interface IExternalLocalizationStore |
|||
{ |
|||
Task SaveAsync(); |
|||
|
|||
[CanBeNull] |
|||
LocalizationResourceBase GetResourceOrNull([NotNull] string resourceName); |
|||
|
|||
Task<ExternalLocalizationData> GetAsync(); |
|||
|
|||
Task<string[]> GetResourceNames(); |
|||
} |
|||
@ -1,11 +1,31 @@ |
|||
using System; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.DependencyInjection; |
|||
using Volo.Abp.Localization.Distributed; |
|||
|
|||
namespace Volo.Abp.Localization.External; |
|||
|
|||
public class NullExternalLocalizationStore : IExternalLocalizationStore, ISingletonDependency |
|||
{ |
|||
private readonly ExternalLocalizationData _data = new(); |
|||
|
|||
public Task SaveAsync() |
|||
{ |
|||
return Task.CompletedTask; |
|||
} |
|||
|
|||
public LocalizationResourceBase GetResourceOrNull(string resourceName) |
|||
{ |
|||
return null; |
|||
} |
|||
|
|||
public Task<ExternalLocalizationData> GetAsync() |
|||
{ |
|||
return Task.FromResult(_data); |
|||
} |
|||
|
|||
public Task<string[]> GetResourceNames() |
|||
{ |
|||
return Task.FromResult(Array.Empty<string>()); |
|||
} |
|||
} |
|||
Loading…
Reference in new issue