/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the sesv2-2019-09-27.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.SimpleEmailV2.Model
{
///
/// An object that contains information about the DKIM authentication status for an email
/// identity.
///
///
///
/// Amazon SES determines the authentication status by searching for specific records
/// in the DNS configuration for the domain. If you used Easy
/// DKIM to set up DKIM authentication, Amazon SES tries to find three unique CNAME
/// records in the DNS configuration for your domain. If you provided a public key to
/// perform DKIM authentication, Amazon SES tries to find a TXT record that uses the selector
/// that you specified. The value of the TXT record must be a public key that's paired
/// with the private key that you specified in the process of creating the identity
///
///
public partial class DkimAttributes
{
private DkimSigningKeyLength _currentSigningKeyLength;
private DateTime? _lastKeyGenerationTimestamp;
private DkimSigningKeyLength _nextSigningKeyLength;
private DkimSigningAttributesOrigin _signingAttributesOrigin;
private bool? _signingEnabled;
private DkimStatus _status;
private List _tokens = new List();
///
/// Gets and sets the property CurrentSigningKeyLength.
///
/// [Easy DKIM] The key length of the DKIM key pair in use.
///
///
public DkimSigningKeyLength CurrentSigningKeyLength
{
get { return this._currentSigningKeyLength; }
set { this._currentSigningKeyLength = value; }
}
// Check to see if CurrentSigningKeyLength property is set
internal bool IsSetCurrentSigningKeyLength()
{
return this._currentSigningKeyLength != null;
}
///
/// Gets and sets the property LastKeyGenerationTimestamp.
///
/// [Easy DKIM] The last time a key pair was generated for this identity.
///
///
public DateTime LastKeyGenerationTimestamp
{
get { return this._lastKeyGenerationTimestamp.GetValueOrDefault(); }
set { this._lastKeyGenerationTimestamp = value; }
}
// Check to see if LastKeyGenerationTimestamp property is set
internal bool IsSetLastKeyGenerationTimestamp()
{
return this._lastKeyGenerationTimestamp.HasValue;
}
///
/// Gets and sets the property NextSigningKeyLength.
///
/// [Easy DKIM] The key length of the future DKIM key pair to be generated. This can be
/// changed at most once per day.
///
///
public DkimSigningKeyLength NextSigningKeyLength
{
get { return this._nextSigningKeyLength; }
set { this._nextSigningKeyLength = value; }
}
// Check to see if NextSigningKeyLength property is set
internal bool IsSetNextSigningKeyLength()
{
return this._nextSigningKeyLength != null;
}
///
/// Gets and sets the property SigningAttributesOrigin.
///
/// A string that indicates how DKIM was configured for the identity. These are the possible
/// values:
///
/// -
///
///
AWS_SES
– Indicates that DKIM was configured for the identity by using
/// Easy
/// DKIM.
///
/// -
///
///
EXTERNAL
– Indicates that DKIM was configured for the identity by using
/// Bring Your Own DKIM (BYODKIM).
///
///
///
public DkimSigningAttributesOrigin SigningAttributesOrigin
{
get { return this._signingAttributesOrigin; }
set { this._signingAttributesOrigin = value; }
}
// Check to see if SigningAttributesOrigin property is set
internal bool IsSetSigningAttributesOrigin()
{
return this._signingAttributesOrigin != null;
}
///
/// Gets and sets the property SigningEnabled.
///
/// If the value is true
, then the messages that you send from the identity
/// are signed using DKIM. If the value is false
, then the messages that
/// you send from the identity aren't DKIM-signed.
///
///
public bool SigningEnabled
{
get { return this._signingEnabled.GetValueOrDefault(); }
set { this._signingEnabled = value; }
}
// Check to see if SigningEnabled property is set
internal bool IsSetSigningEnabled()
{
return this._signingEnabled.HasValue;
}
///
/// Gets and sets the property Status.
///
/// Describes whether or not Amazon SES has successfully located the DKIM records in the
/// DNS records for the domain. The status can be one of the following:
///
/// -
///
///
PENDING
– The verification process was initiated, but Amazon SES hasn't
/// yet detected the DKIM records in the DNS configuration for the domain.
///
/// -
///
///
SUCCESS
– The verification process completed successfully.
///
/// -
///
///
FAILED
– The verification process failed. This typically occurs when
/// Amazon SES fails to find the DKIM records in the DNS configuration of the domain.
///
/// -
///
///
TEMPORARY_FAILURE
– A temporary issue is preventing Amazon SES from
/// determining the DKIM authentication status of the domain.
///
/// -
///
///
NOT_STARTED
– The DKIM verification process hasn't been initiated for
/// the domain.
///
///
///
public DkimStatus Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property Tokens.
///
/// If you used Easy
/// DKIM to configure DKIM authentication for the domain, then this object contains
/// a set of unique strings that you use to create a set of CNAME records that you add
/// to the DNS configuration for your domain. When Amazon SES detects these records in
/// the DNS configuration for your domain, the DKIM authentication process is complete.
///
///
///
/// If you configured DKIM authentication for the domain by providing your own public-private
/// key pair, then this object contains the selector for the public key.
///
///
///
/// Regardless of the DKIM authentication method you use, Amazon SES searches for the
/// appropriate records in the DNS configuration of the domain for up to 72 hours.
///
///
public List Tokens
{
get { return this._tokens; }
set { this._tokens = value; }
}
// Check to see if Tokens property is set
internal bool IsSetTokens()
{
return this._tokens != null && this._tokens.Count > 0;
}
}
}