public RecipientExpansionInfo(EnvelopeRecipient removeRecipient, RoutingAddress[] addresses, SmtpResponse smtpResponse) { if (removeRecipient == null) { throw new ArgumentNullException("removeRecipient"); } if (addresses == null) { throw new ArgumentNullException("addresses"); } for (int i = 0; i < addresses.Length; i++) { if (!addresses[i].IsValid) { throw new ArgumentException(string.Format("The specified address is an invalid SMTP address - {0}", addresses[i])); } } this.removeRecipient = removeRecipient; this.addresses = addresses; this.response = smtpResponse; this.generateDSN = true; }
internal abstract int GetOutboundIPPool(EnvelopeRecipient recipient);
internal abstract void SetOutboundIPPool(EnvelopeRecipient recipient, int offset);
internal abstract void SetTlsAuthLevel(EnvelopeRecipient recipient, RequiredTlsAuthLevel?tlsAuthLevel);
internal abstract RequiredTlsAuthLevel?GetTlsAuthLevel(EnvelopeRecipient recipient);
internal abstract void SetRoutingOverride(EnvelopeRecipient recipient, RoutingOverride routingOverride, string overrideSource);
public abstract void SetTlsDomain(EnvelopeRecipient recipient, string domain);
public abstract string GetTlsDomain(EnvelopeRecipient recipient);
public abstract void SetRoutingOverride(EnvelopeRecipient recipient, RoutingOverride routingOverride);
public abstract RoutingOverride GetRoutingOverride(EnvelopeRecipient recipient);
public RecipientExpansionInfo(EnvelopeRecipient removeRecipient, RoutingAddress[] addresses) { this = new RecipientExpansionInfo(removeRecipient, addresses, SmtpResponse.Empty); this.generateDSN = false; }
internal abstract bool TryGetDsnParameters(EnvelopeRecipient recipient, string key, out object value);
internal abstract void AddDsnParameters(EnvelopeRecipient recipient, string key, object value);
public abstract void AckRecipientFail(EnvelopeRecipient recipient, SmtpResponse smtpResponse);
public abstract void AckRecipientSuccess(EnvelopeRecipient recipient, SmtpResponse smtpResponse);