AWS SDK for C++

AWS SDK for C++ Version 1.11.609

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#include <utility>
11
12namespace Aws
13{
14namespace Utils
15{
16namespace Json
17{
18 class JsonValue;
19 class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace MediaLive
23{
24namespace Model
25{
26
33 {
34 public:
35 AWS_MEDIALIVE_API ArchiveGroupSettings() = default;
38 AWS_MEDIALIVE_API Aws::Utils::Json::JsonValue Jsonize() const;
39
40
42
45 inline const ArchiveCdnSettings& GetArchiveCdnSettings() const { return m_archiveCdnSettings; }
46 inline bool ArchiveCdnSettingsHasBeenSet() const { return m_archiveCdnSettingsHasBeenSet; }
47 template<typename ArchiveCdnSettingsT = ArchiveCdnSettings>
48 void SetArchiveCdnSettings(ArchiveCdnSettingsT&& value) { m_archiveCdnSettingsHasBeenSet = true; m_archiveCdnSettings = std::forward<ArchiveCdnSettingsT>(value); }
49 template<typename ArchiveCdnSettingsT = ArchiveCdnSettings>
50 ArchiveGroupSettings& WithArchiveCdnSettings(ArchiveCdnSettingsT&& value) { SetArchiveCdnSettings(std::forward<ArchiveCdnSettingsT>(value)); return *this;}
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) { m_destinationHasBeenSet = true; m_destination = std::forward<DestinationT>(value); }
61 template<typename DestinationT = OutputLocationRef>
62 ArchiveGroupSettings& WithDestination(DestinationT&& value) { SetDestination(std::forward<DestinationT>(value)); return *this;}
64
66
70 inline int GetRolloverInterval() const { return m_rolloverInterval; }
71 inline bool RolloverIntervalHasBeenSet() const { return m_rolloverIntervalHasBeenSet; }
72 inline void SetRolloverInterval(int value) { m_rolloverIntervalHasBeenSet = true; m_rolloverInterval = value; }
73 inline ArchiveGroupSettings& WithRolloverInterval(int value) { SetRolloverInterval(value); return *this;}
75 private:
76
77 ArchiveCdnSettings m_archiveCdnSettings;
78 bool m_archiveCdnSettingsHasBeenSet = false;
79
80 OutputLocationRef m_destination;
81 bool m_destinationHasBeenSet = false;
82
83 int m_rolloverInterval{0};
84 bool m_rolloverIntervalHasBeenSet = false;
85 };
86
87} // namespace Model
88} // namespace MediaLive
89} // 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