ISettingStore.cs 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using System.Collections.Generic;
  2. using System.Threading.Tasks;
  3. namespace Abp.Configuration
  4. {
  5. /// <summary>
  6. /// This interface is used to get/set settings from/to a data source (database).
  7. /// </summary>
  8. public interface ISettingStore
  9. {
  10. /// <summary>
  11. /// Gets a setting or null.
  12. /// </summary>
  13. /// <param name="tenantId">TenantId or null</param>
  14. /// <param name="userId">UserId or null</param>
  15. /// <param name="name">Name of the setting</param>
  16. /// <returns>Setting object</returns>
  17. Task<SettingInfo> GetSettingOrNullAsync(int? tenantId, long? userId, string name);
  18. /// <summary>
  19. /// Deletes a setting.
  20. /// </summary>
  21. /// <param name="setting">Setting to be deleted</param>
  22. Task DeleteAsync(SettingInfo setting);
  23. /// <summary>
  24. /// Adds a setting.
  25. /// </summary>
  26. /// <param name="setting">Setting to add</param>
  27. Task CreateAsync(SettingInfo setting);
  28. /// <summary>
  29. /// Update a setting.
  30. /// </summary>
  31. /// <param name="setting">Setting to add</param>
  32. Task UpdateAsync(SettingInfo setting);
  33. /// <summary>
  34. /// Gets a list of setting.
  35. /// </summary>
  36. /// <param name="tenantId">TenantId or null</param>
  37. /// <param name="userId">UserId or null</param>
  38. /// <returns>List of settings</returns>
  39. Task<List<SettingInfo>> GetAllListAsync(int? tenantId, long? userId);
  40. }
  41. }