AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
NewSessionDetails.h
1
6#pragma once
7#include <aws/connect/Connect_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/connect/model/ParticipantDetails.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/connect/model/ChatStreamingConfiguration.h>
12#include <aws/core/utils/memory/stl/AWSString.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Connect
26{
27namespace Model
28{
29
37 {
38 public:
39 AWS_CONNECT_API NewSessionDetails() = default;
42 AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
59 inline const Aws::Vector<Aws::String>& GetSupportedMessagingContentTypes() const { return m_supportedMessagingContentTypes; }
60 inline bool SupportedMessagingContentTypesHasBeenSet() const { return m_supportedMessagingContentTypesHasBeenSet; }
61 template<typename SupportedMessagingContentTypesT = Aws::Vector<Aws::String>>
62 void SetSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { m_supportedMessagingContentTypesHasBeenSet = true; m_supportedMessagingContentTypes = std::forward<SupportedMessagingContentTypesT>(value); }
63 template<typename SupportedMessagingContentTypesT = Aws::Vector<Aws::String>>
64 NewSessionDetails& WithSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { SetSupportedMessagingContentTypes(std::forward<SupportedMessagingContentTypesT>(value)); return *this;}
65 template<typename SupportedMessagingContentTypesT = Aws::String>
66 NewSessionDetails& AddSupportedMessagingContentTypes(SupportedMessagingContentTypesT&& value) { m_supportedMessagingContentTypesHasBeenSet = true; m_supportedMessagingContentTypes.emplace_back(std::forward<SupportedMessagingContentTypesT>(value)); return *this; }
68
70
71 inline const ParticipantDetails& GetParticipantDetails() const { return m_participantDetails; }
72 inline bool ParticipantDetailsHasBeenSet() const { return m_participantDetailsHasBeenSet; }
73 template<typename ParticipantDetailsT = ParticipantDetails>
74 void SetParticipantDetails(ParticipantDetailsT&& value) { m_participantDetailsHasBeenSet = true; m_participantDetails = std::forward<ParticipantDetailsT>(value); }
75 template<typename ParticipantDetailsT = ParticipantDetails>
76 NewSessionDetails& WithParticipantDetails(ParticipantDetailsT&& value) { SetParticipantDetails(std::forward<ParticipantDetailsT>(value)); return *this;}
78
80
87 inline const Aws::Map<Aws::String, Aws::String>& GetAttributes() const { return m_attributes; }
88 inline bool AttributesHasBeenSet() const { return m_attributesHasBeenSet; }
89 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
90 void SetAttributes(AttributesT&& value) { m_attributesHasBeenSet = true; m_attributes = std::forward<AttributesT>(value); }
91 template<typename AttributesT = Aws::Map<Aws::String, Aws::String>>
92 NewSessionDetails& WithAttributes(AttributesT&& value) { SetAttributes(std::forward<AttributesT>(value)); return *this;}
93 template<typename AttributesKeyT = Aws::String, typename AttributesValueT = Aws::String>
94 NewSessionDetails& AddAttributes(AttributesKeyT&& key, AttributesValueT&& value) {
95 m_attributesHasBeenSet = true; m_attributes.emplace(std::forward<AttributesKeyT>(key), std::forward<AttributesValueT>(value)); return *this;
96 }
98
100
101 inline const ChatStreamingConfiguration& GetStreamingConfiguration() const { return m_streamingConfiguration; }
102 inline bool StreamingConfigurationHasBeenSet() const { return m_streamingConfigurationHasBeenSet; }
103 template<typename StreamingConfigurationT = ChatStreamingConfiguration>
104 void SetStreamingConfiguration(StreamingConfigurationT&& value) { m_streamingConfigurationHasBeenSet = true; m_streamingConfiguration = std::forward<StreamingConfigurationT>(value); }
105 template<typename StreamingConfigurationT = ChatStreamingConfiguration>
106 NewSessionDetails& WithStreamingConfiguration(StreamingConfigurationT&& value) { SetStreamingConfiguration(std::forward<StreamingConfigurationT>(value)); return *this;}
108 private:
109
110 Aws::Vector<Aws::String> m_supportedMessagingContentTypes;
111 bool m_supportedMessagingContentTypesHasBeenSet = false;
112
113 ParticipantDetails m_participantDetails;
114 bool m_participantDetailsHasBeenSet = false;
115
117 bool m_attributesHasBeenSet = false;
118
119 ChatStreamingConfiguration m_streamingConfiguration;
120 bool m_streamingConfigurationHasBeenSet = false;
121 };
122
123} // namespace Model
124} // namespace Connect
125} // namespace Aws
NewSessionDetails & WithStreamingConfiguration(StreamingConfigurationT &&value)
const ParticipantDetails & GetParticipantDetails() const
const ChatStreamingConfiguration & GetStreamingConfiguration() const
NewSessionDetails & AddSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
void SetSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
AWS_CONNECT_API NewSessionDetails(Aws::Utils::Json::JsonView jsonValue)
NewSessionDetails & AddAttributes(AttributesKeyT &&key, AttributesValueT &&value)
void SetStreamingConfiguration(StreamingConfigurationT &&value)
AWS_CONNECT_API NewSessionDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAttributes(AttributesT &&value)
void SetParticipantDetails(ParticipantDetailsT &&value)
AWS_CONNECT_API NewSessionDetails()=default
NewSessionDetails & WithParticipantDetails(ParticipantDetailsT &&value)
NewSessionDetails & WithAttributes(AttributesT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAttributes() const
AWS_CONNECT_API Aws::Utils::Json::JsonValue Jsonize() const
NewSessionDetails & WithSupportedMessagingContentTypes(SupportedMessagingContentTypesT &&value)
const Aws::Vector< Aws::String > & GetSupportedMessagingContentTypes() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue