AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
Assessment.h
1
6#pragma once
7#include <aws/auditmanager/AuditManager_EXPORTS.h>
8#include <aws/auditmanager/model/AWSAccount.h>
9#include <aws/auditmanager/model/AssessmentFramework.h>
10#include <aws/auditmanager/model/AssessmentMetadata.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13
14#include <utility>
15
16namespace Aws {
17namespace Utils {
18namespace Json {
19class JsonValue;
20class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace AuditManager {
24namespace Model {
25
34 public:
35 AWS_AUDITMANAGER_API Assessment() = default;
36 AWS_AUDITMANAGER_API Assessment(Aws::Utils::Json::JsonView jsonValue);
37 AWS_AUDITMANAGER_API Assessment& operator=(Aws::Utils::Json::JsonView jsonValue);
38 AWS_AUDITMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const;
39
41
44 inline const Aws::String& GetArn() const { return m_arn; }
45 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
46 template <typename ArnT = Aws::String>
47 void SetArn(ArnT&& value) {
48 m_arnHasBeenSet = true;
49 m_arn = std::forward<ArnT>(value);
50 }
51 template <typename ArnT = Aws::String>
52 Assessment& WithArn(ArnT&& value) {
53 SetArn(std::forward<ArnT>(value));
54 return *this;
55 }
57
59
62 inline const AWSAccount& GetAwsAccount() const { return m_awsAccount; }
63 inline bool AwsAccountHasBeenSet() const { return m_awsAccountHasBeenSet; }
64 template <typename AwsAccountT = AWSAccount>
65 void SetAwsAccount(AwsAccountT&& value) {
66 m_awsAccountHasBeenSet = true;
67 m_awsAccount = std::forward<AwsAccountT>(value);
68 }
69 template <typename AwsAccountT = AWSAccount>
70 Assessment& WithAwsAccount(AwsAccountT&& value) {
71 SetAwsAccount(std::forward<AwsAccountT>(value));
72 return *this;
73 }
75
77
80 inline const AssessmentMetadata& GetMetadata() const { return m_metadata; }
81 inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; }
82 template <typename MetadataT = AssessmentMetadata>
83 void SetMetadata(MetadataT&& value) {
84 m_metadataHasBeenSet = true;
85 m_metadata = std::forward<MetadataT>(value);
86 }
87 template <typename MetadataT = AssessmentMetadata>
88 Assessment& WithMetadata(MetadataT&& value) {
89 SetMetadata(std::forward<MetadataT>(value));
90 return *this;
91 }
93
95
98 inline const AssessmentFramework& GetFramework() const { return m_framework; }
99 inline bool FrameworkHasBeenSet() const { return m_frameworkHasBeenSet; }
100 template <typename FrameworkT = AssessmentFramework>
101 void SetFramework(FrameworkT&& value) {
102 m_frameworkHasBeenSet = true;
103 m_framework = std::forward<FrameworkT>(value);
104 }
105 template <typename FrameworkT = AssessmentFramework>
106 Assessment& WithFramework(FrameworkT&& value) {
107 SetFramework(std::forward<FrameworkT>(value));
108 return *this;
109 }
111
113
116 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
117 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
118 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
119 void SetTags(TagsT&& value) {
120 m_tagsHasBeenSet = true;
121 m_tags = std::forward<TagsT>(value);
122 }
123 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
124 Assessment& WithTags(TagsT&& value) {
125 SetTags(std::forward<TagsT>(value));
126 return *this;
127 }
128 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
129 Assessment& AddTags(TagsKeyT&& key, TagsValueT&& value) {
130 m_tagsHasBeenSet = true;
131 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
132 return *this;
133 }
135 private:
136 Aws::String m_arn;
137
138 AWSAccount m_awsAccount;
139
140 AssessmentMetadata m_metadata;
141
142 AssessmentFramework m_framework;
143
145 bool m_arnHasBeenSet = false;
146 bool m_awsAccountHasBeenSet = false;
147 bool m_metadataHasBeenSet = false;
148 bool m_frameworkHasBeenSet = false;
149 bool m_tagsHasBeenSet = false;
150};
151
152} // namespace Model
153} // namespace AuditManager
154} // namespace Aws
AWS_AUDITMANAGER_API Assessment()=default
const AssessmentMetadata & GetMetadata() const
Definition Assessment.h:80
const AssessmentFramework & GetFramework() const
Definition Assessment.h:98
void SetMetadata(MetadataT &&value)
Definition Assessment.h:83
const Aws::String & GetArn() const
Definition Assessment.h:44
Assessment & WithTags(TagsT &&value)
Definition Assessment.h:124
const AWSAccount & GetAwsAccount() const
Definition Assessment.h:62
AWS_AUDITMANAGER_API Aws::Utils::Json::JsonValue Jsonize() const
Assessment & WithArn(ArnT &&value)
Definition Assessment.h:52
void SetAwsAccount(AwsAccountT &&value)
Definition Assessment.h:65
Assessment & AddTags(TagsKeyT &&key, TagsValueT &&value)
Definition Assessment.h:129
AWS_AUDITMANAGER_API Assessment(Aws::Utils::Json::JsonView jsonValue)
AWS_AUDITMANAGER_API Assessment & operator=(Aws::Utils::Json::JsonView jsonValue)
Assessment & WithFramework(FrameworkT &&value)
Definition Assessment.h:106
void SetFramework(FrameworkT &&value)
Definition Assessment.h:101
Assessment & WithMetadata(MetadataT &&value)
Definition Assessment.h:88
const Aws::Map< Aws::String, Aws::String > & GetTags() const
Definition Assessment.h:116
Assessment & WithAwsAccount(AwsAccountT &&value)
Definition Assessment.h:70
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue