AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
ArchiveGroupSettings.h
1
6#pragma once
7#include <aws/medialive/MediaLive_EXPORTS.h>
8#include <aws/medialive/model/ArchiveCdnSettings.h>
9#include <aws/medialive/model/OutputLocationRef.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace MediaLive {
21namespace Model {
22
29 public:
30 AWS_MEDIALIVE_API ArchiveGroupSettings() = default;
33 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
34
36
39 inline const ArchiveCdnSettings& GetArchiveCdnSettings() const { return m_archiveCdnSettings; }
40 inline bool ArchiveCdnSettingsHasBeenSet() const { return m_archiveCdnSettingsHasBeenSet; }
41 template <typename ArchiveCdnSettingsT = ArchiveCdnSettings>
42 void SetArchiveCdnSettings(ArchiveCdnSettingsT&& value) {
43 m_archiveCdnSettingsHasBeenSet = true;
44 m_archiveCdnSettings = std::forward<ArchiveCdnSettingsT>(value);
45 }
46 template <typename ArchiveCdnSettingsT = ArchiveCdnSettings>
47 ArchiveGroupSettings& WithArchiveCdnSettings(ArchiveCdnSettingsT&& value) {
48 SetArchiveCdnSettings(std::forward<ArchiveCdnSettingsT>(value));
49 return *this;
50 }
52
54
57 inline const OutputLocationRef& GetDestination() const { return m_destination; }
58 inline bool DestinationHasBeenSet() const { return m_destinationHasBeenSet; }
59 template <typename DestinationT = OutputLocationRef>
60 void SetDestination(DestinationT&& value) {
61 m_destinationHasBeenSet = true;
62 m_destination = std::forward<DestinationT>(value);
63 }
64 template <typename DestinationT = OutputLocationRef>
65 ArchiveGroupSettings& WithDestination(DestinationT&& value) {
66 SetDestination(std::forward<DestinationT>(value));
67 return *this;
68 }
70
72
76 inline int GetRolloverInterval() const { return m_rolloverInterval; }
77 inline bool RolloverIntervalHasBeenSet() const { return m_rolloverIntervalHasBeenSet; }
78 inline void SetRolloverInterval(int value) {
79 m_rolloverIntervalHasBeenSet = true;
80 m_rolloverInterval = value;
81 }
84 return *this;
85 }
87 private:
88 ArchiveCdnSettings m_archiveCdnSettings;
89
90 OutputLocationRef m_destination;
91
92 int m_rolloverInterval{0};
93 bool m_archiveCdnSettingsHasBeenSet = false;
94 bool m_destinationHasBeenSet = false;
95 bool m_rolloverIntervalHasBeenSet = false;
96};
97
98} // namespace Model
99} // namespace MediaLive
100} // namespace Aws
const OutputLocationRef & GetDestination() const
AWS_MEDIALIVE_API ArchiveGroupSettings & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIALIVE_API ArchiveGroupSettings()=default
void SetArchiveCdnSettings(ArchiveCdnSettingsT &&value)
const ArchiveCdnSettings & GetArchiveCdnSettings() const
ArchiveGroupSettings & WithDestination(DestinationT &&value)
AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const
ArchiveGroupSettings & WithArchiveCdnSettings(ArchiveCdnSettingsT &&value)
ArchiveGroupSettings & WithRolloverInterval(int value)
AWS_MEDIALIVE_API ArchiveGroupSettings(Aws::Utils::Json::JsonView jsonValue)
Aws::Utils::Json::JsonValue JsonValue