AWS SDK for C++

AWS SDK for C++ Version 1.11.796

Loading...
Searching...
No Matches
StreamSession.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ivs/IVS_EXPORTS.h>
11#include <aws/ivs/model/Channel.h>
12#include <aws/ivs/model/IngestConfiguration.h>
13#include <aws/ivs/model/IngestConfigurations.h>
14#include <aws/ivs/model/RecordingConfiguration.h>
15#include <aws/ivs/model/StreamEvent.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace IVS {
27namespace Model {
28
37 public:
38 AWS_IVS_API StreamSession() = default;
42
44
48 inline const Aws::String& GetStreamId() const { return m_streamId; }
49 inline bool StreamIdHasBeenSet() const { return m_streamIdHasBeenSet; }
50 template <typename StreamIdT = Aws::String>
51 void SetStreamId(StreamIdT&& value) {
52 m_streamIdHasBeenSet = true;
53 m_streamId = std::forward<StreamIdT>(value);
54 }
55 template <typename StreamIdT = Aws::String>
56 StreamSession& WithStreamId(StreamIdT&& value) {
57 SetStreamId(std::forward<StreamIdT>(value));
58 return *this;
59 }
61
63
67 inline const Aws::Utils::DateTime& GetStartTime() const { return m_startTime; }
68 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
69 template <typename StartTimeT = Aws::Utils::DateTime>
70 void SetStartTime(StartTimeT&& value) {
71 m_startTimeHasBeenSet = true;
72 m_startTime = std::forward<StartTimeT>(value);
73 }
74 template <typename StartTimeT = Aws::Utils::DateTime>
75 StreamSession& WithStartTime(StartTimeT&& value) {
76 SetStartTime(std::forward<StartTimeT>(value));
77 return *this;
78 }
80
82
87 inline const Aws::Utils::DateTime& GetEndTime() const { return m_endTime; }
88 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
89 template <typename EndTimeT = Aws::Utils::DateTime>
90 void SetEndTime(EndTimeT&& value) {
91 m_endTimeHasBeenSet = true;
92 m_endTime = std::forward<EndTimeT>(value);
93 }
94 template <typename EndTimeT = Aws::Utils::DateTime>
95 StreamSession& WithEndTime(EndTimeT&& value) {
96 SetEndTime(std::forward<EndTimeT>(value));
97 return *this;
98 }
100
102
105 inline const Channel& GetChannel() const { return m_channel; }
106 inline bool ChannelHasBeenSet() const { return m_channelHasBeenSet; }
107 template <typename ChannelT = Channel>
108 void SetChannel(ChannelT&& value) {
109 m_channelHasBeenSet = true;
110 m_channel = std::forward<ChannelT>(value);
111 }
112 template <typename ChannelT = Channel>
113 StreamSession& WithChannel(ChannelT&& value) {
114 SetChannel(std::forward<ChannelT>(value));
115 return *this;
116 }
118
120
130 inline const IngestConfiguration& GetIngestConfiguration() const { return m_ingestConfiguration; }
131 inline bool IngestConfigurationHasBeenSet() const { return m_ingestConfigurationHasBeenSet; }
132 template <typename IngestConfigurationT = IngestConfiguration>
133 void SetIngestConfiguration(IngestConfigurationT&& value) {
134 m_ingestConfigurationHasBeenSet = true;
135 m_ingestConfiguration = std::forward<IngestConfigurationT>(value);
136 }
137 template <typename IngestConfigurationT = IngestConfiguration>
138 StreamSession& WithIngestConfiguration(IngestConfigurationT&& value) {
139 SetIngestConfiguration(std::forward<IngestConfigurationT>(value));
140 return *this;
141 }
143
145
150 inline const IngestConfigurations& GetIngestConfigurations() const { return m_ingestConfigurations; }
151 inline bool IngestConfigurationsHasBeenSet() const { return m_ingestConfigurationsHasBeenSet; }
152 template <typename IngestConfigurationsT = IngestConfigurations>
153 void SetIngestConfigurations(IngestConfigurationsT&& value) {
154 m_ingestConfigurationsHasBeenSet = true;
155 m_ingestConfigurations = std::forward<IngestConfigurationsT>(value);
156 }
157 template <typename IngestConfigurationsT = IngestConfigurations>
158 StreamSession& WithIngestConfigurations(IngestConfigurationsT&& value) {
159 SetIngestConfigurations(std::forward<IngestConfigurationsT>(value));
160 return *this;
161 }
163
165
168 inline const RecordingConfiguration& GetRecordingConfiguration() const { return m_recordingConfiguration; }
169 inline bool RecordingConfigurationHasBeenSet() const { return m_recordingConfigurationHasBeenSet; }
170 template <typename RecordingConfigurationT = RecordingConfiguration>
171 void SetRecordingConfiguration(RecordingConfigurationT&& value) {
172 m_recordingConfigurationHasBeenSet = true;
173 m_recordingConfiguration = std::forward<RecordingConfigurationT>(value);
174 }
175 template <typename RecordingConfigurationT = RecordingConfiguration>
176 StreamSession& WithRecordingConfiguration(RecordingConfigurationT&& value) {
177 SetRecordingConfiguration(std::forward<RecordingConfigurationT>(value));
178 return *this;
179 }
181
183
189 inline const Aws::Vector<StreamEvent>& GetTruncatedEvents() const { return m_truncatedEvents; }
190 inline bool TruncatedEventsHasBeenSet() const { return m_truncatedEventsHasBeenSet; }
191 template <typename TruncatedEventsT = Aws::Vector<StreamEvent>>
192 void SetTruncatedEvents(TruncatedEventsT&& value) {
193 m_truncatedEventsHasBeenSet = true;
194 m_truncatedEvents = std::forward<TruncatedEventsT>(value);
195 }
196 template <typename TruncatedEventsT = Aws::Vector<StreamEvent>>
197 StreamSession& WithTruncatedEvents(TruncatedEventsT&& value) {
198 SetTruncatedEvents(std::forward<TruncatedEventsT>(value));
199 return *this;
200 }
201 template <typename TruncatedEventsT = StreamEvent>
202 StreamSession& AddTruncatedEvents(TruncatedEventsT&& value) {
203 m_truncatedEventsHasBeenSet = true;
204 m_truncatedEvents.emplace_back(std::forward<TruncatedEventsT>(value));
205 return *this;
206 }
208 private:
209 Aws::String m_streamId;
210
211 Aws::Utils::DateTime m_startTime{};
212
213 Aws::Utils::DateTime m_endTime{};
214
215 Channel m_channel;
216
217 IngestConfiguration m_ingestConfiguration;
218
219 IngestConfigurations m_ingestConfigurations;
220
221 RecordingConfiguration m_recordingConfiguration;
222
223 Aws::Vector<StreamEvent> m_truncatedEvents;
224 bool m_streamIdHasBeenSet = false;
225 bool m_startTimeHasBeenSet = false;
226 bool m_endTimeHasBeenSet = false;
227 bool m_channelHasBeenSet = false;
228 bool m_ingestConfigurationHasBeenSet = false;
229 bool m_ingestConfigurationsHasBeenSet = false;
230 bool m_recordingConfigurationHasBeenSet = false;
231 bool m_truncatedEventsHasBeenSet = false;
232};
233
234} // namespace Model
235} // namespace IVS
236} // namespace Aws
const Aws::Utils::DateTime & GetStartTime() const
const IngestConfigurations & GetIngestConfigurations() const
AWS_IVS_API StreamSession & operator=(Aws::Utils::Json::JsonView jsonValue)
StreamSession & WithIngestConfiguration(IngestConfigurationT &&value)
void SetStartTime(StartTimeT &&value)
StreamSession & WithTruncatedEvents(TruncatedEventsT &&value)
const IngestConfiguration & GetIngestConfiguration() const
const Aws::Vector< StreamEvent > & GetTruncatedEvents() const
const Aws::String & GetStreamId() const
AWS_IVS_API StreamSession()=default
const RecordingConfiguration & GetRecordingConfiguration() const
void SetRecordingConfiguration(RecordingConfigurationT &&value)
void SetIngestConfigurations(IngestConfigurationsT &&value)
bool RecordingConfigurationHasBeenSet() const
void SetStreamId(StreamIdT &&value)
StreamSession & WithEndTime(EndTimeT &&value)
AWS_IVS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetIngestConfiguration(IngestConfigurationT &&value)
StreamSession & WithStreamId(StreamIdT &&value)
void SetTruncatedEvents(TruncatedEventsT &&value)
void SetChannel(ChannelT &&value)
AWS_IVS_API StreamSession(Aws::Utils::Json::JsonView jsonValue)
bool IngestConfigurationsHasBeenSet() const
const Aws::Utils::DateTime & GetEndTime() const
StreamSession & WithRecordingConfiguration(RecordingConfigurationT &&value)
void SetEndTime(EndTimeT &&value)
StreamSession & WithIngestConfigurations(IngestConfigurationsT &&value)
const Channel & GetChannel() const
StreamSession & WithChannel(ChannelT &&value)
StreamSession & AddTruncatedEvents(TruncatedEventsT &&value)
StreamSession & WithStartTime(StartTimeT &&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