AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
HlsEncryption.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/mediapackage/MediaPackage_EXPORTS.h>
9#include <aws/mediapackage/model/EncryptionMethod.h>
10#include <aws/mediapackage/model/SpekeKeyProvider.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace MediaPackage {
22namespace Model {
23
30 public:
31 AWS_MEDIAPACKAGE_API HlsEncryption() = default;
32 AWS_MEDIAPACKAGE_API HlsEncryption(Aws::Utils::Json::JsonView jsonValue);
33 AWS_MEDIAPACKAGE_API HlsEncryption& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
43 inline const Aws::String& GetConstantInitializationVector() const { return m_constantInitializationVector; }
44 inline bool ConstantInitializationVectorHasBeenSet() const { return m_constantInitializationVectorHasBeenSet; }
45 template <typename ConstantInitializationVectorT = Aws::String>
46 void SetConstantInitializationVector(ConstantInitializationVectorT&& value) {
47 m_constantInitializationVectorHasBeenSet = true;
48 m_constantInitializationVector = std::forward<ConstantInitializationVectorT>(value);
49 }
50 template <typename ConstantInitializationVectorT = Aws::String>
51 HlsEncryption& WithConstantInitializationVector(ConstantInitializationVectorT&& value) {
52 SetConstantInitializationVector(std::forward<ConstantInitializationVectorT>(value));
53 return *this;
54 }
56
58
61 inline EncryptionMethod GetEncryptionMethod() const { return m_encryptionMethod; }
62 inline bool EncryptionMethodHasBeenSet() const { return m_encryptionMethodHasBeenSet; }
64 m_encryptionMethodHasBeenSet = true;
65 m_encryptionMethod = value;
66 }
69 return *this;
70 }
72
74
77 inline int GetKeyRotationIntervalSeconds() const { return m_keyRotationIntervalSeconds; }
78 inline bool KeyRotationIntervalSecondsHasBeenSet() const { return m_keyRotationIntervalSecondsHasBeenSet; }
79 inline void SetKeyRotationIntervalSeconds(int value) {
80 m_keyRotationIntervalSecondsHasBeenSet = true;
81 m_keyRotationIntervalSeconds = value;
82 }
85 return *this;
86 }
88
90
93 inline bool GetRepeatExtXKey() const { return m_repeatExtXKey; }
94 inline bool RepeatExtXKeyHasBeenSet() const { return m_repeatExtXKeyHasBeenSet; }
95 inline void SetRepeatExtXKey(bool value) {
96 m_repeatExtXKeyHasBeenSet = true;
97 m_repeatExtXKey = value;
98 }
99 inline HlsEncryption& WithRepeatExtXKey(bool value) {
100 SetRepeatExtXKey(value);
101 return *this;
102 }
104
106
107 inline const SpekeKeyProvider& GetSpekeKeyProvider() const { return m_spekeKeyProvider; }
108 inline bool SpekeKeyProviderHasBeenSet() const { return m_spekeKeyProviderHasBeenSet; }
109 template <typename SpekeKeyProviderT = SpekeKeyProvider>
110 void SetSpekeKeyProvider(SpekeKeyProviderT&& value) {
111 m_spekeKeyProviderHasBeenSet = true;
112 m_spekeKeyProvider = std::forward<SpekeKeyProviderT>(value);
113 }
114 template <typename SpekeKeyProviderT = SpekeKeyProvider>
115 HlsEncryption& WithSpekeKeyProvider(SpekeKeyProviderT&& value) {
116 SetSpekeKeyProvider(std::forward<SpekeKeyProviderT>(value));
117 return *this;
118 }
120 private:
121 Aws::String m_constantInitializationVector;
122
124
125 int m_keyRotationIntervalSeconds{0};
126
127 bool m_repeatExtXKey{false};
128
129 SpekeKeyProvider m_spekeKeyProvider;
130 bool m_constantInitializationVectorHasBeenSet = false;
131 bool m_encryptionMethodHasBeenSet = false;
132 bool m_keyRotationIntervalSecondsHasBeenSet = false;
133 bool m_repeatExtXKeyHasBeenSet = false;
134 bool m_spekeKeyProviderHasBeenSet = false;
135};
136
137} // namespace Model
138} // namespace MediaPackage
139} // namespace Aws
HlsEncryption & WithSpekeKeyProvider(SpekeKeyProviderT &&value)
HlsEncryption & WithConstantInitializationVector(ConstantInitializationVectorT &&value)
AWS_MEDIAPACKAGE_API Aws::Utils::Json::JsonValue Jsonize() const
HlsEncryption & WithRepeatExtXKey(bool value)
HlsEncryption & WithEncryptionMethod(EncryptionMethod value)
AWS_MEDIAPACKAGE_API HlsEncryption(Aws::Utils::Json::JsonView jsonValue)
const SpekeKeyProvider & GetSpekeKeyProvider() const
AWS_MEDIAPACKAGE_API HlsEncryption()=default
EncryptionMethod GetEncryptionMethod() const
void SetConstantInitializationVector(ConstantInitializationVectorT &&value)
HlsEncryption & WithKeyRotationIntervalSeconds(int value)
AWS_MEDIAPACKAGE_API HlsEncryption & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetConstantInitializationVector() const
void SetEncryptionMethod(EncryptionMethod value)
void SetSpekeKeyProvider(SpekeKeyProviderT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue