AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
ModifyOptionGroupRequest.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/rds/RDSRequest.h>
10#include <aws/rds/RDS_EXPORTS.h>
11#include <aws/rds/model/OptionConfiguration.h>
12
13#include <utility>
14
15namespace Aws {
16namespace RDS {
17namespace Model {
18
25 public:
26 AWS_RDS_API ModifyOptionGroupRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "ModifyOptionGroup"; }
33
34 AWS_RDS_API Aws::String SerializePayload() const override;
35
36 protected:
37 AWS_RDS_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
38
39 public:
41
47 inline const Aws::String& GetOptionGroupName() const { return m_optionGroupName; }
48 inline bool OptionGroupNameHasBeenSet() const { return m_optionGroupNameHasBeenSet; }
49 template <typename OptionGroupNameT = Aws::String>
50 void SetOptionGroupName(OptionGroupNameT&& value) {
51 m_optionGroupNameHasBeenSet = true;
52 m_optionGroupName = std::forward<OptionGroupNameT>(value);
53 }
54 template <typename OptionGroupNameT = Aws::String>
55 ModifyOptionGroupRequest& WithOptionGroupName(OptionGroupNameT&& value) {
56 SetOptionGroupName(std::forward<OptionGroupNameT>(value));
57 return *this;
58 }
60
62
66 inline const Aws::Vector<OptionConfiguration>& GetOptionsToInclude() const { return m_optionsToInclude; }
67 inline bool OptionsToIncludeHasBeenSet() const { return m_optionsToIncludeHasBeenSet; }
68 template <typename OptionsToIncludeT = Aws::Vector<OptionConfiguration>>
69 void SetOptionsToInclude(OptionsToIncludeT&& value) {
70 m_optionsToIncludeHasBeenSet = true;
71 m_optionsToInclude = std::forward<OptionsToIncludeT>(value);
72 }
73 template <typename OptionsToIncludeT = Aws::Vector<OptionConfiguration>>
74 ModifyOptionGroupRequest& WithOptionsToInclude(OptionsToIncludeT&& value) {
75 SetOptionsToInclude(std::forward<OptionsToIncludeT>(value));
76 return *this;
77 }
78 template <typename OptionsToIncludeT = OptionConfiguration>
79 ModifyOptionGroupRequest& AddOptionsToInclude(OptionsToIncludeT&& value) {
80 m_optionsToIncludeHasBeenSet = true;
81 m_optionsToInclude.emplace_back(std::forward<OptionsToIncludeT>(value));
82 return *this;
83 }
85
87
90 inline const Aws::Vector<Aws::String>& GetOptionsToRemove() const { return m_optionsToRemove; }
91 inline bool OptionsToRemoveHasBeenSet() const { return m_optionsToRemoveHasBeenSet; }
92 template <typename OptionsToRemoveT = Aws::Vector<Aws::String>>
93 void SetOptionsToRemove(OptionsToRemoveT&& value) {
94 m_optionsToRemoveHasBeenSet = true;
95 m_optionsToRemove = std::forward<OptionsToRemoveT>(value);
96 }
97 template <typename OptionsToRemoveT = Aws::Vector<Aws::String>>
98 ModifyOptionGroupRequest& WithOptionsToRemove(OptionsToRemoveT&& value) {
99 SetOptionsToRemove(std::forward<OptionsToRemoveT>(value));
100 return *this;
101 }
102 template <typename OptionsToRemoveT = Aws::String>
103 ModifyOptionGroupRequest& AddOptionsToRemove(OptionsToRemoveT&& value) {
104 m_optionsToRemoveHasBeenSet = true;
105 m_optionsToRemove.emplace_back(std::forward<OptionsToRemoveT>(value));
106 return *this;
107 }
109
111
115 inline bool GetApplyImmediately() const { return m_applyImmediately; }
116 inline bool ApplyImmediatelyHasBeenSet() const { return m_applyImmediatelyHasBeenSet; }
117 inline void SetApplyImmediately(bool value) {
118 m_applyImmediatelyHasBeenSet = true;
119 m_applyImmediately = value;
120 }
122 SetApplyImmediately(value);
123 return *this;
124 }
126 private:
127 Aws::String m_optionGroupName;
128
129 Aws::Vector<OptionConfiguration> m_optionsToInclude;
130
131 Aws::Vector<Aws::String> m_optionsToRemove;
132
133 bool m_applyImmediately{false};
134 bool m_optionGroupNameHasBeenSet = false;
135 bool m_optionsToIncludeHasBeenSet = false;
136 bool m_optionsToRemoveHasBeenSet = false;
137 bool m_applyImmediatelyHasBeenSet = false;
138};
139
140} // namespace Model
141} // namespace RDS
142} // namespace Aws
AWS_RDS_API Aws::String SerializePayload() const override
ModifyOptionGroupRequest & AddOptionsToInclude(OptionsToIncludeT &&value)
const Aws::Vector< OptionConfiguration > & GetOptionsToInclude() const
AWS_RDS_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
void SetOptionsToRemove(OptionsToRemoveT &&value)
ModifyOptionGroupRequest & WithOptionsToInclude(OptionsToIncludeT &&value)
ModifyOptionGroupRequest & WithOptionGroupName(OptionGroupNameT &&value)
AWS_RDS_API ModifyOptionGroupRequest()=default
void SetOptionsToInclude(OptionsToIncludeT &&value)
ModifyOptionGroupRequest & AddOptionsToRemove(OptionsToRemoveT &&value)
ModifyOptionGroupRequest & WithApplyImmediately(bool value)
ModifyOptionGroupRequest & WithOptionsToRemove(OptionsToRemoveT &&value)
virtual const char * GetServiceRequestName() const override
void SetOptionGroupName(OptionGroupNameT &&value)
const Aws::Vector< Aws::String > & GetOptionsToRemove() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector