AWS SDK for C++

AWS SDK for C++ Version 1.11.743

Loading...
Searching...
No Matches
UsageRecord.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/macie2/Macie2_EXPORTS.h>
11#include <aws/macie2/model/UsageByAccount.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Macie2 {
23namespace Model {
24
32 public:
33 AWS_MACIE2_API UsageRecord() = default;
34 AWS_MACIE2_API UsageRecord(Aws::Utils::Json::JsonView jsonValue);
36 AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline const Aws::String& GetAccountId() const { return m_accountId; }
44 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
45 template <typename AccountIdT = Aws::String>
46 void SetAccountId(AccountIdT&& value) {
47 m_accountIdHasBeenSet = true;
48 m_accountId = std::forward<AccountIdT>(value);
49 }
50 template <typename AccountIdT = Aws::String>
51 UsageRecord& WithAccountId(AccountIdT&& value) {
52 SetAccountId(std::forward<AccountIdT>(value));
53 return *this;
54 }
56
58
64 inline const Aws::Utils::DateTime& GetAutomatedDiscoveryFreeTrialStartDate() const { return m_automatedDiscoveryFreeTrialStartDate; }
65 inline bool AutomatedDiscoveryFreeTrialStartDateHasBeenSet() const { return m_automatedDiscoveryFreeTrialStartDateHasBeenSet; }
66 template <typename AutomatedDiscoveryFreeTrialStartDateT = Aws::Utils::DateTime>
67 void SetAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT&& value) {
68 m_automatedDiscoveryFreeTrialStartDateHasBeenSet = true;
69 m_automatedDiscoveryFreeTrialStartDate = std::forward<AutomatedDiscoveryFreeTrialStartDateT>(value);
70 }
71 template <typename AutomatedDiscoveryFreeTrialStartDateT = Aws::Utils::DateTime>
72 UsageRecord& WithAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT&& value) {
73 SetAutomatedDiscoveryFreeTrialStartDate(std::forward<AutomatedDiscoveryFreeTrialStartDateT>(value));
74 return *this;
75 }
77
79
83 inline const Aws::Utils::DateTime& GetFreeTrialStartDate() const { return m_freeTrialStartDate; }
84 inline bool FreeTrialStartDateHasBeenSet() const { return m_freeTrialStartDateHasBeenSet; }
85 template <typename FreeTrialStartDateT = Aws::Utils::DateTime>
86 void SetFreeTrialStartDate(FreeTrialStartDateT&& value) {
87 m_freeTrialStartDateHasBeenSet = true;
88 m_freeTrialStartDate = std::forward<FreeTrialStartDateT>(value);
89 }
90 template <typename FreeTrialStartDateT = Aws::Utils::DateTime>
91 UsageRecord& WithFreeTrialStartDate(FreeTrialStartDateT&& value) {
92 SetFreeTrialStartDate(std::forward<FreeTrialStartDateT>(value));
93 return *this;
94 }
96
98
103 inline const Aws::Vector<UsageByAccount>& GetUsage() const { return m_usage; }
104 inline bool UsageHasBeenSet() const { return m_usageHasBeenSet; }
105 template <typename UsageT = Aws::Vector<UsageByAccount>>
106 void SetUsage(UsageT&& value) {
107 m_usageHasBeenSet = true;
108 m_usage = std::forward<UsageT>(value);
109 }
110 template <typename UsageT = Aws::Vector<UsageByAccount>>
111 UsageRecord& WithUsage(UsageT&& value) {
112 SetUsage(std::forward<UsageT>(value));
113 return *this;
114 }
115 template <typename UsageT = UsageByAccount>
116 UsageRecord& AddUsage(UsageT&& value) {
117 m_usageHasBeenSet = true;
118 m_usage.emplace_back(std::forward<UsageT>(value));
119 return *this;
120 }
122 private:
123 Aws::String m_accountId;
124
125 Aws::Utils::DateTime m_automatedDiscoveryFreeTrialStartDate{};
126
127 Aws::Utils::DateTime m_freeTrialStartDate{};
128
130 bool m_accountIdHasBeenSet = false;
131 bool m_automatedDiscoveryFreeTrialStartDateHasBeenSet = false;
132 bool m_freeTrialStartDateHasBeenSet = false;
133 bool m_usageHasBeenSet = false;
134};
135
136} // namespace Model
137} // namespace Macie2
138} // namespace Aws
UsageRecord & WithAccountId(AccountIdT &&value)
Definition UsageRecord.h:51
const Aws::String & GetAccountId() const
Definition UsageRecord.h:43
AWS_MACIE2_API UsageRecord()=default
UsageRecord & WithAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT &&value)
Definition UsageRecord.h:72
UsageRecord & AddUsage(UsageT &&value)
AWS_MACIE2_API UsageRecord(Aws::Utils::Json::JsonView jsonValue)
UsageRecord & WithFreeTrialStartDate(FreeTrialStartDateT &&value)
Definition UsageRecord.h:91
void SetFreeTrialStartDate(FreeTrialStartDateT &&value)
Definition UsageRecord.h:86
AWS_MACIE2_API UsageRecord & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAccountId(AccountIdT &&value)
Definition UsageRecord.h:46
AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const
UsageRecord & WithUsage(UsageT &&value)
const Aws::Utils::DateTime & GetFreeTrialStartDate() const
Definition UsageRecord.h:83
void SetUsage(UsageT &&value)
bool FreeTrialStartDateHasBeenSet() const
Definition UsageRecord.h:84
const Aws::Utils::DateTime & GetAutomatedDiscoveryFreeTrialStartDate() const
Definition UsageRecord.h:64
void SetAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT &&value)
Definition UsageRecord.h:67
bool AutomatedDiscoveryFreeTrialStartDateHasBeenSet() const
Definition UsageRecord.h:65
const Aws::Vector< UsageByAccount > & GetUsage() 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