AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
Subscription.h
1
6#pragma once
7#include <aws/shield/Shield_EXPORTS.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/shield/model/AutoRenew.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/shield/model/ProactiveEngagementStatus.h>
12#include <aws/shield/model/SubscriptionLimits.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/shield/model/Limit.h>
15#include <utility>
16
17namespace Aws
18{
19namespace Utils
20{
21namespace Json
22{
23 class JsonValue;
24 class JsonView;
25} // namespace Json
26} // namespace Utils
27namespace Shield
28{
29namespace Model
30{
31
39 {
40 public:
41 AWS_SHIELD_API Subscription();
42 AWS_SHIELD_API Subscription(Aws::Utils::Json::JsonView jsonValue);
44 AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const;
45
46
48
51 inline const Aws::Utils::DateTime& GetStartTime() const{ return m_startTime; }
52 inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
53 inline void SetStartTime(const Aws::Utils::DateTime& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
54 inline void SetStartTime(Aws::Utils::DateTime&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); }
55 inline Subscription& WithStartTime(const Aws::Utils::DateTime& value) { SetStartTime(value); return *this;}
56 inline Subscription& WithStartTime(Aws::Utils::DateTime&& value) { SetStartTime(std::move(value)); return *this;}
58
60
63 inline const Aws::Utils::DateTime& GetEndTime() const{ return m_endTime; }
64 inline bool EndTimeHasBeenSet() const { return m_endTimeHasBeenSet; }
65 inline void SetEndTime(const Aws::Utils::DateTime& value) { m_endTimeHasBeenSet = true; m_endTime = value; }
66 inline void SetEndTime(Aws::Utils::DateTime&& value) { m_endTimeHasBeenSet = true; m_endTime = std::move(value); }
67 inline Subscription& WithEndTime(const Aws::Utils::DateTime& value) { SetEndTime(value); return *this;}
68 inline Subscription& WithEndTime(Aws::Utils::DateTime&& value) { SetEndTime(std::move(value)); return *this;}
70
72
76 inline long long GetTimeCommitmentInSeconds() const{ return m_timeCommitmentInSeconds; }
77 inline bool TimeCommitmentInSecondsHasBeenSet() const { return m_timeCommitmentInSecondsHasBeenSet; }
78 inline void SetTimeCommitmentInSeconds(long long value) { m_timeCommitmentInSecondsHasBeenSet = true; m_timeCommitmentInSeconds = value; }
79 inline Subscription& WithTimeCommitmentInSeconds(long long value) { SetTimeCommitmentInSeconds(value); return *this;}
81
83
92 inline const AutoRenew& GetAutoRenew() const{ return m_autoRenew; }
93 inline bool AutoRenewHasBeenSet() const { return m_autoRenewHasBeenSet; }
94 inline void SetAutoRenew(const AutoRenew& value) { m_autoRenewHasBeenSet = true; m_autoRenew = value; }
95 inline void SetAutoRenew(AutoRenew&& value) { m_autoRenewHasBeenSet = true; m_autoRenew = std::move(value); }
96 inline Subscription& WithAutoRenew(const AutoRenew& value) { SetAutoRenew(value); return *this;}
97 inline Subscription& WithAutoRenew(AutoRenew&& value) { SetAutoRenew(std::move(value)); return *this;}
99
101
104 inline const Aws::Vector<Limit>& GetLimits() const{ return m_limits; }
105 inline bool LimitsHasBeenSet() const { return m_limitsHasBeenSet; }
106 inline void SetLimits(const Aws::Vector<Limit>& value) { m_limitsHasBeenSet = true; m_limits = value; }
107 inline void SetLimits(Aws::Vector<Limit>&& value) { m_limitsHasBeenSet = true; m_limits = std::move(value); }
108 inline Subscription& WithLimits(const Aws::Vector<Limit>& value) { SetLimits(value); return *this;}
109 inline Subscription& WithLimits(Aws::Vector<Limit>&& value) { SetLimits(std::move(value)); return *this;}
110 inline Subscription& AddLimits(const Limit& value) { m_limitsHasBeenSet = true; m_limits.push_back(value); return *this; }
111 inline Subscription& AddLimits(Limit&& value) { m_limitsHasBeenSet = true; m_limits.push_back(std::move(value)); return *this; }
113
115
124 inline const ProactiveEngagementStatus& GetProactiveEngagementStatus() const{ return m_proactiveEngagementStatus; }
125 inline bool ProactiveEngagementStatusHasBeenSet() const { return m_proactiveEngagementStatusHasBeenSet; }
126 inline void SetProactiveEngagementStatus(const ProactiveEngagementStatus& value) { m_proactiveEngagementStatusHasBeenSet = true; m_proactiveEngagementStatus = value; }
127 inline void SetProactiveEngagementStatus(ProactiveEngagementStatus&& value) { m_proactiveEngagementStatusHasBeenSet = true; m_proactiveEngagementStatus = std::move(value); }
131
133
136 inline const SubscriptionLimits& GetSubscriptionLimits() const{ return m_subscriptionLimits; }
137 inline bool SubscriptionLimitsHasBeenSet() const { return m_subscriptionLimitsHasBeenSet; }
138 inline void SetSubscriptionLimits(const SubscriptionLimits& value) { m_subscriptionLimitsHasBeenSet = true; m_subscriptionLimits = value; }
139 inline void SetSubscriptionLimits(SubscriptionLimits&& value) { m_subscriptionLimitsHasBeenSet = true; m_subscriptionLimits = std::move(value); }
141 inline Subscription& WithSubscriptionLimits(SubscriptionLimits&& value) { SetSubscriptionLimits(std::move(value)); return *this;}
143
145
148 inline const Aws::String& GetSubscriptionArn() const{ return m_subscriptionArn; }
149 inline bool SubscriptionArnHasBeenSet() const { return m_subscriptionArnHasBeenSet; }
150 inline void SetSubscriptionArn(const Aws::String& value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn = value; }
151 inline void SetSubscriptionArn(Aws::String&& value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn = std::move(value); }
152 inline void SetSubscriptionArn(const char* value) { m_subscriptionArnHasBeenSet = true; m_subscriptionArn.assign(value); }
153 inline Subscription& WithSubscriptionArn(const Aws::String& value) { SetSubscriptionArn(value); return *this;}
154 inline Subscription& WithSubscriptionArn(Aws::String&& value) { SetSubscriptionArn(std::move(value)); return *this;}
155 inline Subscription& WithSubscriptionArn(const char* value) { SetSubscriptionArn(value); return *this;}
157 private:
158
159 Aws::Utils::DateTime m_startTime;
160 bool m_startTimeHasBeenSet = false;
161
162 Aws::Utils::DateTime m_endTime;
163 bool m_endTimeHasBeenSet = false;
164
165 long long m_timeCommitmentInSeconds;
166 bool m_timeCommitmentInSecondsHasBeenSet = false;
167
168 AutoRenew m_autoRenew;
169 bool m_autoRenewHasBeenSet = false;
170
171 Aws::Vector<Limit> m_limits;
172 bool m_limitsHasBeenSet = false;
173
174 ProactiveEngagementStatus m_proactiveEngagementStatus;
175 bool m_proactiveEngagementStatusHasBeenSet = false;
176
177 SubscriptionLimits m_subscriptionLimits;
178 bool m_subscriptionLimitsHasBeenSet = false;
179
180 Aws::String m_subscriptionArn;
181 bool m_subscriptionArnHasBeenSet = false;
182 };
183
184} // namespace Model
185} // namespace Shield
186} // namespace Aws
Subscription & WithTimeCommitmentInSeconds(long long value)
AWS_SHIELD_API Subscription & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAutoRenew(AutoRenew &&value)
AWS_SHIELD_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Utils::DateTime & GetEndTime() const
AWS_SHIELD_API Subscription(Aws::Utils::Json::JsonView jsonValue)
Subscription & WithEndTime(Aws::Utils::DateTime &&value)
Subscription & WithAutoRenew(const AutoRenew &value)
void SetSubscriptionLimits(SubscriptionLimits &&value)
bool ProactiveEngagementStatusHasBeenSet() const
void SetLimits(const Aws::Vector< Limit > &value)
void SetSubscriptionArn(Aws::String &&value)
bool TimeCommitmentInSecondsHasBeenSet() const
void SetProactiveEngagementStatus(ProactiveEngagementStatus &&value)
void SetEndTime(const Aws::Utils::DateTime &value)
Subscription & WithLimits(Aws::Vector< Limit > &&value)
const Aws::Vector< Limit > & GetLimits() const
const SubscriptionLimits & GetSubscriptionLimits() const
Subscription & WithSubscriptionArn(Aws::String &&value)
void SetSubscriptionArn(const Aws::String &value)
Subscription & WithAutoRenew(AutoRenew &&value)
Subscription & WithProactiveEngagementStatus(const ProactiveEngagementStatus &value)
void SetSubscriptionArn(const char *value)
void SetStartTime(Aws::Utils::DateTime &&value)
void SetTimeCommitmentInSeconds(long long value)
Subscription & WithLimits(const Aws::Vector< Limit > &value)
Subscription & WithSubscriptionLimits(const SubscriptionLimits &value)
long long GetTimeCommitmentInSeconds() const
Subscription & WithSubscriptionArn(const Aws::String &value)
const AutoRenew & GetAutoRenew() const
Subscription & WithEndTime(const Aws::Utils::DateTime &value)
void SetAutoRenew(const AutoRenew &value)
Subscription & AddLimits(const Limit &value)
Subscription & WithSubscriptionLimits(SubscriptionLimits &&value)
Subscription & WithStartTime(Aws::Utils::DateTime &&value)
const Aws::Utils::DateTime & GetStartTime() const
void SetEndTime(Aws::Utils::DateTime &&value)
Subscription & WithSubscriptionArn(const char *value)
Subscription & WithProactiveEngagementStatus(ProactiveEngagementStatus &&value)
Subscription & AddLimits(Limit &&value)
const Aws::String & GetSubscriptionArn() const
void SetProactiveEngagementStatus(const ProactiveEngagementStatus &value)
Subscription & WithStartTime(const Aws::Utils::DateTime &value)
void SetStartTime(const Aws::Utils::DateTime &value)
void SetLimits(Aws::Vector< Limit > &&value)
void SetSubscriptionLimits(const SubscriptionLimits &value)
const ProactiveEngagementStatus & GetProactiveEngagementStatus() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue