AWS SDK for C++

AWS SDK for C++ Version 1.11.741

Loading...
Searching...
No Matches
Change.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/ChangeSpecification.h>
9#include <aws/cleanrooms/model/ChangeSpecificationType.h>
10#include <aws/cleanrooms/model/ChangeType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace CleanRooms {
23namespace Model {
24
31class Change {
32 public:
33 AWS_CLEANROOMS_API Change() = default;
34 AWS_CLEANROOMS_API Change(Aws::Utils::Json::JsonView jsonValue);
35 AWS_CLEANROOMS_API Change& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
42 inline ChangeSpecificationType GetSpecificationType() const { return m_specificationType; }
43 inline bool SpecificationTypeHasBeenSet() const { return m_specificationTypeHasBeenSet; }
45 m_specificationTypeHasBeenSet = true;
46 m_specificationType = value;
47 }
50 return *this;
51 }
53
55
58 inline const ChangeSpecification& GetSpecification() const { return m_specification; }
59 inline bool SpecificationHasBeenSet() const { return m_specificationHasBeenSet; }
60 template <typename SpecificationT = ChangeSpecification>
61 void SetSpecification(SpecificationT&& value) {
62 m_specificationHasBeenSet = true;
63 m_specification = std::forward<SpecificationT>(value);
64 }
65 template <typename SpecificationT = ChangeSpecification>
66 Change& WithSpecification(SpecificationT&& value) {
67 SetSpecification(std::forward<SpecificationT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::Vector<ChangeType>& GetTypes() const { return m_types; }
77 inline bool TypesHasBeenSet() const { return m_typesHasBeenSet; }
78 template <typename TypesT = Aws::Vector<ChangeType>>
79 void SetTypes(TypesT&& value) {
80 m_typesHasBeenSet = true;
81 m_types = std::forward<TypesT>(value);
82 }
83 template <typename TypesT = Aws::Vector<ChangeType>>
84 Change& WithTypes(TypesT&& value) {
85 SetTypes(std::forward<TypesT>(value));
86 return *this;
87 }
88 inline Change& AddTypes(ChangeType value) {
89 m_typesHasBeenSet = true;
90 m_types.push_back(value);
91 return *this;
92 }
94 private:
96
97 ChangeSpecification m_specification;
98
100 bool m_specificationTypeHasBeenSet = false;
101 bool m_specificationHasBeenSet = false;
102 bool m_typesHasBeenSet = false;
103};
104
105} // namespace Model
106} // namespace CleanRooms
107} // namespace Aws
void SetSpecification(SpecificationT &&value)
Definition Change.h:61
AWS_CLEANROOMS_API Change()=default
const Aws::Vector< ChangeType > & GetTypes() const
Definition Change.h:76
Change & WithSpecification(SpecificationT &&value)
Definition Change.h:66
const ChangeSpecification & GetSpecification() const
Definition Change.h:58
bool SpecificationHasBeenSet() const
Definition Change.h:59
Change & AddTypes(ChangeType value)
Definition Change.h:88
AWS_CLEANROOMS_API Change & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetSpecificationType(ChangeSpecificationType value)
Definition Change.h:44
ChangeSpecificationType GetSpecificationType() const
Definition Change.h:42
bool SpecificationTypeHasBeenSet() const
Definition Change.h:43
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const
bool TypesHasBeenSet() const
Definition Change.h:77
Change & WithSpecificationType(ChangeSpecificationType value)
Definition Change.h:48
Change & WithTypes(TypesT &&value)
Definition Change.h:84
void SetTypes(TypesT &&value)
Definition Change.h:79
AWS_CLEANROOMS_API Change(Aws::Utils::Json::JsonView jsonValue)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue