AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
SpekeKeyProvider.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/mediapackagev2/Mediapackagev2_EXPORTS.h>
10#include <aws/mediapackagev2/model/DrmSystem.h>
11#include <aws/mediapackagev2/model/EncryptionContractConfiguration.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace mediapackagev2 {
23namespace Model {
24
31 public:
32 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider() = default;
33 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider(Aws::Utils::Json::JsonView jsonValue);
34 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
45 inline const EncryptionContractConfiguration& GetEncryptionContractConfiguration() const { return m_encryptionContractConfiguration; }
46 inline bool EncryptionContractConfigurationHasBeenSet() const { return m_encryptionContractConfigurationHasBeenSet; }
47 template <typename EncryptionContractConfigurationT = EncryptionContractConfiguration>
48 void SetEncryptionContractConfiguration(EncryptionContractConfigurationT&& value) {
49 m_encryptionContractConfigurationHasBeenSet = true;
50 m_encryptionContractConfiguration = std::forward<EncryptionContractConfigurationT>(value);
51 }
52 template <typename EncryptionContractConfigurationT = EncryptionContractConfiguration>
53 SpekeKeyProvider& WithEncryptionContractConfiguration(EncryptionContractConfigurationT&& value) {
54 SetEncryptionContractConfiguration(std::forward<EncryptionContractConfigurationT>(value));
55 return *this;
56 }
58
60
68 inline const Aws::String& GetResourceId() const { return m_resourceId; }
69 inline bool ResourceIdHasBeenSet() const { return m_resourceIdHasBeenSet; }
70 template <typename ResourceIdT = Aws::String>
71 void SetResourceId(ResourceIdT&& value) {
72 m_resourceIdHasBeenSet = true;
73 m_resourceId = std::forward<ResourceIdT>(value);
74 }
75 template <typename ResourceIdT = Aws::String>
76 SpekeKeyProvider& WithResourceId(ResourceIdT&& value) {
77 SetResourceId(std::forward<ResourceIdT>(value));
78 return *this;
79 }
81
83
87 inline const Aws::Vector<DrmSystem>& GetDrmSystems() const { return m_drmSystems; }
88 inline bool DrmSystemsHasBeenSet() const { return m_drmSystemsHasBeenSet; }
89 template <typename DrmSystemsT = Aws::Vector<DrmSystem>>
90 void SetDrmSystems(DrmSystemsT&& value) {
91 m_drmSystemsHasBeenSet = true;
92 m_drmSystems = std::forward<DrmSystemsT>(value);
93 }
94 template <typename DrmSystemsT = Aws::Vector<DrmSystem>>
95 SpekeKeyProvider& WithDrmSystems(DrmSystemsT&& value) {
96 SetDrmSystems(std::forward<DrmSystemsT>(value));
97 return *this;
98 }
100 m_drmSystemsHasBeenSet = true;
101 m_drmSystems.push_back(value);
102 return *this;
103 }
105
107
116 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
117 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
118 template <typename RoleArnT = Aws::String>
119 void SetRoleArn(RoleArnT&& value) {
120 m_roleArnHasBeenSet = true;
121 m_roleArn = std::forward<RoleArnT>(value);
122 }
123 template <typename RoleArnT = Aws::String>
124 SpekeKeyProvider& WithRoleArn(RoleArnT&& value) {
125 SetRoleArn(std::forward<RoleArnT>(value));
126 return *this;
127 }
129
131
138 inline const Aws::String& GetUrl() const { return m_url; }
139 inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; }
140 template <typename UrlT = Aws::String>
141 void SetUrl(UrlT&& value) {
142 m_urlHasBeenSet = true;
143 m_url = std::forward<UrlT>(value);
144 }
145 template <typename UrlT = Aws::String>
146 SpekeKeyProvider& WithUrl(UrlT&& value) {
147 SetUrl(std::forward<UrlT>(value));
148 return *this;
149 }
151
153
158 inline const Aws::String& GetCertificateArn() const { return m_certificateArn; }
159 inline bool CertificateArnHasBeenSet() const { return m_certificateArnHasBeenSet; }
160 template <typename CertificateArnT = Aws::String>
161 void SetCertificateArn(CertificateArnT&& value) {
162 m_certificateArnHasBeenSet = true;
163 m_certificateArn = std::forward<CertificateArnT>(value);
164 }
165 template <typename CertificateArnT = Aws::String>
166 SpekeKeyProvider& WithCertificateArn(CertificateArnT&& value) {
167 SetCertificateArn(std::forward<CertificateArnT>(value));
168 return *this;
169 }
171 private:
172 EncryptionContractConfiguration m_encryptionContractConfiguration;
173
174 Aws::String m_resourceId;
175
176 Aws::Vector<DrmSystem> m_drmSystems;
177
178 Aws::String m_roleArn;
179
180 Aws::String m_url;
181
182 Aws::String m_certificateArn;
183 bool m_encryptionContractConfigurationHasBeenSet = false;
184 bool m_resourceIdHasBeenSet = false;
185 bool m_drmSystemsHasBeenSet = false;
186 bool m_roleArnHasBeenSet = false;
187 bool m_urlHasBeenSet = false;
188 bool m_certificateArnHasBeenSet = false;
189};
190
191} // namespace Model
192} // namespace mediapackagev2
193} // namespace Aws
const Aws::Vector< DrmSystem > & GetDrmSystems() const
AWS_MEDIAPACKAGEV2_API SpekeKeyProvider(Aws::Utils::Json::JsonView jsonValue)
SpekeKeyProvider & WithResourceId(ResourceIdT &&value)
SpekeKeyProvider & AddDrmSystems(DrmSystem value)
SpekeKeyProvider & WithEncryptionContractConfiguration(EncryptionContractConfigurationT &&value)
AWS_MEDIAPACKAGEV2_API SpekeKeyProvider()=default
void SetCertificateArn(CertificateArnT &&value)
AWS_MEDIAPACKAGEV2_API SpekeKeyProvider & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const
SpekeKeyProvider & WithDrmSystems(DrmSystemsT &&value)
void SetEncryptionContractConfiguration(EncryptionContractConfigurationT &&value)
SpekeKeyProvider & WithRoleArn(RoleArnT &&value)
const EncryptionContractConfiguration & GetEncryptionContractConfiguration() const
SpekeKeyProvider & WithCertificateArn(CertificateArnT &&value)
SpekeKeyProvider & WithUrl(UrlT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue