AWS SDK for C++

AWS SDK for C++ Version 1.11.694

Loading...
Searching...
No Matches
CreateRoomRequest.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/core/utils/memory/stl/AWSVector.h>
10#include <aws/ivschat/IvschatRequest.h>
11#include <aws/ivschat/Ivschat_EXPORTS.h>
12#include <aws/ivschat/model/MessageReviewHandler.h>
13
14#include <utility>
15
16namespace Aws {
17namespace ivschat {
18namespace Model {
19
23 public:
24 AWS_IVSCHAT_API CreateRoomRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "CreateRoom"; }
31
32 AWS_IVSCHAT_API Aws::String SerializePayload() const override;
33
35
38 inline const Aws::String& GetName() const { return m_name; }
39 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
40 template <typename NameT = Aws::String>
41 void SetName(NameT&& value) {
42 m_nameHasBeenSet = true;
43 m_name = std::forward<NameT>(value);
44 }
45 template <typename NameT = Aws::String>
46 CreateRoomRequest& WithName(NameT&& value) {
47 SetName(std::forward<NameT>(value));
48 return *this;
49 }
51
53
57 inline int GetMaximumMessageRatePerSecond() const { return m_maximumMessageRatePerSecond; }
58 inline bool MaximumMessageRatePerSecondHasBeenSet() const { return m_maximumMessageRatePerSecondHasBeenSet; }
59 inline void SetMaximumMessageRatePerSecond(int value) {
60 m_maximumMessageRatePerSecondHasBeenSet = true;
61 m_maximumMessageRatePerSecond = value;
62 }
65 return *this;
66 }
68
70
75 inline int GetMaximumMessageLength() const { return m_maximumMessageLength; }
76 inline bool MaximumMessageLengthHasBeenSet() const { return m_maximumMessageLengthHasBeenSet; }
77 inline void SetMaximumMessageLength(int value) {
78 m_maximumMessageLengthHasBeenSet = true;
79 m_maximumMessageLength = value;
80 }
83 return *this;
84 }
86
88
91 inline const MessageReviewHandler& GetMessageReviewHandler() const { return m_messageReviewHandler; }
92 inline bool MessageReviewHandlerHasBeenSet() const { return m_messageReviewHandlerHasBeenSet; }
93 template <typename MessageReviewHandlerT = MessageReviewHandler>
94 void SetMessageReviewHandler(MessageReviewHandlerT&& value) {
95 m_messageReviewHandlerHasBeenSet = true;
96 m_messageReviewHandler = std::forward<MessageReviewHandlerT>(value);
97 }
98 template <typename MessageReviewHandlerT = MessageReviewHandler>
99 CreateRoomRequest& WithMessageReviewHandler(MessageReviewHandlerT&& value) {
100 SetMessageReviewHandler(std::forward<MessageReviewHandlerT>(value));
101 return *this;
102 }
104
106
115 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
116 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
117 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
118 void SetTags(TagsT&& value) {
119 m_tagsHasBeenSet = true;
120 m_tags = std::forward<TagsT>(value);
121 }
122 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
123 CreateRoomRequest& WithTags(TagsT&& value) {
124 SetTags(std::forward<TagsT>(value));
125 return *this;
126 }
127 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
128 CreateRoomRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
129 m_tagsHasBeenSet = true;
130 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
131 return *this;
132 }
134
136
139 inline const Aws::Vector<Aws::String>& GetLoggingConfigurationIdentifiers() const { return m_loggingConfigurationIdentifiers; }
140 inline bool LoggingConfigurationIdentifiersHasBeenSet() const { return m_loggingConfigurationIdentifiersHasBeenSet; }
141 template <typename LoggingConfigurationIdentifiersT = Aws::Vector<Aws::String>>
142 void SetLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT&& value) {
143 m_loggingConfigurationIdentifiersHasBeenSet = true;
144 m_loggingConfigurationIdentifiers = std::forward<LoggingConfigurationIdentifiersT>(value);
145 }
146 template <typename LoggingConfigurationIdentifiersT = Aws::Vector<Aws::String>>
147 CreateRoomRequest& WithLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT&& value) {
148 SetLoggingConfigurationIdentifiers(std::forward<LoggingConfigurationIdentifiersT>(value));
149 return *this;
150 }
151 template <typename LoggingConfigurationIdentifiersT = Aws::String>
152 CreateRoomRequest& AddLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT&& value) {
153 m_loggingConfigurationIdentifiersHasBeenSet = true;
154 m_loggingConfigurationIdentifiers.emplace_back(std::forward<LoggingConfigurationIdentifiersT>(value));
155 return *this;
156 }
158 private:
159 Aws::String m_name;
160 bool m_nameHasBeenSet = false;
161
162 int m_maximumMessageRatePerSecond{0};
163 bool m_maximumMessageRatePerSecondHasBeenSet = false;
164
165 int m_maximumMessageLength{0};
166 bool m_maximumMessageLengthHasBeenSet = false;
167
168 MessageReviewHandler m_messageReviewHandler;
169 bool m_messageReviewHandlerHasBeenSet = false;
170
172 bool m_tagsHasBeenSet = false;
173
174 Aws::Vector<Aws::String> m_loggingConfigurationIdentifiers;
175 bool m_loggingConfigurationIdentifiersHasBeenSet = false;
176};
177
178} // namespace Model
179} // namespace ivschat
180} // namespace Aws
void SetLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT &&value)
CreateRoomRequest & WithMessageReviewHandler(MessageReviewHandlerT &&value)
CreateRoomRequest & WithMaximumMessageRatePerSecond(int value)
const Aws::Vector< Aws::String > & GetLoggingConfigurationIdentifiers() const
CreateRoomRequest & WithMaximumMessageLength(int value)
CreateRoomRequest & WithLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::Map< Aws::String, Aws::String > & GetTags() const
void SetMessageReviewHandler(MessageReviewHandlerT &&value)
AWS_IVSCHAT_API Aws::String SerializePayload() const override
AWS_IVSCHAT_API CreateRoomRequest()=default
CreateRoomRequest & AddLoggingConfigurationIdentifiers(LoggingConfigurationIdentifiersT &&value)
const Aws::String & GetName() const
CreateRoomRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
const MessageReviewHandler & GetMessageReviewHandler() const
CreateRoomRequest & WithTags(TagsT &&value)
CreateRoomRequest & WithName(NameT &&value)
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
std::vector< T, Aws::Allocator< T > > Vector