| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using Abp.Configuration;
- using Abp.Extensions;
- namespace Abp.Net.Mail
- {
- /// <summary>
- /// Implementation of <see cref="IEmailSenderConfiguration"/> that reads settings
- /// from <see cref="ISettingManager"/>.
- /// </summary>
- public abstract class EmailSenderConfiguration : IEmailSenderConfiguration
- {
- public virtual string DefaultFromAddress
- {
- get { return GetNotEmptySettingValue(EmailSettingNames.DefaultFromAddress); }
- }
- public virtual string DefaultFromDisplayName
- {
- get { return SettingManager.GetSettingValue(EmailSettingNames.DefaultFromDisplayName); }
- }
- protected readonly ISettingManager SettingManager;
- /// <summary>
- /// Creates a new <see cref="EmailSenderConfiguration"/>.
- /// </summary>
- protected EmailSenderConfiguration(ISettingManager settingManager)
- {
- SettingManager = settingManager;
- }
- /// <summary>
- /// Gets a setting value by checking. Throws <see cref="AbpException"/> if it's null or empty.
- /// </summary>
- /// <param name="name">Name of the setting</param>
- /// <returns>Value of the setting</returns>
- protected string GetNotEmptySettingValue(string name)
- {
- var value = SettingManager.GetSettingValue(name);
- if (value.IsNullOrEmpty())
- {
- throw new AbpException($"Setting value for '{name}' is null or empty!");
- }
- return value;
- }
- }
- }
|