/* * Copyright 2010-2020 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. */ package com.amazonaws.services.simpleemail.model; import java.io.Serializable; /** *

* Represents the DKIM attributes of a verified email address or a domain. *

*/ public class IdentityDkimAttributes implements Serializable { /** *

* Is true if DKIM signing is enabled for email sent from the identity. It's * false otherwise. The default value is true. *

*/ private Boolean dkimEnabled; /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted */ private String dkimVerificationStatus; /** *

* A set of character strings that represent the domain's identity. Using * these tokens, you need to create DNS CNAME records that point to DKIM * public keys that are hosted by Amazon SES. Amazon Web Services eventually * detects that you've updated your DNS records. This detection process * might take up to 72 hours. After successful detection, Amazon SES is able * to DKIM-sign email originating from that domain. (This only applies to * domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM tokens, see * the Amazon SES Developer Guide. *

*/ private java.util.List dkimTokens = new java.util.ArrayList(); /** *

* Is true if DKIM signing is enabled for email sent from the identity. It's * false otherwise. The default value is true. *

* * @return

* Is true if DKIM signing is enabled for email sent from the * identity. It's false otherwise. The default value is true. *

*/ public Boolean isDkimEnabled() { return dkimEnabled; } /** *

* Is true if DKIM signing is enabled for email sent from the identity. It's * false otherwise. The default value is true. *

* * @return

* Is true if DKIM signing is enabled for email sent from the * identity. It's false otherwise. The default value is true. *

*/ public Boolean getDkimEnabled() { return dkimEnabled; } /** *

* Is true if DKIM signing is enabled for email sent from the identity. It's * false otherwise. The default value is true. *

* * @param dkimEnabled

* Is true if DKIM signing is enabled for email sent from the * identity. It's false otherwise. The default value is true. *

*/ public void setDkimEnabled(Boolean dkimEnabled) { this.dkimEnabled = dkimEnabled; } /** *

* Is true if DKIM signing is enabled for email sent from the identity. It's * false otherwise. The default value is true. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param dkimEnabled

* Is true if DKIM signing is enabled for email sent from the * identity. It's false otherwise. The default value is true. *

* @return A reference to this updated object so that method calls can be * chained together. */ public IdentityDkimAttributes withDkimEnabled(Boolean dkimEnabled) { this.dkimEnabled = dkimEnabled; return this; } /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted * * @return

* Describes whether Amazon SES has successfully verified the DKIM * DNS records (tokens) published in the domain name's DNS. (This * only applies to domain identities, not email address identities.) *

* @see VerificationStatus */ public String getDkimVerificationStatus() { return dkimVerificationStatus; } /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted * * @param dkimVerificationStatus

* Describes whether Amazon SES has successfully verified the * DKIM DNS records (tokens) published in the domain name's DNS. * (This only applies to domain identities, not email address * identities.) *

* @see VerificationStatus */ public void setDkimVerificationStatus(String dkimVerificationStatus) { this.dkimVerificationStatus = dkimVerificationStatus; } /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Returns a reference to this object so that method calls can be chained * together. *

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted * * @param dkimVerificationStatus

* Describes whether Amazon SES has successfully verified the * DKIM DNS records (tokens) published in the domain name's DNS. * (This only applies to domain identities, not email address * identities.) *

* @return A reference to this updated object so that method calls can be * chained together. * @see VerificationStatus */ public IdentityDkimAttributes withDkimVerificationStatus(String dkimVerificationStatus) { this.dkimVerificationStatus = dkimVerificationStatus; return this; } /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted * * @param dkimVerificationStatus

* Describes whether Amazon SES has successfully verified the * DKIM DNS records (tokens) published in the domain name's DNS. * (This only applies to domain identities, not email address * identities.) *

* @see VerificationStatus */ public void setDkimVerificationStatus(VerificationStatus dkimVerificationStatus) { this.dkimVerificationStatus = dkimVerificationStatus.toString(); } /** *

* Describes whether Amazon SES has successfully verified the DKIM DNS * records (tokens) published in the domain name's DNS. (This only applies * to domain identities, not email address identities.) *

*

* Returns a reference to this object so that method calls can be chained * together. *

* Constraints:
* Allowed Values: Pending, Success, Failed, TemporaryFailure, * NotStarted * * @param dkimVerificationStatus

* Describes whether Amazon SES has successfully verified the * DKIM DNS records (tokens) published in the domain name's DNS. * (This only applies to domain identities, not email address * identities.) *

* @return A reference to this updated object so that method calls can be * chained together. * @see VerificationStatus */ public IdentityDkimAttributes withDkimVerificationStatus( VerificationStatus dkimVerificationStatus) { this.dkimVerificationStatus = dkimVerificationStatus.toString(); return this; } /** *

* A set of character strings that represent the domain's identity. Using * these tokens, you need to create DNS CNAME records that point to DKIM * public keys that are hosted by Amazon SES. Amazon Web Services eventually * detects that you've updated your DNS records. This detection process * might take up to 72 hours. After successful detection, Amazon SES is able * to DKIM-sign email originating from that domain. (This only applies to * domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM tokens, see * the Amazon SES Developer Guide. *

* * @return

* A set of character strings that represent the domain's identity. * Using these tokens, you need to create DNS CNAME records that * point to DKIM public keys that are hosted by Amazon SES. Amazon * Web Services eventually detects that you've updated your DNS * records. This detection process might take up to 72 hours. After * successful detection, Amazon SES is able to DKIM-sign email * originating from that domain. (This only applies to domain * identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM * tokens, see the Amazon SES Developer Guide. *

*/ public java.util.List getDkimTokens() { return dkimTokens; } /** *

* A set of character strings that represent the domain's identity. Using * these tokens, you need to create DNS CNAME records that point to DKIM * public keys that are hosted by Amazon SES. Amazon Web Services eventually * detects that you've updated your DNS records. This detection process * might take up to 72 hours. After successful detection, Amazon SES is able * to DKIM-sign email originating from that domain. (This only applies to * domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM tokens, see * the Amazon SES Developer Guide. *

* * @param dkimTokens

* A set of character strings that represent the domain's * identity. Using these tokens, you need to create DNS CNAME * records that point to DKIM public keys that are hosted by * Amazon SES. Amazon Web Services eventually detects that you've * updated your DNS records. This detection process might take up * to 72 hours. After successful detection, Amazon SES is able to * DKIM-sign email originating from that domain. (This only * applies to domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM * tokens, see the Amazon SES Developer Guide. *

*/ public void setDkimTokens(java.util.Collection dkimTokens) { if (dkimTokens == null) { this.dkimTokens = null; return; } this.dkimTokens = new java.util.ArrayList(dkimTokens); } /** *

* A set of character strings that represent the domain's identity. Using * these tokens, you need to create DNS CNAME records that point to DKIM * public keys that are hosted by Amazon SES. Amazon Web Services eventually * detects that you've updated your DNS records. This detection process * might take up to 72 hours. After successful detection, Amazon SES is able * to DKIM-sign email originating from that domain. (This only applies to * domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM tokens, see * the Amazon SES Developer Guide. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param dkimTokens

* A set of character strings that represent the domain's * identity. Using these tokens, you need to create DNS CNAME * records that point to DKIM public keys that are hosted by * Amazon SES. Amazon Web Services eventually detects that you've * updated your DNS records. This detection process might take up * to 72 hours. After successful detection, Amazon SES is able to * DKIM-sign email originating from that domain. (This only * applies to domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM * tokens, see the Amazon SES Developer Guide. *

* @return A reference to this updated object so that method calls can be * chained together. */ public IdentityDkimAttributes withDkimTokens(String... dkimTokens) { if (getDkimTokens() == null) { this.dkimTokens = new java.util.ArrayList(dkimTokens.length); } for (String value : dkimTokens) { this.dkimTokens.add(value); } return this; } /** *

* A set of character strings that represent the domain's identity. Using * these tokens, you need to create DNS CNAME records that point to DKIM * public keys that are hosted by Amazon SES. Amazon Web Services eventually * detects that you've updated your DNS records. This detection process * might take up to 72 hours. After successful detection, Amazon SES is able * to DKIM-sign email originating from that domain. (This only applies to * domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM tokens, see * the Amazon SES Developer Guide. *

*

* Returns a reference to this object so that method calls can be chained * together. * * @param dkimTokens

* A set of character strings that represent the domain's * identity. Using these tokens, you need to create DNS CNAME * records that point to DKIM public keys that are hosted by * Amazon SES. Amazon Web Services eventually detects that you've * updated your DNS records. This detection process might take up * to 72 hours. After successful detection, Amazon SES is able to * DKIM-sign email originating from that domain. (This only * applies to domain identities, not email address identities.) *

*

* For more information about creating DNS records using DKIM * tokens, see the Amazon SES Developer Guide. *

* @return A reference to this updated object so that method calls can be * chained together. */ public IdentityDkimAttributes withDkimTokens(java.util.Collection dkimTokens) { setDkimTokens(dkimTokens); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getDkimEnabled() != null) sb.append("DkimEnabled: " + getDkimEnabled() + ","); if (getDkimVerificationStatus() != null) sb.append("DkimVerificationStatus: " + getDkimVerificationStatus() + ","); if (getDkimTokens() != null) sb.append("DkimTokens: " + getDkimTokens()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDkimEnabled() == null) ? 0 : getDkimEnabled().hashCode()); hashCode = prime * hashCode + ((getDkimVerificationStatus() == null) ? 0 : getDkimVerificationStatus() .hashCode()); hashCode = prime * hashCode + ((getDkimTokens() == null) ? 0 : getDkimTokens().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof IdentityDkimAttributes == false) return false; IdentityDkimAttributes other = (IdentityDkimAttributes) obj; if (other.getDkimEnabled() == null ^ this.getDkimEnabled() == null) return false; if (other.getDkimEnabled() != null && other.getDkimEnabled().equals(this.getDkimEnabled()) == false) return false; if (other.getDkimVerificationStatus() == null ^ this.getDkimVerificationStatus() == null) return false; if (other.getDkimVerificationStatus() != null && other.getDkimVerificationStatus().equals(this.getDkimVerificationStatus()) == false) return false; if (other.getDkimTokens() == null ^ this.getDkimTokens() == null) return false; if (other.getDkimTokens() != null && other.getDkimTokens().equals(this.getDkimTokens()) == false) return false; return true; } }