AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
StorageConfiguration.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/ivs-realtime/Ivsrealtime_EXPORTS.h>
10#include <aws/ivs-realtime/model/S3StorageConfiguration.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace ivsrealtime {
22namespace Model {
23
31 public:
32 AWS_IVSREALTIME_API StorageConfiguration() = default;
33 AWS_IVSREALTIME_API StorageConfiguration(Aws::Utils::Json::JsonView jsonValue);
35 AWS_IVSREALTIME_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetArn() const { return m_arn; }
42 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
43 template <typename ArnT = Aws::String>
44 void SetArn(ArnT&& value) {
45 m_arnHasBeenSet = true;
46 m_arn = std::forward<ArnT>(value);
47 }
48 template <typename ArnT = Aws::String>
50 SetArn(std::forward<ArnT>(value));
51 return *this;
52 }
54
56
59 inline const Aws::String& GetName() const { return m_name; }
60 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
61 template <typename NameT = Aws::String>
62 void SetName(NameT&& value) {
63 m_nameHasBeenSet = true;
64 m_name = std::forward<NameT>(value);
65 }
66 template <typename NameT = Aws::String>
68 SetName(std::forward<NameT>(value));
69 return *this;
70 }
72
74
77 inline const S3StorageConfiguration& GetS3() const { return m_s3; }
78 inline bool S3HasBeenSet() const { return m_s3HasBeenSet; }
79 template <typename S3T = S3StorageConfiguration>
80 void SetS3(S3T&& value) {
81 m_s3HasBeenSet = true;
82 m_s3 = std::forward<S3T>(value);
83 }
84 template <typename S3T = S3StorageConfiguration>
86 SetS3(std::forward<S3T>(value));
87 return *this;
88 }
90
92
101 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
102 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
103 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
104 void SetTags(TagsT&& value) {
105 m_tagsHasBeenSet = true;
106 m_tags = std::forward<TagsT>(value);
107 }
108 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
110 SetTags(std::forward<TagsT>(value));
111 return *this;
112 }
113 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
114 StorageConfiguration& AddTags(TagsKeyT&& key, TagsValueT&& value) {
115 m_tagsHasBeenSet = true;
116 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
117 return *this;
118 }
120 private:
121 Aws::String m_arn;
122
123 Aws::String m_name;
124
126
128 bool m_arnHasBeenSet = false;
129 bool m_nameHasBeenSet = false;
130 bool m_s3HasBeenSet = false;
131 bool m_tagsHasBeenSet = false;
132};
133
134} // namespace Model
135} // namespace ivsrealtime
136} // namespace Aws
const S3StorageConfiguration & GetS3() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
StorageConfiguration & WithS3(S3T &&value)
StorageConfiguration & WithName(NameT &&value)
StorageConfiguration & WithArn(ArnT &&value)
AWS_IVSREALTIME_API StorageConfiguration()=default
StorageConfiguration & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_IVSREALTIME_API StorageConfiguration(Aws::Utils::Json::JsonView jsonValue)
AWS_IVSREALTIME_API Aws::Utils::Json::JsonValue Jsonize() const
StorageConfiguration & WithTags(TagsT &&value)
AWS_IVSREALTIME_API StorageConfiguration & operator=(Aws::Utils::Json::JsonView jsonValue)
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