/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The metadata that's associated with the delegation. See
* Also:
AWS
* API Reference
The unique identifier for the delegation.
*/ inline const Aws::String& GetId() const{ return m_id; } /** *The unique identifier for the delegation.
*/ inline bool IdHasBeenSet() const { return m_idHasBeenSet; } /** *The unique identifier for the delegation.
*/ inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; } /** *The unique identifier for the delegation.
*/ inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); } /** *The unique identifier for the delegation.
*/ inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); } /** *The unique identifier for the delegation.
*/ inline DelegationMetadata& WithId(const Aws::String& value) { SetId(value); return *this;} /** *The unique identifier for the delegation.
*/ inline DelegationMetadata& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;} /** *The unique identifier for the delegation.
*/ inline DelegationMetadata& WithId(const char* value) { SetId(value); return *this;} /** *The name of the associated assessment.
*/ inline const Aws::String& GetAssessmentName() const{ return m_assessmentName; } /** *The name of the associated assessment.
*/ inline bool AssessmentNameHasBeenSet() const { return m_assessmentNameHasBeenSet; } /** *The name of the associated assessment.
*/ inline void SetAssessmentName(const Aws::String& value) { m_assessmentNameHasBeenSet = true; m_assessmentName = value; } /** *The name of the associated assessment.
*/ inline void SetAssessmentName(Aws::String&& value) { m_assessmentNameHasBeenSet = true; m_assessmentName = std::move(value); } /** *The name of the associated assessment.
*/ inline void SetAssessmentName(const char* value) { m_assessmentNameHasBeenSet = true; m_assessmentName.assign(value); } /** *The name of the associated assessment.
*/ inline DelegationMetadata& WithAssessmentName(const Aws::String& value) { SetAssessmentName(value); return *this;} /** *The name of the associated assessment.
*/ inline DelegationMetadata& WithAssessmentName(Aws::String&& value) { SetAssessmentName(std::move(value)); return *this;} /** *The name of the associated assessment.
*/ inline DelegationMetadata& WithAssessmentName(const char* value) { SetAssessmentName(value); return *this;} /** *The unique identifier for the assessment.
*/ inline const Aws::String& GetAssessmentId() const{ return m_assessmentId; } /** *The unique identifier for the assessment.
*/ inline bool AssessmentIdHasBeenSet() const { return m_assessmentIdHasBeenSet; } /** *The unique identifier for the assessment.
*/ inline void SetAssessmentId(const Aws::String& value) { m_assessmentIdHasBeenSet = true; m_assessmentId = value; } /** *The unique identifier for the assessment.
*/ inline void SetAssessmentId(Aws::String&& value) { m_assessmentIdHasBeenSet = true; m_assessmentId = std::move(value); } /** *The unique identifier for the assessment.
*/ inline void SetAssessmentId(const char* value) { m_assessmentIdHasBeenSet = true; m_assessmentId.assign(value); } /** *The unique identifier for the assessment.
*/ inline DelegationMetadata& WithAssessmentId(const Aws::String& value) { SetAssessmentId(value); return *this;} /** *The unique identifier for the assessment.
*/ inline DelegationMetadata& WithAssessmentId(Aws::String&& value) { SetAssessmentId(std::move(value)); return *this;} /** *The unique identifier for the assessment.
*/ inline DelegationMetadata& WithAssessmentId(const char* value) { SetAssessmentId(value); return *this;} /** *The current status of the delegation.
*/ inline const DelegationStatus& GetStatus() const{ return m_status; } /** *The current status of the delegation.
*/ inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; } /** *The current status of the delegation.
*/ inline void SetStatus(const DelegationStatus& value) { m_statusHasBeenSet = true; m_status = value; } /** *The current status of the delegation.
*/ inline void SetStatus(DelegationStatus&& value) { m_statusHasBeenSet = true; m_status = std::move(value); } /** *The current status of the delegation.
*/ inline DelegationMetadata& WithStatus(const DelegationStatus& value) { SetStatus(value); return *this;} /** *The current status of the delegation.
*/ inline DelegationMetadata& WithStatus(DelegationStatus&& value) { SetStatus(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline const Aws::String& GetRoleArn() const{ return m_roleArn; } /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; } /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline void SetRoleArn(const Aws::String& value) { m_roleArnHasBeenSet = true; m_roleArn = value; } /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline void SetRoleArn(Aws::String&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::move(value); } /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline void SetRoleArn(const char* value) { m_roleArnHasBeenSet = true; m_roleArn.assign(value); } /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline DelegationMetadata& WithRoleArn(const Aws::String& value) { SetRoleArn(value); return *this;} /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline DelegationMetadata& WithRoleArn(Aws::String&& value) { SetRoleArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) of the IAM role.
*/ inline DelegationMetadata& WithRoleArn(const char* value) { SetRoleArn(value); return *this;} /** *Specifies when the delegation was created.
*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *Specifies when the delegation was created.
*/ inline bool CreationTimeHasBeenSet() const { return m_creationTimeHasBeenSet; } /** *Specifies when the delegation was created.
*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTimeHasBeenSet = true; m_creationTime = value; } /** *Specifies when the delegation was created.
*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTimeHasBeenSet = true; m_creationTime = std::move(value); } /** *Specifies when the delegation was created.
*/ inline DelegationMetadata& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *Specifies when the delegation was created.
*/ inline DelegationMetadata& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *Specifies the name of the control set that was delegated for review.
*/ inline const Aws::String& GetControlSetName() const{ return m_controlSetName; } /** *Specifies the name of the control set that was delegated for review.
*/ inline bool ControlSetNameHasBeenSet() const { return m_controlSetNameHasBeenSet; } /** *Specifies the name of the control set that was delegated for review.
*/ inline void SetControlSetName(const Aws::String& value) { m_controlSetNameHasBeenSet = true; m_controlSetName = value; } /** *Specifies the name of the control set that was delegated for review.
*/ inline void SetControlSetName(Aws::String&& value) { m_controlSetNameHasBeenSet = true; m_controlSetName = std::move(value); } /** *Specifies the name of the control set that was delegated for review.
*/ inline void SetControlSetName(const char* value) { m_controlSetNameHasBeenSet = true; m_controlSetName.assign(value); } /** *Specifies the name of the control set that was delegated for review.
*/ inline DelegationMetadata& WithControlSetName(const Aws::String& value) { SetControlSetName(value); return *this;} /** *Specifies the name of the control set that was delegated for review.
*/ inline DelegationMetadata& WithControlSetName(Aws::String&& value) { SetControlSetName(std::move(value)); return *this;} /** *Specifies the name of the control set that was delegated for review.
*/ inline DelegationMetadata& WithControlSetName(const char* value) { SetControlSetName(value); return *this;} private: Aws::String m_id; bool m_idHasBeenSet = false; Aws::String m_assessmentName; bool m_assessmentNameHasBeenSet = false; Aws::String m_assessmentId; bool m_assessmentIdHasBeenSet = false; DelegationStatus m_status; bool m_statusHasBeenSet = false; Aws::String m_roleArn; bool m_roleArnHasBeenSet = false; Aws::Utils::DateTime m_creationTime; bool m_creationTimeHasBeenSet = false; Aws::String m_controlSetName; bool m_controlSetNameHasBeenSet = false; }; } // namespace Model } // namespace AuditManager } // namespace Aws