Class DomainConfig
Domain configuration
Inherited Members
ValidatableRecordBase.ObjectValidatable(IObjectValidatable)
ValidatableRecordBase.ToString()
ValidatableRecordBase.GetHashCode()
ValidatableRecordBase.Equals(ValidatableRecordBase)
ValidatableRecordBase.<Clone>$()
ValidatableRecordBase.EqualityContract
Namespace: wan24.AutoDiscover.Models
Assembly: wan24AutoDiscoverShared.dll
Syntax
public record DomainConfig : ValidatableRecordBase, IObjectValidatable, IValidatableObject, IEquatable<ValidatableRecordBase>, IEquatable<DomainConfig>
Remarks
Constructor
Constructors
| Edit this page View SourceDomainConfig()
Domain configuration
Declaration
public DomainConfig()
Remarks
Constructor
Properties
| Edit this page View SourceAcceptedDomains
Accepted domain names
Declaration
[CountLimit(1, 2147483647)]
[ItemRegularExpression("^[a-z|-|\\.]{1,256}$", ItemValidationTargets.Item)]
public IReadOnlyList<string>? AcceptedDomains { get; init; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<string> |
LoginNameMapping
Login name mapping (key is the email address or alias, value the mapped login name)
Declaration
[RequiredIf("LoginNameMappingRequired", new object?[] { true })]
public Dictionary<string, string>? LoginNameMapping { get; set; }
Property Value
| Type | Description |
|---|---|
| Dictionary<string, string> |
LoginNameMappingRequired
If a successful login name mapping is required (if no mapping was possible, the email address will be used as login name)
Declaration
public bool LoginNameMappingRequired { get; init; }
Property Value
| Type | Description |
|---|---|
| bool |
Protocols
Protocols
Declaration
[CountLimit(1, 255)]
public required IReadOnlyList<Protocol> Protocols { get; init; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyList<Protocol> |
Registered
Registered domains (key is the served domain name)
Declaration
public static IReadOnlyDictionary<string, DomainConfig> Registered { get; set; }
Property Value
| Type | Description |
|---|---|
| IReadOnlyDictionary<string, DomainConfig> |
Methods
| Edit this page View SourceCreateXml(XmlWriter, ReadOnlyMemory<string>)
Create XML
Declaration
public virtual void CreateXml(XmlWriter xml, ReadOnlyMemory<string> emailParts)
Parameters
| Type | Name | Description |
|---|---|---|
| XmlWriter | xml | XML |
| ReadOnlyMemory<string> | emailParts | Splitted email parts |
GetConfig(string, ReadOnlyMemory<string>)
Get a domain configuration which matches an email address
Declaration
public static DomainConfig? GetConfig(string host, ReadOnlyMemory<string> emailParts)
Parameters
| Type | Name | Description |
|---|---|---|
| string | host | Hostname |
| ReadOnlyMemory<string> | emailParts | Splitted email parts |
Returns
| Type | Description |
|---|---|
| DomainConfig | Domain configuration |
Implements
wan24.ObjectValidation.IObjectValidatable