AWS SDK for C++

AWS SDK for C++ Version 1.11.830

Loading...
Searching...
No Matches
CmafEncryptionSettings.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/mediaconvert/MediaConvert_EXPORTS.h>
9#include <aws/mediaconvert/model/CmafEncryptionType.h>
10#include <aws/mediaconvert/model/CmafInitializationVectorInManifest.h>
11#include <aws/mediaconvert/model/CmafKeyProviderType.h>
12#include <aws/mediaconvert/model/SpekeKeyProviderCmaf.h>
13#include <aws/mediaconvert/model/StaticKeyProvider.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace MediaConvert {
25namespace Model {
26
33 public:
34 AWS_MEDIACONVERT_API CmafEncryptionSettings() = default;
35 AWS_MEDIACONVERT_API CmafEncryptionSettings(Aws::Utils::Json::JsonView jsonValue);
37 AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
57 inline int GetClearLeadSegments() const { return m_clearLeadSegments; }
58 inline bool ClearLeadSegmentsHasBeenSet() const { return m_clearLeadSegmentsHasBeenSet; }
59 inline void SetClearLeadSegments(int value) {
60 m_clearLeadSegmentsHasBeenSet = true;
61 m_clearLeadSegments = value;
62 }
65 return *this;
66 }
68
70
75 inline const Aws::String& GetConstantInitializationVector() const { return m_constantInitializationVector; }
76 inline bool ConstantInitializationVectorHasBeenSet() const { return m_constantInitializationVectorHasBeenSet; }
77 template <typename ConstantInitializationVectorT = Aws::String>
78 void SetConstantInitializationVector(ConstantInitializationVectorT&& value) {
79 m_constantInitializationVectorHasBeenSet = true;
80 m_constantInitializationVector = std::forward<ConstantInitializationVectorT>(value);
81 }
82 template <typename ConstantInitializationVectorT = Aws::String>
83 CmafEncryptionSettings& WithConstantInitializationVector(ConstantInitializationVectorT&& value) {
84 SetConstantInitializationVector(std::forward<ConstantInitializationVectorT>(value));
85 return *this;
86 }
88
90
94 inline CmafEncryptionType GetEncryptionMethod() const { return m_encryptionMethod; }
95 inline bool EncryptionMethodHasBeenSet() const { return m_encryptionMethodHasBeenSet; }
97 m_encryptionMethodHasBeenSet = true;
98 m_encryptionMethod = value;
99 }
101 SetEncryptionMethod(value);
102 return *this;
103 }
105
107
111 inline CmafInitializationVectorInManifest GetInitializationVectorInManifest() const { return m_initializationVectorInManifest; }
112 inline bool InitializationVectorInManifestHasBeenSet() const { return m_initializationVectorInManifestHasBeenSet; }
114 m_initializationVectorInManifestHasBeenSet = true;
115 m_initializationVectorInManifest = value;
116 }
119 return *this;
120 }
122
124
129 inline const SpekeKeyProviderCmaf& GetSpekeKeyProvider() const { return m_spekeKeyProvider; }
130 inline bool SpekeKeyProviderHasBeenSet() const { return m_spekeKeyProviderHasBeenSet; }
131 template <typename SpekeKeyProviderT = SpekeKeyProviderCmaf>
132 void SetSpekeKeyProvider(SpekeKeyProviderT&& value) {
133 m_spekeKeyProviderHasBeenSet = true;
134 m_spekeKeyProvider = std::forward<SpekeKeyProviderT>(value);
135 }
136 template <typename SpekeKeyProviderT = SpekeKeyProviderCmaf>
137 CmafEncryptionSettings& WithSpekeKeyProvider(SpekeKeyProviderT&& value) {
138 SetSpekeKeyProvider(std::forward<SpekeKeyProviderT>(value));
139 return *this;
140 }
142
144
147 inline const StaticKeyProvider& GetStaticKeyProvider() const { return m_staticKeyProvider; }
148 inline bool StaticKeyProviderHasBeenSet() const { return m_staticKeyProviderHasBeenSet; }
149 template <typename StaticKeyProviderT = StaticKeyProvider>
150 void SetStaticKeyProvider(StaticKeyProviderT&& value) {
151 m_staticKeyProviderHasBeenSet = true;
152 m_staticKeyProvider = std::forward<StaticKeyProviderT>(value);
153 }
154 template <typename StaticKeyProviderT = StaticKeyProvider>
155 CmafEncryptionSettings& WithStaticKeyProvider(StaticKeyProviderT&& value) {
156 SetStaticKeyProvider(std::forward<StaticKeyProviderT>(value));
157 return *this;
158 }
160
162
167 inline CmafKeyProviderType GetType() const { return m_type; }
168 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
169 inline void SetType(CmafKeyProviderType value) {
170 m_typeHasBeenSet = true;
171 m_type = value;
172 }
174 SetType(value);
175 return *this;
176 }
178 private:
179 int m_clearLeadSegments{0};
180
181 Aws::String m_constantInitializationVector;
182
184
186
187 SpekeKeyProviderCmaf m_spekeKeyProvider;
188
189 StaticKeyProvider m_staticKeyProvider;
190
192 bool m_clearLeadSegmentsHasBeenSet = false;
193 bool m_constantInitializationVectorHasBeenSet = false;
194 bool m_encryptionMethodHasBeenSet = false;
195 bool m_initializationVectorInManifestHasBeenSet = false;
196 bool m_spekeKeyProviderHasBeenSet = false;
197 bool m_staticKeyProviderHasBeenSet = false;
198 bool m_typeHasBeenSet = false;
199};
200
201} // namespace Model
202} // namespace MediaConvert
203} // namespace Aws
void SetConstantInitializationVector(ConstantInitializationVectorT &&value)
CmafEncryptionSettings & WithStaticKeyProvider(StaticKeyProviderT &&value)
AWS_MEDIACONVERT_API CmafEncryptionSettings(Aws::Utils::Json::JsonView jsonValue)
CmafInitializationVectorInManifest GetInitializationVectorInManifest() const
const SpekeKeyProviderCmaf & GetSpekeKeyProvider() const
CmafEncryptionSettings & WithConstantInitializationVector(ConstantInitializationVectorT &&value)
AWS_MEDIACONVERT_API Aws::Utils::Json::JsonValue Jsonize() const
CmafEncryptionSettings & WithType(CmafKeyProviderType value)
AWS_MEDIACONVERT_API CmafEncryptionSettings & operator=(Aws::Utils::Json::JsonView jsonValue)
CmafEncryptionSettings & WithClearLeadSegments(int value)
AWS_MEDIACONVERT_API CmafEncryptionSettings()=default
void SetInitializationVectorInManifest(CmafInitializationVectorInManifest value)
CmafEncryptionSettings & WithInitializationVectorInManifest(CmafInitializationVectorInManifest value)
CmafEncryptionSettings & WithEncryptionMethod(CmafEncryptionType value)
CmafEncryptionSettings & WithSpekeKeyProvider(SpekeKeyProviderT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue