AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SpekeKeyProvider.h
1
6#pragma once
7#include <aws/mediapackagev2/Mediapackagev2_EXPORTS.h>
8#include <aws/mediapackagev2/model/EncryptionContractConfiguration.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/mediapackagev2/model/DrmSystem.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace mediapackagev2
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider() = default;
38 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider(Aws::Utils::Json::JsonView jsonValue);
39 AWS_MEDIAPACKAGEV2_API SpekeKeyProvider& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_MEDIAPACKAGEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
51 inline const EncryptionContractConfiguration& GetEncryptionContractConfiguration() const { return m_encryptionContractConfiguration; }
52 inline bool EncryptionContractConfigurationHasBeenSet() const { return m_encryptionContractConfigurationHasBeenSet; }
53 template<typename EncryptionContractConfigurationT = EncryptionContractConfiguration>
54 void SetEncryptionContractConfiguration(EncryptionContractConfigurationT&& value) { m_encryptionContractConfigurationHasBeenSet = true; m_encryptionContractConfiguration = std::forward<EncryptionContractConfigurationT>(value); }
55 template<typename EncryptionContractConfigurationT = EncryptionContractConfiguration>
56 SpekeKeyProvider& WithEncryptionContractConfiguration(EncryptionContractConfigurationT&& value) { SetEncryptionContractConfiguration(std::forward<EncryptionContractConfigurationT>(value)); return *this;}
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) { m_resourceIdHasBeenSet = true; m_resourceId = std::forward<ResourceIdT>(value); }
72 template<typename ResourceIdT = Aws::String>
73 SpekeKeyProvider& WithResourceId(ResourceIdT&& value) { SetResourceId(std::forward<ResourceIdT>(value)); return *this;}
75
77
81 inline const Aws::Vector<DrmSystem>& GetDrmSystems() const { return m_drmSystems; }
82 inline bool DrmSystemsHasBeenSet() const { return m_drmSystemsHasBeenSet; }
83 template<typename DrmSystemsT = Aws::Vector<DrmSystem>>
84 void SetDrmSystems(DrmSystemsT&& value) { m_drmSystemsHasBeenSet = true; m_drmSystems = std::forward<DrmSystemsT>(value); }
85 template<typename DrmSystemsT = Aws::Vector<DrmSystem>>
86 SpekeKeyProvider& WithDrmSystems(DrmSystemsT&& value) { SetDrmSystems(std::forward<DrmSystemsT>(value)); return *this;}
87 inline SpekeKeyProvider& AddDrmSystems(DrmSystem value) { m_drmSystemsHasBeenSet = true; m_drmSystems.push_back(value); return *this; }
89
91
100 inline const Aws::String& GetRoleArn() const { return m_roleArn; }
101 inline bool RoleArnHasBeenSet() const { return m_roleArnHasBeenSet; }
102 template<typename RoleArnT = Aws::String>
103 void SetRoleArn(RoleArnT&& value) { m_roleArnHasBeenSet = true; m_roleArn = std::forward<RoleArnT>(value); }
104 template<typename RoleArnT = Aws::String>
105 SpekeKeyProvider& WithRoleArn(RoleArnT&& value) { SetRoleArn(std::forward<RoleArnT>(value)); return *this;}
107
109
116 inline const Aws::String& GetUrl() const { return m_url; }
117 inline bool UrlHasBeenSet() const { return m_urlHasBeenSet; }
118 template<typename UrlT = Aws::String>
119 void SetUrl(UrlT&& value) { m_urlHasBeenSet = true; m_url = std::forward<UrlT>(value); }
120 template<typename UrlT = Aws::String>
121 SpekeKeyProvider& WithUrl(UrlT&& value) { SetUrl(std::forward<UrlT>(value)); return *this;}
123 private:
124
125 EncryptionContractConfiguration m_encryptionContractConfiguration;
126 bool m_encryptionContractConfigurationHasBeenSet = false;
127
128 Aws::String m_resourceId;
129 bool m_resourceIdHasBeenSet = false;
130
131 Aws::Vector<DrmSystem> m_drmSystems;
132 bool m_drmSystemsHasBeenSet = false;
133
134 Aws::String m_roleArn;
135 bool m_roleArnHasBeenSet = false;
136
137 Aws::String m_url;
138 bool m_urlHasBeenSet = false;
139 };
140
141} // namespace Model
142} // namespace mediapackagev2
143} // 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
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 & 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