/* * 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; /** *

* Information about the resource that was noncompliant with the audit check. *

*/ public class NonCompliantResource implements Serializable { /** *

* The type of the noncompliant resource. *

*

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE */ private String resourceType; /** *

* Information that identifies the noncompliant resource. *

*/ private ResourceIdentifier resourceIdentifier; /** *

* Other information about the noncompliant resource. *

*/ private java.util.Map additionalInfo; /** *

* The type of the noncompliant resource. *

*

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE * * @return

* The type of the noncompliant resource. *

* @see ResourceType */ public String getResourceType() { return resourceType; } /** *

* The type of the noncompliant resource. *

*

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE * * @param resourceType

* The type of the noncompliant resource. *

* @see ResourceType */ public void setResourceType(String resourceType) { this.resourceType = resourceType; } /** *

* The type of the noncompliant resource. *

*

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

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE * * @param resourceType

* The type of the noncompliant resource. *

* @return A reference to this updated object so that method calls can be * chained together. * @see ResourceType */ public NonCompliantResource withResourceType(String resourceType) { this.resourceType = resourceType; return this; } /** *

* The type of the noncompliant resource. *

*

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE * * @param resourceType

* The type of the noncompliant resource. *

* @see ResourceType */ public void setResourceType(ResourceType resourceType) { this.resourceType = resourceType.toString(); } /** *

* The type of the noncompliant resource. *

*

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

* Constraints:
* Allowed Values: DEVICE_CERTIFICATE, CA_CERTIFICATE, IOT_POLICY, * COGNITO_IDENTITY_POOL, CLIENT_ID, ACCOUNT_SETTINGS, ROLE_ALIAS, IAM_ROLE, * ISSUER_CERTIFICATE * * @param resourceType

* The type of the noncompliant resource. *

* @return A reference to this updated object so that method calls can be * chained together. * @see ResourceType */ public NonCompliantResource withResourceType(ResourceType resourceType) { this.resourceType = resourceType.toString(); 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 NonCompliantResource withResourceIdentifier(ResourceIdentifier resourceIdentifier) { this.resourceIdentifier = resourceIdentifier; return this; } /** *

* Other information about the noncompliant resource. *

* * @return

* Other information about the noncompliant resource. *

*/ public java.util.Map getAdditionalInfo() { return additionalInfo; } /** *

* Other information about the noncompliant resource. *

* * @param additionalInfo

* Other information about the noncompliant resource. *

*/ public void setAdditionalInfo(java.util.Map additionalInfo) { this.additionalInfo = additionalInfo; } /** *

* Other information about the noncompliant resource. *

*

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

* Other information about the noncompliant resource. *

* @return A reference to this updated object so that method calls can be * chained together. */ public NonCompliantResource withAdditionalInfo(java.util.Map additionalInfo) { this.additionalInfo = additionalInfo; return this; } /** *

* Other information about the noncompliant resource. *

*

* The method adds a new key-value pair into additionalInfo parameter, and * returns a reference to this object so that method calls can be chained * together. * * @param key The key of the entry to be added into additionalInfo. * @param value The corresponding value of the entry to be added into * additionalInfo. * @return A reference to this updated object so that method calls can be * chained together. */ public NonCompliantResource addadditionalInfoEntry(String key, String value) { if (null == this.additionalInfo) { this.additionalInfo = new java.util.HashMap(); } if (this.additionalInfo.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.additionalInfo.put(key, value); return this; } /** * Removes all the entries added into additionalInfo. *

* Returns a reference to this object so that method calls can be chained * together. */ public NonCompliantResource clearadditionalInfoEntries() { this.additionalInfo = null; 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 (getResourceType() != null) sb.append("resourceType: " + getResourceType() + ","); if (getResourceIdentifier() != null) sb.append("resourceIdentifier: " + getResourceIdentifier() + ","); if (getAdditionalInfo() != null) sb.append("additionalInfo: " + getAdditionalInfo()); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getResourceType() == null) ? 0 : getResourceType().hashCode()); hashCode = prime * hashCode + ((getResourceIdentifier() == null) ? 0 : getResourceIdentifier().hashCode()); hashCode = prime * hashCode + ((getAdditionalInfo() == null) ? 0 : getAdditionalInfo().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof NonCompliantResource == false) return false; NonCompliantResource other = (NonCompliantResource) obj; if (other.getResourceType() == null ^ this.getResourceType() == null) return false; if (other.getResourceType() != null && other.getResourceType().equals(this.getResourceType()) == 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.getAdditionalInfo() == null ^ this.getAdditionalInfo() == null) return false; if (other.getAdditionalInfo() != null && other.getAdditionalInfo().equals(this.getAdditionalInfo()) == false) return false; return true; } }