AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Encryption.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/mediapackagev2/Mediapackagev2_EXPORTS.h>
9#include <aws/mediapackagev2/model/EncryptionMethod.h>
10#include <aws/mediapackagev2/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 mediapackagev2 {
22namespace Model {
23
30 public:
31 AWS_MEDIAPACKAGEV2_API Encryption() = default;
32 AWS_MEDIAPACKAGEV2_API Encryption(Aws::Utils::Json::JsonView jsonValue);
33 AWS_MEDIAPACKAGEV2_API Encryption& operator=(Aws::Utils::Json::JsonView jsonValue);
34 AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
35
37
42 inline const Aws::String& GetConstantInitializationVector() const { return m_constantInitializationVector; }
43 inline bool ConstantInitializationVectorHasBeenSet() const { return m_constantInitializationVectorHasBeenSet; }
44 template <typename ConstantInitializationVectorT = Aws::String>
45 void SetConstantInitializationVector(ConstantInitializationVectorT&& value) {
46 m_constantInitializationVectorHasBeenSet = true;
47 m_constantInitializationVector = std::forward<ConstantInitializationVectorT>(value);
48 }
49 template <typename ConstantInitializationVectorT = Aws::String>
50 Encryption& WithConstantInitializationVector(ConstantInitializationVectorT&& value) {
51 SetConstantInitializationVector(std::forward<ConstantInitializationVectorT>(value));
52 return *this;
53 }
55
57
60 inline const EncryptionMethod& GetEncryptionMethod() const { return m_encryptionMethod; }
61 inline bool EncryptionMethodHasBeenSet() const { return m_encryptionMethodHasBeenSet; }
62 template <typename EncryptionMethodT = EncryptionMethod>
63 void SetEncryptionMethod(EncryptionMethodT&& value) {
64 m_encryptionMethodHasBeenSet = true;
65 m_encryptionMethod = std::forward<EncryptionMethodT>(value);
66 }
67 template <typename EncryptionMethodT = EncryptionMethod>
68 Encryption& WithEncryptionMethod(EncryptionMethodT&& value) {
69 SetEncryptionMethod(std::forward<EncryptionMethodT>(value));
70 return *this;
71 }
73
75
85 inline int GetKeyRotationIntervalSeconds() const { return m_keyRotationIntervalSeconds; }
86 inline bool KeyRotationIntervalSecondsHasBeenSet() const { return m_keyRotationIntervalSecondsHasBeenSet; }
87 inline void SetKeyRotationIntervalSeconds(int value) {
88 m_keyRotationIntervalSecondsHasBeenSet = true;
89 m_keyRotationIntervalSeconds = value;
90 }
93 return *this;
94 }
96
98
109 inline bool GetCmafExcludeSegmentDrmMetadata() const { return m_cmafExcludeSegmentDrmMetadata; }
110 inline bool CmafExcludeSegmentDrmMetadataHasBeenSet() const { return m_cmafExcludeSegmentDrmMetadataHasBeenSet; }
111 inline void SetCmafExcludeSegmentDrmMetadata(bool value) {
112 m_cmafExcludeSegmentDrmMetadataHasBeenSet = true;
113 m_cmafExcludeSegmentDrmMetadata = value;
114 }
117 return *this;
118 }
120
122
125 inline const SpekeKeyProvider& GetSpekeKeyProvider() const { return m_spekeKeyProvider; }
126 inline bool SpekeKeyProviderHasBeenSet() const { return m_spekeKeyProviderHasBeenSet; }
127 template <typename SpekeKeyProviderT = SpekeKeyProvider>
128 void SetSpekeKeyProvider(SpekeKeyProviderT&& value) {
129 m_spekeKeyProviderHasBeenSet = true;
130 m_spekeKeyProvider = std::forward<SpekeKeyProviderT>(value);
131 }
132 template <typename SpekeKeyProviderT = SpekeKeyProvider>
133 Encryption& WithSpekeKeyProvider(SpekeKeyProviderT&& value) {
134 SetSpekeKeyProvider(std::forward<SpekeKeyProviderT>(value));
135 return *this;
136 }
138 private:
139 Aws::String m_constantInitializationVector;
140
141 EncryptionMethod m_encryptionMethod;
142
143 int m_keyRotationIntervalSeconds{0};
144
145 bool m_cmafExcludeSegmentDrmMetadata{false};
146
147 SpekeKeyProvider m_spekeKeyProvider;
148 bool m_constantInitializationVectorHasBeenSet = false;
149 bool m_encryptionMethodHasBeenSet = false;
150 bool m_keyRotationIntervalSecondsHasBeenSet = false;
151 bool m_cmafExcludeSegmentDrmMetadataHasBeenSet = false;
152 bool m_spekeKeyProviderHasBeenSet = false;
153};
154
155} // namespace Model
156} // namespace mediapackagev2
157} // namespace Aws
void SetKeyRotationIntervalSeconds(int value)
Definition Encryption.h:87
bool ConstantInitializationVectorHasBeenSet() const
Definition Encryption.h:43
Encryption & WithKeyRotationIntervalSeconds(int value)
Definition Encryption.h:91
void SetSpekeKeyProvider(SpekeKeyProviderT &&value)
Definition Encryption.h:128
AWS_MEDIAPACKAGEV2_API Encryption & operator=(Aws::Utils::Json::JsonView jsonValue)
Encryption & WithCmafExcludeSegmentDrmMetadata(bool value)
Definition Encryption.h:115
const SpekeKeyProvider & GetSpekeKeyProvider() const
Definition Encryption.h:125
AWS_MEDIAPACKAGEV2_API Encryption()=default
void SetEncryptionMethod(EncryptionMethodT &&value)
Definition Encryption.h:63
AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const
const EncryptionMethod & GetEncryptionMethod() const
Definition Encryption.h:60
AWS_MEDIAPACKAGEV2_API Encryption(Aws::Utils::Json::JsonView jsonValue)
Encryption & WithEncryptionMethod(EncryptionMethodT &&value)
Definition Encryption.h:68
Encryption & WithSpekeKeyProvider(SpekeKeyProviderT &&value)
Definition Encryption.h:133
void SetConstantInitializationVector(ConstantInitializationVectorT &&value)
Definition Encryption.h:45
const Aws::String & GetConstantInitializationVector() const
Definition Encryption.h:42
void SetCmafExcludeSegmentDrmMetadata(bool value)
Definition Encryption.h:111
Encryption & WithConstantInitializationVector(ConstantInitializationVectorT &&value)
Definition Encryption.h:50
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue