/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace IoT { namespace Model { /** *

Information that identifies the noncompliant resource.

See * Also:

AWS * API Reference

*/ class ResourceIdentifier { public: AWS_IOT_API ResourceIdentifier(); AWS_IOT_API ResourceIdentifier(Aws::Utils::Json::JsonView jsonValue); AWS_IOT_API ResourceIdentifier& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_IOT_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The ID of the certificate attached to the resource.

*/ inline const Aws::String& GetDeviceCertificateId() const{ return m_deviceCertificateId; } /** *

The ID of the certificate attached to the resource.

*/ inline bool DeviceCertificateIdHasBeenSet() const { return m_deviceCertificateIdHasBeenSet; } /** *

The ID of the certificate attached to the resource.

*/ inline void SetDeviceCertificateId(const Aws::String& value) { m_deviceCertificateIdHasBeenSet = true; m_deviceCertificateId = value; } /** *

The ID of the certificate attached to the resource.

*/ inline void SetDeviceCertificateId(Aws::String&& value) { m_deviceCertificateIdHasBeenSet = true; m_deviceCertificateId = std::move(value); } /** *

The ID of the certificate attached to the resource.

*/ inline void SetDeviceCertificateId(const char* value) { m_deviceCertificateIdHasBeenSet = true; m_deviceCertificateId.assign(value); } /** *

The ID of the certificate attached to the resource.

*/ inline ResourceIdentifier& WithDeviceCertificateId(const Aws::String& value) { SetDeviceCertificateId(value); return *this;} /** *

The ID of the certificate attached to the resource.

*/ inline ResourceIdentifier& WithDeviceCertificateId(Aws::String&& value) { SetDeviceCertificateId(std::move(value)); return *this;} /** *

The ID of the certificate attached to the resource.

*/ inline ResourceIdentifier& WithDeviceCertificateId(const char* value) { SetDeviceCertificateId(value); return *this;} /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline const Aws::String& GetCaCertificateId() const{ return m_caCertificateId; } /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline bool CaCertificateIdHasBeenSet() const { return m_caCertificateIdHasBeenSet; } /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline void SetCaCertificateId(const Aws::String& value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId = value; } /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline void SetCaCertificateId(Aws::String&& value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId = std::move(value); } /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline void SetCaCertificateId(const char* value) { m_caCertificateIdHasBeenSet = true; m_caCertificateId.assign(value); } /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline ResourceIdentifier& WithCaCertificateId(const Aws::String& value) { SetCaCertificateId(value); return *this;} /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline ResourceIdentifier& WithCaCertificateId(Aws::String&& value) { SetCaCertificateId(std::move(value)); return *this;} /** *

The ID of the CA certificate used to authorize the certificate.

*/ inline ResourceIdentifier& WithCaCertificateId(const char* value) { SetCaCertificateId(value); return *this;} /** *

The ID of the Amazon Cognito identity pool.

*/ inline const Aws::String& GetCognitoIdentityPoolId() const{ return m_cognitoIdentityPoolId; } /** *

The ID of the Amazon Cognito identity pool.

*/ inline bool CognitoIdentityPoolIdHasBeenSet() const { return m_cognitoIdentityPoolIdHasBeenSet; } /** *

The ID of the Amazon Cognito identity pool.

*/ inline void SetCognitoIdentityPoolId(const Aws::String& value) { m_cognitoIdentityPoolIdHasBeenSet = true; m_cognitoIdentityPoolId = value; } /** *

The ID of the Amazon Cognito identity pool.

*/ inline void SetCognitoIdentityPoolId(Aws::String&& value) { m_cognitoIdentityPoolIdHasBeenSet = true; m_cognitoIdentityPoolId = std::move(value); } /** *

The ID of the Amazon Cognito identity pool.

*/ inline void SetCognitoIdentityPoolId(const char* value) { m_cognitoIdentityPoolIdHasBeenSet = true; m_cognitoIdentityPoolId.assign(value); } /** *

The ID of the Amazon Cognito identity pool.

*/ inline ResourceIdentifier& WithCognitoIdentityPoolId(const Aws::String& value) { SetCognitoIdentityPoolId(value); return *this;} /** *

The ID of the Amazon Cognito identity pool.

*/ inline ResourceIdentifier& WithCognitoIdentityPoolId(Aws::String&& value) { SetCognitoIdentityPoolId(std::move(value)); return *this;} /** *

The ID of the Amazon Cognito identity pool.

*/ inline ResourceIdentifier& WithCognitoIdentityPoolId(const char* value) { SetCognitoIdentityPoolId(value); return *this;} /** *

The client ID.

*/ inline const Aws::String& GetClientId() const{ return m_clientId; } /** *

The client ID.

*/ inline bool ClientIdHasBeenSet() const { return m_clientIdHasBeenSet; } /** *

The client ID.

*/ inline void SetClientId(const Aws::String& value) { m_clientIdHasBeenSet = true; m_clientId = value; } /** *

The client ID.

*/ inline void SetClientId(Aws::String&& value) { m_clientIdHasBeenSet = true; m_clientId = std::move(value); } /** *

The client ID.

*/ inline void SetClientId(const char* value) { m_clientIdHasBeenSet = true; m_clientId.assign(value); } /** *

The client ID.

*/ inline ResourceIdentifier& WithClientId(const Aws::String& value) { SetClientId(value); return *this;} /** *

The client ID.

*/ inline ResourceIdentifier& WithClientId(Aws::String&& value) { SetClientId(std::move(value)); return *this;} /** *

The client ID.

*/ inline ResourceIdentifier& WithClientId(const char* value) { SetClientId(value); return *this;} /** *

The version of the policy associated with the resource.

*/ inline const PolicyVersionIdentifier& GetPolicyVersionIdentifier() const{ return m_policyVersionIdentifier; } /** *

The version of the policy associated with the resource.

*/ inline bool PolicyVersionIdentifierHasBeenSet() const { return m_policyVersionIdentifierHasBeenSet; } /** *

The version of the policy associated with the resource.

*/ inline void SetPolicyVersionIdentifier(const PolicyVersionIdentifier& value) { m_policyVersionIdentifierHasBeenSet = true; m_policyVersionIdentifier = value; } /** *

The version of the policy associated with the resource.

*/ inline void SetPolicyVersionIdentifier(PolicyVersionIdentifier&& value) { m_policyVersionIdentifierHasBeenSet = true; m_policyVersionIdentifier = std::move(value); } /** *

The version of the policy associated with the resource.

*/ inline ResourceIdentifier& WithPolicyVersionIdentifier(const PolicyVersionIdentifier& value) { SetPolicyVersionIdentifier(value); return *this;} /** *

The version of the policy associated with the resource.

*/ inline ResourceIdentifier& WithPolicyVersionIdentifier(PolicyVersionIdentifier&& value) { SetPolicyVersionIdentifier(std::move(value)); return *this;} /** *

The account with which the resource is associated.

*/ inline const Aws::String& GetAccount() const{ return m_account; } /** *

The account with which the resource is associated.

*/ inline bool AccountHasBeenSet() const { return m_accountHasBeenSet; } /** *

The account with which the resource is associated.

*/ inline void SetAccount(const Aws::String& value) { m_accountHasBeenSet = true; m_account = value; } /** *

The account with which the resource is associated.

*/ inline void SetAccount(Aws::String&& value) { m_accountHasBeenSet = true; m_account = std::move(value); } /** *

The account with which the resource is associated.

*/ inline void SetAccount(const char* value) { m_accountHasBeenSet = true; m_account.assign(value); } /** *

The account with which the resource is associated.

*/ inline ResourceIdentifier& WithAccount(const Aws::String& value) { SetAccount(value); return *this;} /** *

The account with which the resource is associated.

*/ inline ResourceIdentifier& WithAccount(Aws::String&& value) { SetAccount(std::move(value)); return *this;} /** *

The account with which the resource is associated.

*/ inline ResourceIdentifier& WithAccount(const char* value) { SetAccount(value); return *this;} /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline const Aws::String& GetIamRoleArn() const{ return m_iamRoleArn; } /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline bool IamRoleArnHasBeenSet() const { return m_iamRoleArnHasBeenSet; } /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline void SetIamRoleArn(const Aws::String& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = value; } /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline void SetIamRoleArn(Aws::String&& value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn = std::move(value); } /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline void SetIamRoleArn(const char* value) { m_iamRoleArnHasBeenSet = true; m_iamRoleArn.assign(value); } /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline ResourceIdentifier& WithIamRoleArn(const Aws::String& value) { SetIamRoleArn(value); return *this;} /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline ResourceIdentifier& WithIamRoleArn(Aws::String&& value) { SetIamRoleArn(std::move(value)); return *this;} /** *

The ARN of the IAM role that has overly permissive actions.

*/ inline ResourceIdentifier& WithIamRoleArn(const char* value) { SetIamRoleArn(value); return *this;} /** *

The ARN of the role alias that has overly permissive actions.

*/ inline const Aws::String& GetRoleAliasArn() const{ return m_roleAliasArn; } /** *

The ARN of the role alias that has overly permissive actions.

*/ inline bool RoleAliasArnHasBeenSet() const { return m_roleAliasArnHasBeenSet; } /** *

The ARN of the role alias that has overly permissive actions.

*/ inline void SetRoleAliasArn(const Aws::String& value) { m_roleAliasArnHasBeenSet = true; m_roleAliasArn = value; } /** *

The ARN of the role alias that has overly permissive actions.

*/ inline void SetRoleAliasArn(Aws::String&& value) { m_roleAliasArnHasBeenSet = true; m_roleAliasArn = std::move(value); } /** *

The ARN of the role alias that has overly permissive actions.

*/ inline void SetRoleAliasArn(const char* value) { m_roleAliasArnHasBeenSet = true; m_roleAliasArn.assign(value); } /** *

The ARN of the role alias that has overly permissive actions.

*/ inline ResourceIdentifier& WithRoleAliasArn(const Aws::String& value) { SetRoleAliasArn(value); return *this;} /** *

The ARN of the role alias that has overly permissive actions.

*/ inline ResourceIdentifier& WithRoleAliasArn(Aws::String&& value) { SetRoleAliasArn(std::move(value)); return *this;} /** *

The ARN of the role alias that has overly permissive actions.

*/ inline ResourceIdentifier& WithRoleAliasArn(const char* value) { SetRoleAliasArn(value); return *this;} /** *

The issuer certificate identifier.

*/ inline const IssuerCertificateIdentifier& GetIssuerCertificateIdentifier() const{ return m_issuerCertificateIdentifier; } /** *

The issuer certificate identifier.

*/ inline bool IssuerCertificateIdentifierHasBeenSet() const { return m_issuerCertificateIdentifierHasBeenSet; } /** *

The issuer certificate identifier.

*/ inline void SetIssuerCertificateIdentifier(const IssuerCertificateIdentifier& value) { m_issuerCertificateIdentifierHasBeenSet = true; m_issuerCertificateIdentifier = value; } /** *

The issuer certificate identifier.

*/ inline void SetIssuerCertificateIdentifier(IssuerCertificateIdentifier&& value) { m_issuerCertificateIdentifierHasBeenSet = true; m_issuerCertificateIdentifier = std::move(value); } /** *

The issuer certificate identifier.

*/ inline ResourceIdentifier& WithIssuerCertificateIdentifier(const IssuerCertificateIdentifier& value) { SetIssuerCertificateIdentifier(value); return *this;} /** *

The issuer certificate identifier.

*/ inline ResourceIdentifier& WithIssuerCertificateIdentifier(IssuerCertificateIdentifier&& value) { SetIssuerCertificateIdentifier(std::move(value)); return *this;} /** *

The ARN of the identified device certificate.

*/ inline const Aws::String& GetDeviceCertificateArn() const{ return m_deviceCertificateArn; } /** *

The ARN of the identified device certificate.

*/ inline bool DeviceCertificateArnHasBeenSet() const { return m_deviceCertificateArnHasBeenSet; } /** *

The ARN of the identified device certificate.

*/ inline void SetDeviceCertificateArn(const Aws::String& value) { m_deviceCertificateArnHasBeenSet = true; m_deviceCertificateArn = value; } /** *

The ARN of the identified device certificate.

*/ inline void SetDeviceCertificateArn(Aws::String&& value) { m_deviceCertificateArnHasBeenSet = true; m_deviceCertificateArn = std::move(value); } /** *

The ARN of the identified device certificate.

*/ inline void SetDeviceCertificateArn(const char* value) { m_deviceCertificateArnHasBeenSet = true; m_deviceCertificateArn.assign(value); } /** *

The ARN of the identified device certificate.

*/ inline ResourceIdentifier& WithDeviceCertificateArn(const Aws::String& value) { SetDeviceCertificateArn(value); return *this;} /** *

The ARN of the identified device certificate.

*/ inline ResourceIdentifier& WithDeviceCertificateArn(Aws::String&& value) { SetDeviceCertificateArn(std::move(value)); return *this;} /** *

The ARN of the identified device certificate.

*/ inline ResourceIdentifier& WithDeviceCertificateArn(const char* value) { SetDeviceCertificateArn(value); return *this;} private: Aws::String m_deviceCertificateId; bool m_deviceCertificateIdHasBeenSet = false; Aws::String m_caCertificateId; bool m_caCertificateIdHasBeenSet = false; Aws::String m_cognitoIdentityPoolId; bool m_cognitoIdentityPoolIdHasBeenSet = false; Aws::String m_clientId; bool m_clientIdHasBeenSet = false; PolicyVersionIdentifier m_policyVersionIdentifier; bool m_policyVersionIdentifierHasBeenSet = false; Aws::String m_account; bool m_accountHasBeenSet = false; Aws::String m_iamRoleArn; bool m_iamRoleArnHasBeenSet = false; Aws::String m_roleAliasArn; bool m_roleAliasArnHasBeenSet = false; IssuerCertificateIdentifier m_issuerCertificateIdentifier; bool m_issuerCertificateIdentifierHasBeenSet = false; Aws::String m_deviceCertificateArn; bool m_deviceCertificateArnHasBeenSet = false; }; } // namespace Model } // namespace IoT } // namespace Aws