AWS SDK for C++

AWS SDK for C++ Version 1.11.608

Loading...
Searching...
No Matches
S3BucketDetail.h
1
6#pragma once
7#include <aws/guardduty/GuardDuty_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/guardduty/model/Owner.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/guardduty/model/DefaultServerSideEncryption.h>
13#include <aws/guardduty/model/PublicAccess.h>
14#include <aws/guardduty/model/Tag.h>
15#include <aws/guardduty/model/S3ObjectDetail.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace GuardDuty
29{
30namespace Model
31{
32
39 {
40 public:
41 AWS_GUARDDUTY_API S3BucketDetail() = default;
42 AWS_GUARDDUTY_API S3BucketDetail(Aws::Utils::Json::JsonView jsonValue);
44 AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::String& GetArn() const { return m_arn; }
52 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
53 template<typename ArnT = Aws::String>
54 void SetArn(ArnT&& value) { m_arnHasBeenSet = true; m_arn = std::forward<ArnT>(value); }
55 template<typename ArnT = Aws::String>
56 S3BucketDetail& WithArn(ArnT&& value) { SetArn(std::forward<ArnT>(value)); return *this;}
58
60
63 inline const Aws::String& GetName() const { return m_name; }
64 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
65 template<typename NameT = Aws::String>
66 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
67 template<typename NameT = Aws::String>
68 S3BucketDetail& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
70
72
75 inline const Aws::String& GetType() const { return m_type; }
76 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
77 template<typename TypeT = Aws::String>
78 void SetType(TypeT&& value) { m_typeHasBeenSet = true; m_type = std::forward<TypeT>(value); }
79 template<typename TypeT = Aws::String>
80 S3BucketDetail& WithType(TypeT&& value) { SetType(std::forward<TypeT>(value)); return *this;}
82
84
87 inline const Aws::Utils::DateTime& GetCreatedAt() const { return m_createdAt; }
88 inline bool CreatedAtHasBeenSet() const { return m_createdAtHasBeenSet; }
89 template<typename CreatedAtT = Aws::Utils::DateTime>
90 void SetCreatedAt(CreatedAtT&& value) { m_createdAtHasBeenSet = true; m_createdAt = std::forward<CreatedAtT>(value); }
91 template<typename CreatedAtT = Aws::Utils::DateTime>
92 S3BucketDetail& WithCreatedAt(CreatedAtT&& value) { SetCreatedAt(std::forward<CreatedAtT>(value)); return *this;}
94
96
99 inline const Owner& GetOwner() const { return m_owner; }
100 inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; }
101 template<typename OwnerT = Owner>
102 void SetOwner(OwnerT&& value) { m_ownerHasBeenSet = true; m_owner = std::forward<OwnerT>(value); }
103 template<typename OwnerT = Owner>
104 S3BucketDetail& WithOwner(OwnerT&& value) { SetOwner(std::forward<OwnerT>(value)); return *this;}
106
108
111 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
112 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
113 template<typename TagsT = Aws::Vector<Tag>>
114 void SetTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags = std::forward<TagsT>(value); }
115 template<typename TagsT = Aws::Vector<Tag>>
116 S3BucketDetail& WithTags(TagsT&& value) { SetTags(std::forward<TagsT>(value)); return *this;}
117 template<typename TagsT = Tag>
118 S3BucketDetail& AddTags(TagsT&& value) { m_tagsHasBeenSet = true; m_tags.emplace_back(std::forward<TagsT>(value)); return *this; }
120
122
125 inline const DefaultServerSideEncryption& GetDefaultServerSideEncryption() const { return m_defaultServerSideEncryption; }
126 inline bool DefaultServerSideEncryptionHasBeenSet() const { return m_defaultServerSideEncryptionHasBeenSet; }
127 template<typename DefaultServerSideEncryptionT = DefaultServerSideEncryption>
128 void SetDefaultServerSideEncryption(DefaultServerSideEncryptionT&& value) { m_defaultServerSideEncryptionHasBeenSet = true; m_defaultServerSideEncryption = std::forward<DefaultServerSideEncryptionT>(value); }
129 template<typename DefaultServerSideEncryptionT = DefaultServerSideEncryption>
130 S3BucketDetail& WithDefaultServerSideEncryption(DefaultServerSideEncryptionT&& value) { SetDefaultServerSideEncryption(std::forward<DefaultServerSideEncryptionT>(value)); return *this;}
132
134
137 inline const PublicAccess& GetPublicAccess() const { return m_publicAccess; }
138 inline bool PublicAccessHasBeenSet() const { return m_publicAccessHasBeenSet; }
139 template<typename PublicAccessT = PublicAccess>
140 void SetPublicAccess(PublicAccessT&& value) { m_publicAccessHasBeenSet = true; m_publicAccess = std::forward<PublicAccessT>(value); }
141 template<typename PublicAccessT = PublicAccess>
142 S3BucketDetail& WithPublicAccess(PublicAccessT&& value) { SetPublicAccess(std::forward<PublicAccessT>(value)); return *this;}
144
146
149 inline const Aws::Vector<S3ObjectDetail>& GetS3ObjectDetails() const { return m_s3ObjectDetails; }
150 inline bool S3ObjectDetailsHasBeenSet() const { return m_s3ObjectDetailsHasBeenSet; }
151 template<typename S3ObjectDetailsT = Aws::Vector<S3ObjectDetail>>
152 void SetS3ObjectDetails(S3ObjectDetailsT&& value) { m_s3ObjectDetailsHasBeenSet = true; m_s3ObjectDetails = std::forward<S3ObjectDetailsT>(value); }
153 template<typename S3ObjectDetailsT = Aws::Vector<S3ObjectDetail>>
154 S3BucketDetail& WithS3ObjectDetails(S3ObjectDetailsT&& value) { SetS3ObjectDetails(std::forward<S3ObjectDetailsT>(value)); return *this;}
155 template<typename S3ObjectDetailsT = S3ObjectDetail>
156 S3BucketDetail& AddS3ObjectDetails(S3ObjectDetailsT&& value) { m_s3ObjectDetailsHasBeenSet = true; m_s3ObjectDetails.emplace_back(std::forward<S3ObjectDetailsT>(value)); return *this; }
158 private:
159
160 Aws::String m_arn;
161 bool m_arnHasBeenSet = false;
162
163 Aws::String m_name;
164 bool m_nameHasBeenSet = false;
165
166 Aws::String m_type;
167 bool m_typeHasBeenSet = false;
168
169 Aws::Utils::DateTime m_createdAt{};
170 bool m_createdAtHasBeenSet = false;
171
172 Owner m_owner;
173 bool m_ownerHasBeenSet = false;
174
175 Aws::Vector<Tag> m_tags;
176 bool m_tagsHasBeenSet = false;
177
178 DefaultServerSideEncryption m_defaultServerSideEncryption;
179 bool m_defaultServerSideEncryptionHasBeenSet = false;
180
181 PublicAccess m_publicAccess;
182 bool m_publicAccessHasBeenSet = false;
183
184 Aws::Vector<S3ObjectDetail> m_s3ObjectDetails;
185 bool m_s3ObjectDetailsHasBeenSet = false;
186 };
187
188} // namespace Model
189} // namespace GuardDuty
190} // namespace Aws
S3BucketDetail & WithArn(ArnT &&value)
S3BucketDetail & AddS3ObjectDetails(S3ObjectDetailsT &&value)
void SetS3ObjectDetails(S3ObjectDetailsT &&value)
S3BucketDetail & AddTags(TagsT &&value)
void SetCreatedAt(CreatedAtT &&value)
AWS_GUARDDUTY_API S3BucketDetail & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Utils::DateTime & GetCreatedAt() const
S3BucketDetail & WithType(TypeT &&value)
S3BucketDetail & WithCreatedAt(CreatedAtT &&value)
const PublicAccess & GetPublicAccess() const
AWS_GUARDDUTY_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Vector< Tag > & GetTags() const
S3BucketDetail & WithPublicAccess(PublicAccessT &&value)
const Aws::Vector< S3ObjectDetail > & GetS3ObjectDetails() const
const Aws::String & GetName() const
S3BucketDetail & WithOwner(OwnerT &&value)
AWS_GUARDDUTY_API S3BucketDetail(Aws::Utils::Json::JsonView jsonValue)
S3BucketDetail & WithS3ObjectDetails(S3ObjectDetailsT &&value)
const DefaultServerSideEncryption & GetDefaultServerSideEncryption() const
const Aws::String & GetType() const
S3BucketDetail & WithName(NameT &&value)
AWS_GUARDDUTY_API S3BucketDetail()=default
void SetDefaultServerSideEncryption(DefaultServerSideEncryptionT &&value)
S3BucketDetail & WithDefaultServerSideEncryption(DefaultServerSideEncryptionT &&value)
void SetPublicAccess(PublicAccessT &&value)
const Aws::String & GetArn() const
S3BucketDetail & WithTags(TagsT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue