AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
UsageRecord.h
1
6#pragma once
7#include <aws/macie2/Macie2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/macie2/model/UsageByAccount.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace Macie2
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_MACIE2_API UsageRecord() = default;
39 AWS_MACIE2_API UsageRecord(Aws::Utils::Json::JsonView jsonValue);
41 AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
49 inline const Aws::String& GetAccountId() const { return m_accountId; }
50 inline bool AccountIdHasBeenSet() const { return m_accountIdHasBeenSet; }
51 template<typename AccountIdT = Aws::String>
52 void SetAccountId(AccountIdT&& value) { m_accountIdHasBeenSet = true; m_accountId = std::forward<AccountIdT>(value); }
53 template<typename AccountIdT = Aws::String>
54 UsageRecord& WithAccountId(AccountIdT&& value) { SetAccountId(std::forward<AccountIdT>(value)); return *this;}
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) { m_automatedDiscoveryFreeTrialStartDateHasBeenSet = true; m_automatedDiscoveryFreeTrialStartDate = std::forward<AutomatedDiscoveryFreeTrialStartDateT>(value); }
68 template<typename AutomatedDiscoveryFreeTrialStartDateT = Aws::Utils::DateTime>
69 UsageRecord& WithAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT&& value) { SetAutomatedDiscoveryFreeTrialStartDate(std::forward<AutomatedDiscoveryFreeTrialStartDateT>(value)); return *this;}
71
73
77 inline const Aws::Utils::DateTime& GetFreeTrialStartDate() const { return m_freeTrialStartDate; }
78 inline bool FreeTrialStartDateHasBeenSet() const { return m_freeTrialStartDateHasBeenSet; }
79 template<typename FreeTrialStartDateT = Aws::Utils::DateTime>
80 void SetFreeTrialStartDate(FreeTrialStartDateT&& value) { m_freeTrialStartDateHasBeenSet = true; m_freeTrialStartDate = std::forward<FreeTrialStartDateT>(value); }
81 template<typename FreeTrialStartDateT = Aws::Utils::DateTime>
82 UsageRecord& WithFreeTrialStartDate(FreeTrialStartDateT&& value) { SetFreeTrialStartDate(std::forward<FreeTrialStartDateT>(value)); return *this;}
84
86
91 inline const Aws::Vector<UsageByAccount>& GetUsage() const { return m_usage; }
92 inline bool UsageHasBeenSet() const { return m_usageHasBeenSet; }
93 template<typename UsageT = Aws::Vector<UsageByAccount>>
94 void SetUsage(UsageT&& value) { m_usageHasBeenSet = true; m_usage = std::forward<UsageT>(value); }
95 template<typename UsageT = Aws::Vector<UsageByAccount>>
96 UsageRecord& WithUsage(UsageT&& value) { SetUsage(std::forward<UsageT>(value)); return *this;}
97 template<typename UsageT = UsageByAccount>
98 UsageRecord& AddUsage(UsageT&& value) { m_usageHasBeenSet = true; m_usage.emplace_back(std::forward<UsageT>(value)); return *this; }
100 private:
101
102 Aws::String m_accountId;
103 bool m_accountIdHasBeenSet = false;
104
105 Aws::Utils::DateTime m_automatedDiscoveryFreeTrialStartDate{};
106 bool m_automatedDiscoveryFreeTrialStartDateHasBeenSet = false;
107
108 Aws::Utils::DateTime m_freeTrialStartDate{};
109 bool m_freeTrialStartDateHasBeenSet = false;
110
112 bool m_usageHasBeenSet = false;
113 };
114
115} // namespace Model
116} // namespace Macie2
117} // namespace Aws
UsageRecord & WithAccountId(AccountIdT &&value)
Definition UsageRecord.h:54
const Aws::String & GetAccountId() const
Definition UsageRecord.h:49
AWS_MACIE2_API UsageRecord()=default
UsageRecord & WithAutomatedDiscoveryFreeTrialStartDate(AutomatedDiscoveryFreeTrialStartDateT &&value)
Definition UsageRecord.h:69
UsageRecord & AddUsage(UsageT &&value)
Definition UsageRecord.h:98
AWS_MACIE2_API UsageRecord(Aws::Utils::Json::JsonView jsonValue)
UsageRecord & WithFreeTrialStartDate(FreeTrialStartDateT &&value)
Definition UsageRecord.h:82
void SetFreeTrialStartDate(FreeTrialStartDateT &&value)
Definition UsageRecord.h:80
AWS_MACIE2_API UsageRecord & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetAccountId(AccountIdT &&value)
Definition UsageRecord.h:52
AWS_MACIE2_API Aws::Utils::Json::JsonValue Jsonize() const
UsageRecord & WithUsage(UsageT &&value)
Definition UsageRecord.h:96
const Aws::Utils::DateTime & GetFreeTrialStartDate() const
Definition UsageRecord.h:77
void SetUsage(UsageT &&value)
Definition UsageRecord.h:94
bool FreeTrialStartDateHasBeenSet() const
Definition UsageRecord.h:78
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
Definition UsageRecord.h:91
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue