/* * Copyright 2010-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.iot.model; import java.io.Serializable; /** *

* Filters out specific findings of a Device Defender audit. *

*/ public class AuditSuppression implements Serializable { /** *

* An audit check name. Checks must be enabled for your account. (Use * DescribeAccountAuditConfiguration to see the list of all * checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which checks are * enabled.) *

*/ private String checkName; /** *

* Information that identifies the noncompliant resource. *

*/ private ResourceIdentifier resourceIdentifier; /** *

* The expiration date (epoch timestamp in seconds) that you want the * suppression to adhere to. *

*/ private java.util.Date expirationDate; /** *

* Indicates whether a suppression should exist indefinitely or not. *

*/ private Boolean suppressIndefinitely; /** *

* The description of the audit suppression. *

*

* Constraints:
* Length: - 1000
* Pattern: [\p{Graph}\x20]*
*/ private String description; /** *

* An audit check name. Checks must be enabled for your account. (Use * DescribeAccountAuditConfiguration to see the list of all * checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which checks are * enabled.) *

* * @return

* An audit check name. Checks must be enabled for your account. * (Use DescribeAccountAuditConfiguration to see the * list of all checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which * checks are enabled.) *

*/ public String getCheckName() { return checkName; } /** *

* An audit check name. Checks must be enabled for your account. (Use * DescribeAccountAuditConfiguration to see the list of all * checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which checks are * enabled.) *

* * @param checkName

* An audit check name. Checks must be enabled for your account. * (Use DescribeAccountAuditConfiguration to see the * list of all checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which * checks are enabled.) *

*/ public void setCheckName(String checkName) { this.checkName = checkName; } /** *

* An audit check name. Checks must be enabled for your account. (Use * DescribeAccountAuditConfiguration to see the list of all * checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which checks are * enabled.) *

*

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

* An audit check name. Checks must be enabled for your account. * (Use DescribeAccountAuditConfiguration to see the * list of all checks, including those that are enabled or use * UpdateAccountAuditConfiguration to select which * checks are enabled.) *

* @return A reference to this updated object so that method calls can be * chained together. */ public AuditSuppression withCheckName(String checkName) { this.checkName = checkName; return this; } /** *

* Information that identifies the noncompliant resource. *

* * @return

* Information that identifies the noncompliant resource. *

*/ public ResourceIdentifier getResourceIdentifier() { return resourceIdentifier; } /** *

* Information that identifies the noncompliant resource. *

* * @param resourceIdentifier

* Information that identifies the noncompliant resource. *

*/ public void setResourceIdentifier(ResourceIdentifier resourceIdentifier) { this.resourceIdentifier = resourceIdentifier; } /** *

* Information that identifies the noncompliant resource. *

*

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

* Information that identifies the noncompliant resource. *

* @return A reference to this updated object so that method calls can be * chained together. */ public AuditSuppression withResourceIdentifier(ResourceIdentifier resourceIdentifier) { this.resourceIdentifier = resourceIdentifier; return this; } /** *

* The expiration date (epoch timestamp in seconds) that you want the * suppression to adhere to. *

* * @return

* The expiration date (epoch timestamp in seconds) that you want * the suppression to adhere to. *

*/ public java.util.Date getExpirationDate() { return expirationDate; } /** *

* The expiration date (epoch timestamp in seconds) that you want the * suppression to adhere to. *

* * @param expirationDate

* The expiration date (epoch timestamp in seconds) that you want * the suppression to adhere to. *

*/ public void setExpirationDate(java.util.Date expirationDate) { this.expirationDate = expirationDate; } /** *

* The expiration date (epoch timestamp in seconds) that you want the * suppression to adhere to. *

*

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

* The expiration date (epoch timestamp in seconds) that you want * the suppression to adhere to. *

* @return A reference to this updated object so that method calls can be * chained together. */ public AuditSuppression withExpirationDate(java.util.Date expirationDate) { this.expirationDate = expirationDate; return this; } /** *

* Indicates whether a suppression should exist indefinitely or not. *

* * @return

* Indicates whether a suppression should exist indefinitely or not. *

*/ public Boolean isSuppressIndefinitely() { return suppressIndefinitely; } /** *

* Indicates whether a suppression should exist indefinitely or not. *

* * @return

* Indicates whether a suppression should exist indefinitely or not. *

*/ public Boolean getSuppressIndefinitely() { return suppressIndefinitely; } /** *

* Indicates whether a suppression should exist indefinitely or not. *

* * @param suppressIndefinitely

* Indicates whether a suppression should exist indefinitely or * not. *

*/ public void setSuppressIndefinitely(Boolean suppressIndefinitely) { this.suppressIndefinitely = suppressIndefinitely; } /** *

* Indicates whether a suppression should exist indefinitely or not. *

*

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

* Indicates whether a suppression should exist indefinitely or * not. *

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

* The description of the audit suppression. *

*

* Constraints:
* Length: - 1000
* Pattern: [\p{Graph}\x20]*
* * @return

* The description of the audit suppression. *

*/ public String getDescription() { return description; } /** *

* The description of the audit suppression. *

*

* Constraints:
* Length: - 1000
* Pattern: [\p{Graph}\x20]*
* * @param description

* The description of the audit suppression. *

*/ public void setDescription(String description) { this.description = description; } /** *

* The description of the audit suppression. *

*

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

* Constraints:
* Length: - 1000
* Pattern: [\p{Graph}\x20]*
* * @param description

* The description of the audit suppression. *

* @return A reference to this updated object so that method calls can be * chained together. */ public AuditSuppression withDescription(String description) { this.description = description; 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 (getCheckName() != null) sb.append("checkName: " + getCheckName() + ","); if (getResourceIdentifier() != null) sb.append("resourceIdentifier: " + getResourceIdentifier() + ","); if (getExpirationDate() != null) sb.append("expirationDate: " + getExpirationDate() + ","); if (getSuppressIndefinitely() != null) sb.append("suppressIndefinitely: " + getSuppressIndefinitely() + ","); if (getDescription() != null) sb.append("description: " + getDescription()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getCheckName() == null) ? 0 : getCheckName().hashCode()); hashCode = prime * hashCode + ((getResourceIdentifier() == null) ? 0 : getResourceIdentifier().hashCode()); hashCode = prime * hashCode + ((getExpirationDate() == null) ? 0 : getExpirationDate().hashCode()); hashCode = prime * hashCode + ((getSuppressIndefinitely() == null) ? 0 : getSuppressIndefinitely().hashCode()); hashCode = prime * hashCode + ((getDescription() == null) ? 0 : getDescription().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof AuditSuppression == false) return false; AuditSuppression other = (AuditSuppression) obj; if (other.getCheckName() == null ^ this.getCheckName() == null) return false; if (other.getCheckName() != null && other.getCheckName().equals(this.getCheckName()) == false) return false; if (other.getResourceIdentifier() == null ^ this.getResourceIdentifier() == null) return false; if (other.getResourceIdentifier() != null && other.getResourceIdentifier().equals(this.getResourceIdentifier()) == false) return false; if (other.getExpirationDate() == null ^ this.getExpirationDate() == null) return false; if (other.getExpirationDate() != null && other.getExpirationDate().equals(this.getExpirationDate()) == false) return false; if (other.getSuppressIndefinitely() == null ^ this.getSuppressIndefinitely() == null) return false; if (other.getSuppressIndefinitely() != null && other.getSuppressIndefinitely().equals(this.getSuppressIndefinitely()) == false) return false; if (other.getDescription() == null ^ this.getDescription() == null) return false; if (other.getDescription() != null && other.getDescription().equals(this.getDescription()) == false) return false; return true; } }