AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
CreateChatTokenRequest.h
1
6#pragma once
7#include <aws/ivschat/Ivschat_EXPORTS.h>
8#include <aws/ivschat/IvschatRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/core/utils/memory/stl/AWSMap.h>
12#include <aws/ivschat/model/ChatTokenCapability.h>
13#include <utility>
14
15namespace Aws
16{
17namespace ivschat
18{
19namespace Model
20{
21
25 {
26 public:
27 AWS_IVSCHAT_API CreateChatTokenRequest() = default;
28
29 // Service request name is the Operation name which will send this request out,
30 // each operation should has unique request name, so that we can get operation's name from this request.
31 // Note: this is not true for response, multiple operations may have the same response name,
32 // so we can not get operation's name from response.
33 inline virtual const char* GetServiceRequestName() const override { return "CreateChatToken"; }
34
35 AWS_IVSCHAT_API Aws::String SerializePayload() const override;
36
37
39
43 inline const Aws::String& GetRoomIdentifier() const { return m_roomIdentifier; }
44 inline bool RoomIdentifierHasBeenSet() const { return m_roomIdentifierHasBeenSet; }
45 template<typename RoomIdentifierT = Aws::String>
46 void SetRoomIdentifier(RoomIdentifierT&& value) { m_roomIdentifierHasBeenSet = true; m_roomIdentifier = std::forward<RoomIdentifierT>(value); }
47 template<typename RoomIdentifierT = Aws::String>
48 CreateChatTokenRequest& WithRoomIdentifier(RoomIdentifierT&& value) { SetRoomIdentifier(std::forward<RoomIdentifierT>(value)); return *this;}
50
52
56 inline const Aws::String& GetUserId() const { return m_userId; }
57 inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; }
58 template<typename UserIdT = Aws::String>
59 void SetUserId(UserIdT&& value) { m_userIdHasBeenSet = true; m_userId = std::forward<UserIdT>(value); }
60 template<typename UserIdT = Aws::String>
61 CreateChatTokenRequest& WithUserId(UserIdT&& value) { SetUserId(std::forward<UserIdT>(value)); return *this;}
63
65
70 inline const Aws::Vector<ChatTokenCapability>& GetCapabilities() const { return m_capabilities; }
71 inline bool CapabilitiesHasBeenSet() const { return m_capabilitiesHasBeenSet; }
72 template<typename CapabilitiesT = Aws::Vector<ChatTokenCapability>>
73 void SetCapabilities(CapabilitiesT&& value) { m_capabilitiesHasBeenSet = true; m_capabilities = std::forward<CapabilitiesT>(value); }
74 template<typename CapabilitiesT = Aws::Vector<ChatTokenCapability>>
75 CreateChatTokenRequest& WithCapabilities(CapabilitiesT&& value) { SetCapabilities(std::forward<CapabilitiesT>(value)); return *this;}
76 inline CreateChatTokenRequest& AddCapabilities(ChatTokenCapability value) { m_capabilitiesHasBeenSet = true; m_capabilities.push_back(value); return *this; }
78
80
84 inline int GetSessionDurationInMinutes() const { return m_sessionDurationInMinutes; }
85 inline bool SessionDurationInMinutesHasBeenSet() const { return m_sessionDurationInMinutesHasBeenSet; }
86 inline void SetSessionDurationInMinutes(int value) { m_sessionDurationInMinutesHasBeenSet = true; m_sessionDurationInMinutes = value; }
89
91
96 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
97 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
98 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
99 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes = std::forward<AttributesT>(value); }
100 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
101 CreateChatTokenRequest& WithAttributes(AttributesT&& value) { SetAttributes(std::forward<AttributesT>(value)); return *this;}
102 template<typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
103 CreateChatTokenRequest& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
104 m_attributesHasBeenSet = true; m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value)); return *this;
105 }
107 private:
108
109 Aws::String m_roomIdentifier;
110 bool m_roomIdentifierHasBeenSet = false;
111
112 Aws::String m_userId;
113 bool m_userIdHasBeenSet = false;
114
116 bool m_capabilitiesHasBeenSet = false;
117
118 int m_sessionDurationInMinutes{0};
119 bool m_sessionDurationInMinutesHasBeenSet = false;
120
122 bool m_attributesHasBeenSet = false;
123 };
124
125} // namespace Model
126} // namespace ivschat
127} // namespace Aws
virtual const char * GetServiceRequestName() const override
CreateChatTokenRequest & WithAttributes(AttributesT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
CreateChatTokenRequest & AddCapabilities(ChatTokenCapability value)
CreateChatTokenRequest & WithCapabilities(CapabilitiesT &&value)
const Aws::Vector< ChatTokenCapability > & GetCapabilities() const
AWS_IVSCHAT_API Aws::String SerializePayload() const override
CreateChatTokenRequest & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
CreateChatTokenRequest & WithSessionDurationInMinutes(int value)
AWS_IVSCHAT_API CreateChatTokenRequest()=default
CreateChatTokenRequest & WithUserId(UserIdT &&value)
CreateChatTokenRequest & WithRoomIdentifier(RoomIdentifierT &&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