AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
SymmetricEncryptionAttributes.h
1
6#pragma once
7#include <aws/payment-cryptography-data/PaymentCryptographyData_EXPORTS.h>
8#include <aws/payment-cryptography-data/model/EncryptionMode.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/payment-cryptography-data/model/PaddingType.h>
11#include <utility>
12
13namespace Aws
14{
15namespace Utils
16{
17namespace Json
18{
19 class JsonValue;
20 class JsonView;
21} // namespace Json
22} // namespace Utils
23namespace PaymentCryptographyData
24{
25namespace Model
26{
27
35 {
36 public:
37 AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes() = default;
38 AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes(Aws::Utils::Json::JsonView jsonValue);
39 AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
47 inline EncryptionMode GetMode() const { return m_mode; }
48 inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
49 inline void SetMode(EncryptionMode value) { m_modeHasBeenSet = true; m_mode = value; }
50 inline SymmetricEncryptionAttributes& WithMode(EncryptionMode value) { SetMode(value); return *this;}
52
54
58 inline const Aws::String& GetInitializationVector() const { return m_initializationVector; }
59 inline bool InitializationVectorHasBeenSet() const { return m_initializationVectorHasBeenSet; }
60 template<typename InitializationVectorT = Aws::String>
61 void SetInitializationVector(InitializationVectorT&& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = std::forward<InitializationVectorT>(value); }
62 template<typename InitializationVectorT = Aws::String>
63 SymmetricEncryptionAttributes& WithInitializationVector(InitializationVectorT&& value) { SetInitializationVector(std::forward<InitializationVectorT>(value)); return *this;}
65
67
70 inline PaddingType GetPaddingType() const { return m_paddingType; }
71 inline bool PaddingTypeHasBeenSet() const { return m_paddingTypeHasBeenSet; }
72 inline void SetPaddingType(PaddingType value) { m_paddingTypeHasBeenSet = true; m_paddingType = value; }
75 private:
76
78 bool m_modeHasBeenSet = false;
79
80 Aws::String m_initializationVector;
81 bool m_initializationVectorHasBeenSet = false;
82
83 PaddingType m_paddingType{PaddingType::NOT_SET};
84 bool m_paddingTypeHasBeenSet = false;
85 };
86
87} // namespace Model
88} // namespace PaymentCryptographyData
89} // namespace Aws
AWS_PAYMENTCRYPTOGRAPHYDATA_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PAYMENTCRYPTOGRAPHYDATA_API SymmetricEncryptionAttributes()=default
SymmetricEncryptionAttributes & WithInitializationVector(InitializationVectorT &&value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue