You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.8 KiB
C#
44 lines
1.8 KiB
C#
using JetBrains.Annotations;
|
|
using Volo.Abp.Settings;
|
|
|
|
namespace NPin.Framework.SettingManagement.Domain.Provider.Extensions;
|
|
|
|
public static class UserSettingManagerExtensions
|
|
{
|
|
public static Task<string?> GetOrNullForUserAsync(this ISettingManager settingManager, [NotNull] string name,
|
|
Guid userId, bool fallback = true)
|
|
{
|
|
return settingManager.GetOrNullAsync(name, UserSettingValueProvider.ProviderName, userId.ToString(), fallback);
|
|
}
|
|
|
|
public static Task<string?> GetOrNullForCurrentUserAsync(this ISettingManager settingManager, [NotNull] string name,
|
|
bool fallback = true)
|
|
{
|
|
return settingManager.GetOrNullAsync(name, UserSettingValueProvider.ProviderName, null, fallback);
|
|
}
|
|
|
|
public static Task<List<SettingValue>> GetAllForUserAsync(this ISettingManager settingManager, Guid userId,
|
|
bool fallback = true)
|
|
{
|
|
return settingManager.GetAllAsync(UserSettingValueProvider.ProviderName, userId.ToString(), fallback);
|
|
}
|
|
|
|
public static Task<List<SettingValue>> GetAllForCurrentUserAsync(this ISettingManager settingManager,
|
|
bool fallback = true)
|
|
{
|
|
return settingManager.GetAllAsync(UserSettingValueProvider.ProviderName, null, fallback);
|
|
}
|
|
|
|
public static Task SetForUserAsync(this ISettingManager settingManager, Guid userId, [NotNull] string name,
|
|
string? value, bool forceToSet = false)
|
|
{
|
|
return settingManager.SetAsync(name, value, UserSettingValueProvider.ProviderName, userId.ToString(),
|
|
forceToSet);
|
|
}
|
|
|
|
public static Task SetForCurrentUserAsync(this ISettingManager settingManager, [NotNull] string name, string? value,
|
|
bool forceToSet = false)
|
|
{
|
|
return settingManager.SetAsync(name, value, UserSettingValueProvider.ProviderName, null, forceToSet);
|
|
}
|
|
} |