AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
UpdateTrafficPolicyRequest.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/mailmanager/MailManagerRequest.h>
10#include <aws/mailmanager/MailManager_EXPORTS.h>
11#include <aws/mailmanager/model/AcceptAction.h>
12#include <aws/mailmanager/model/PolicyStatement.h>
13
14#include <utility>
15
16namespace Aws {
17namespace MailManager {
18namespace Model {
19
23 public:
24 AWS_MAILMANAGER_API UpdateTrafficPolicyRequest() = default;
25
26 // Service request name is the Operation name which will send this request out,
27 // each operation should has unique request name, so that we can get operation's name from this request.
28 // Note: this is not true for response, multiple operations may have the same response name,
29 // so we can not get operation's name from response.
30 inline virtual const char* GetServiceRequestName() const override { return "UpdateTrafficPolicy"; }
31
32 AWS_MAILMANAGER_API Aws::String SerializePayload() const override;
33
34 AWS_MAILMANAGER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
35
37
40 inline const Aws::String& GetTrafficPolicyId() const { return m_trafficPolicyId; }
41 inline bool TrafficPolicyIdHasBeenSet() const { return m_trafficPolicyIdHasBeenSet; }
42 template <typename TrafficPolicyIdT = Aws::String>
43 void SetTrafficPolicyId(TrafficPolicyIdT&& value) {
44 m_trafficPolicyIdHasBeenSet = true;
45 m_trafficPolicyId = std::forward<TrafficPolicyIdT>(value);
46 }
47 template <typename TrafficPolicyIdT = Aws::String>
49 SetTrafficPolicyId(std::forward<TrafficPolicyIdT>(value));
50 return *this;
51 }
53
55
58 inline const Aws::String& GetTrafficPolicyName() const { return m_trafficPolicyName; }
59 inline bool TrafficPolicyNameHasBeenSet() const { return m_trafficPolicyNameHasBeenSet; }
60 template <typename TrafficPolicyNameT = Aws::String>
61 void SetTrafficPolicyName(TrafficPolicyNameT&& value) {
62 m_trafficPolicyNameHasBeenSet = true;
63 m_trafficPolicyName = std::forward<TrafficPolicyNameT>(value);
64 }
65 template <typename TrafficPolicyNameT = Aws::String>
67 SetTrafficPolicyName(std::forward<TrafficPolicyNameT>(value));
68 return *this;
69 }
71
73
76 inline const Aws::Vector<PolicyStatement>& GetPolicyStatements() const { return m_policyStatements; }
77 inline bool PolicyStatementsHasBeenSet() const { return m_policyStatementsHasBeenSet; }
78 template <typename PolicyStatementsT = Aws::Vector<PolicyStatement>>
79 void SetPolicyStatements(PolicyStatementsT&& value) {
80 m_policyStatementsHasBeenSet = true;
81 m_policyStatements = std::forward<PolicyStatementsT>(value);
82 }
83 template <typename PolicyStatementsT = Aws::Vector<PolicyStatement>>
85 SetPolicyStatements(std::forward<PolicyStatementsT>(value));
86 return *this;
87 }
88 template <typename PolicyStatementsT = PolicyStatement>
89 UpdateTrafficPolicyRequest& AddPolicyStatements(PolicyStatementsT&& value) {
90 m_policyStatementsHasBeenSet = true;
91 m_policyStatements.emplace_back(std::forward<PolicyStatementsT>(value));
92 return *this;
93 }
95
97
102 inline AcceptAction GetDefaultAction() const { return m_defaultAction; }
103 inline bool DefaultActionHasBeenSet() const { return m_defaultActionHasBeenSet; }
104 inline void SetDefaultAction(AcceptAction value) {
105 m_defaultActionHasBeenSet = true;
106 m_defaultAction = value;
107 }
109 SetDefaultAction(value);
110 return *this;
111 }
113
115
119 inline int GetMaxMessageSizeBytes() const { return m_maxMessageSizeBytes; }
120 inline bool MaxMessageSizeBytesHasBeenSet() const { return m_maxMessageSizeBytesHasBeenSet; }
121 inline void SetMaxMessageSizeBytes(int value) {
122 m_maxMessageSizeBytesHasBeenSet = true;
123 m_maxMessageSizeBytes = value;
124 }
127 return *this;
128 }
130 private:
131 Aws::String m_trafficPolicyId;
132
133 Aws::String m_trafficPolicyName;
134
135 Aws::Vector<PolicyStatement> m_policyStatements;
136
137 AcceptAction m_defaultAction{AcceptAction::NOT_SET};
138
139 int m_maxMessageSizeBytes{0};
140 bool m_trafficPolicyIdHasBeenSet = false;
141 bool m_trafficPolicyNameHasBeenSet = false;
142 bool m_policyStatementsHasBeenSet = false;
143 bool m_defaultActionHasBeenSet = false;
144 bool m_maxMessageSizeBytesHasBeenSet = false;
145};
146
147} // namespace Model
148} // namespace MailManager
149} // namespace Aws
UpdateTrafficPolicyRequest & WithTrafficPolicyName(TrafficPolicyNameT &&value)
AWS_MAILMANAGER_API Aws::String SerializePayload() const override
const Aws::Vector< PolicyStatement > & GetPolicyStatements() const
UpdateTrafficPolicyRequest & WithTrafficPolicyId(TrafficPolicyIdT &&value)
UpdateTrafficPolicyRequest & WithDefaultAction(AcceptAction value)
UpdateTrafficPolicyRequest & WithMaxMessageSizeBytes(int value)
AWS_MAILMANAGER_API UpdateTrafficPolicyRequest()=default
UpdateTrafficPolicyRequest & AddPolicyStatements(PolicyStatementsT &&value)
UpdateTrafficPolicyRequest & WithPolicyStatements(PolicyStatementsT &&value)
AWS_MAILMANAGER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
virtual const char * GetServiceRequestName() const override
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector