/* * Copyright 2018-2023 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.auditmanager.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class UpdateSettingsRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. *
*/ private String snsTopic; /** ** The default S3 destination bucket for storing assessment reports. *
*/ private AssessmentReportsDestination defaultAssessmentReportsDestination; /** ** A list of the default audit owners. *
*/ private java.util.List* The KMS key details. *
*/ private String kmsKey; /** ** Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence * finder. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to * query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only * alternative is to deregister * and then re-register * Audit Manager. *
** The deregistration policy for your Audit Manager data. You can use this attribute to determine how your data is * handled when you deregister Audit Manager. *
*/ private DeregistrationPolicy deregistrationPolicy; /** ** The default S3 destination bucket for storing evidence finder exports. *
*/ private DefaultExportDestination defaultExportDestination; /** ** The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. *
* * @param snsTopic * The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. */ public void setSnsTopic(String snsTopic) { this.snsTopic = snsTopic; } /** ** The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. *
* * @return The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. */ public String getSnsTopic() { return this.snsTopic; } /** ** The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. *
* * @param snsTopic * The Amazon Simple Notification Service (Amazon SNS) topic that Audit Manager sends notifications to. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withSnsTopic(String snsTopic) { setSnsTopic(snsTopic); return this; } /** ** The default S3 destination bucket for storing assessment reports. *
* * @param defaultAssessmentReportsDestination * The default S3 destination bucket for storing assessment reports. */ public void setDefaultAssessmentReportsDestination(AssessmentReportsDestination defaultAssessmentReportsDestination) { this.defaultAssessmentReportsDestination = defaultAssessmentReportsDestination; } /** ** The default S3 destination bucket for storing assessment reports. *
* * @return The default S3 destination bucket for storing assessment reports. */ public AssessmentReportsDestination getDefaultAssessmentReportsDestination() { return this.defaultAssessmentReportsDestination; } /** ** The default S3 destination bucket for storing assessment reports. *
* * @param defaultAssessmentReportsDestination * The default S3 destination bucket for storing assessment reports. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withDefaultAssessmentReportsDestination(AssessmentReportsDestination defaultAssessmentReportsDestination) { setDefaultAssessmentReportsDestination(defaultAssessmentReportsDestination); return this; } /** ** A list of the default audit owners. *
* * @return A list of the default audit owners. */ public java.util.List* A list of the default audit owners. *
* * @param defaultProcessOwners * A list of the default audit owners. */ public void setDefaultProcessOwners(java.util.Collection* A list of the default audit owners. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setDefaultProcessOwners(java.util.Collection)} or {@link #withDefaultProcessOwners(java.util.Collection)} * if you want to override the existing values. *
* * @param defaultProcessOwners * A list of the default audit owners. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withDefaultProcessOwners(Role... defaultProcessOwners) { if (this.defaultProcessOwners == null) { setDefaultProcessOwners(new java.util.ArrayList* A list of the default audit owners. *
* * @param defaultProcessOwners * A list of the default audit owners. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withDefaultProcessOwners(java.util.Collection* The KMS key details. *
* * @param kmsKey * The KMS key details. */ public void setKmsKey(String kmsKey) { this.kmsKey = kmsKey; } /** ** The KMS key details. *
* * @return The KMS key details. */ public String getKmsKey() { return this.kmsKey; } /** ** The KMS key details. *
* * @param kmsKey * The KMS key details. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withKmsKey(String kmsKey) { setKmsKey(kmsKey); return this; } /** ** Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence * finder. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to * query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only * alternative is to deregister * and then re-register * Audit Manager. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s * used to query your evidence data. As a result, you can’t re-enable evidence finder and use the feature * again. Your only alternative is to deregister and then re-register Audit Manager. *
*/ public void setEvidenceFinderEnabled(Boolean evidenceFinderEnabled) { this.evidenceFinderEnabled = evidenceFinderEnabled; } /** ** Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence * finder. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to * query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only * alternative is to deregister * and then re-register * Audit Manager. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s * used to query your evidence data. As a result, you can’t re-enable evidence finder and use the feature * again. Your only alternative is to deregister and then re-register Audit Manager. *
*/ public Boolean getEvidenceFinderEnabled() { return this.evidenceFinderEnabled; } /** ** Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence * finder. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to * query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only * alternative is to deregister * and then re-register * Audit Manager. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s * used to query your evidence data. As a result, you can’t re-enable evidence finder and use the feature * again. Your only alternative is to deregister and then re-register Audit Manager. *
* @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withEvidenceFinderEnabled(Boolean evidenceFinderEnabled) { setEvidenceFinderEnabled(evidenceFinderEnabled); return this; } /** ** Specifies whether the evidence finder feature is enabled. Change this attribute to enable or disable evidence * finder. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s used to * query your evidence data. As a result, you can’t re-enable evidence finder and use the feature again. Your only * alternative is to deregister * and then re-register * Audit Manager. *
** When you use this attribute to disable evidence finder, Audit Manager deletes the event data store that’s * used to query your evidence data. As a result, you can’t re-enable evidence finder and use the feature * again. Your only alternative is to deregister and then re-register Audit Manager. *
*/ public Boolean isEvidenceFinderEnabled() { return this.evidenceFinderEnabled; } /** ** The deregistration policy for your Audit Manager data. You can use this attribute to determine how your data is * handled when you deregister Audit Manager. *
* * @param deregistrationPolicy * The deregistration policy for your Audit Manager data. You can use this attribute to determine how your * data is handled when you deregister Audit Manager. */ public void setDeregistrationPolicy(DeregistrationPolicy deregistrationPolicy) { this.deregistrationPolicy = deregistrationPolicy; } /** ** The deregistration policy for your Audit Manager data. You can use this attribute to determine how your data is * handled when you deregister Audit Manager. *
* * @return The deregistration policy for your Audit Manager data. You can use this attribute to determine how your * data is handled when you deregister Audit Manager. */ public DeregistrationPolicy getDeregistrationPolicy() { return this.deregistrationPolicy; } /** ** The deregistration policy for your Audit Manager data. You can use this attribute to determine how your data is * handled when you deregister Audit Manager. *
* * @param deregistrationPolicy * The deregistration policy for your Audit Manager data. You can use this attribute to determine how your * data is handled when you deregister Audit Manager. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withDeregistrationPolicy(DeregistrationPolicy deregistrationPolicy) { setDeregistrationPolicy(deregistrationPolicy); return this; } /** ** The default S3 destination bucket for storing evidence finder exports. *
* * @param defaultExportDestination * The default S3 destination bucket for storing evidence finder exports. */ public void setDefaultExportDestination(DefaultExportDestination defaultExportDestination) { this.defaultExportDestination = defaultExportDestination; } /** ** The default S3 destination bucket for storing evidence finder exports. *
* * @return The default S3 destination bucket for storing evidence finder exports. */ public DefaultExportDestination getDefaultExportDestination() { return this.defaultExportDestination; } /** ** The default S3 destination bucket for storing evidence finder exports. *
* * @param defaultExportDestination * The default S3 destination bucket for storing evidence finder exports. * @return Returns a reference to this object so that method calls can be chained together. */ public UpdateSettingsRequest withDefaultExportDestination(DefaultExportDestination defaultExportDestination) { setDefaultExportDestination(defaultExportDestination); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getSnsTopic() != null) sb.append("SnsTopic: ").append(getSnsTopic()).append(","); if (getDefaultAssessmentReportsDestination() != null) sb.append("DefaultAssessmentReportsDestination: ").append(getDefaultAssessmentReportsDestination()).append(","); if (getDefaultProcessOwners() != null) sb.append("DefaultProcessOwners: ").append(getDefaultProcessOwners()).append(","); if (getKmsKey() != null) sb.append("KmsKey: ").append(getKmsKey()).append(","); if (getEvidenceFinderEnabled() != null) sb.append("EvidenceFinderEnabled: ").append(getEvidenceFinderEnabled()).append(","); if (getDeregistrationPolicy() != null) sb.append("DeregistrationPolicy: ").append(getDeregistrationPolicy()).append(","); if (getDefaultExportDestination() != null) sb.append("DefaultExportDestination: ").append(getDefaultExportDestination()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof UpdateSettingsRequest == false) return false; UpdateSettingsRequest other = (UpdateSettingsRequest) obj; if (other.getSnsTopic() == null ^ this.getSnsTopic() == null) return false; if (other.getSnsTopic() != null && other.getSnsTopic().equals(this.getSnsTopic()) == false) return false; if (other.getDefaultAssessmentReportsDestination() == null ^ this.getDefaultAssessmentReportsDestination() == null) return false; if (other.getDefaultAssessmentReportsDestination() != null && other.getDefaultAssessmentReportsDestination().equals(this.getDefaultAssessmentReportsDestination()) == false) return false; if (other.getDefaultProcessOwners() == null ^ this.getDefaultProcessOwners() == null) return false; if (other.getDefaultProcessOwners() != null && other.getDefaultProcessOwners().equals(this.getDefaultProcessOwners()) == false) return false; if (other.getKmsKey() == null ^ this.getKmsKey() == null) return false; if (other.getKmsKey() != null && other.getKmsKey().equals(this.getKmsKey()) == false) return false; if (other.getEvidenceFinderEnabled() == null ^ this.getEvidenceFinderEnabled() == null) return false; if (other.getEvidenceFinderEnabled() != null && other.getEvidenceFinderEnabled().equals(this.getEvidenceFinderEnabled()) == false) return false; if (other.getDeregistrationPolicy() == null ^ this.getDeregistrationPolicy() == null) return false; if (other.getDeregistrationPolicy() != null && other.getDeregistrationPolicy().equals(this.getDeregistrationPolicy()) == false) return false; if (other.getDefaultExportDestination() == null ^ this.getDefaultExportDestination() == null) return false; if (other.getDefaultExportDestination() != null && other.getDefaultExportDestination().equals(this.getDefaultExportDestination()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getSnsTopic() == null) ? 0 : getSnsTopic().hashCode()); hashCode = prime * hashCode + ((getDefaultAssessmentReportsDestination() == null) ? 0 : getDefaultAssessmentReportsDestination().hashCode()); hashCode = prime * hashCode + ((getDefaultProcessOwners() == null) ? 0 : getDefaultProcessOwners().hashCode()); hashCode = prime * hashCode + ((getKmsKey() == null) ? 0 : getKmsKey().hashCode()); hashCode = prime * hashCode + ((getEvidenceFinderEnabled() == null) ? 0 : getEvidenceFinderEnabled().hashCode()); hashCode = prime * hashCode + ((getDeregistrationPolicy() == null) ? 0 : getDeregistrationPolicy().hashCode()); hashCode = prime * hashCode + ((getDefaultExportDestination() == null) ? 0 : getDefaultExportDestination().hashCode()); return hashCode; } @Override public UpdateSettingsRequest clone() { return (UpdateSettingsRequest) super.clone(); } }