AWS SDK for C++

AWS SDK for C++ Version 1.11.742

Loading...
Searching...
No Matches
AccessBudget.h
1
6#pragma once
7#include <aws/cleanrooms/CleanRooms_EXPORTS.h>
8#include <aws/cleanrooms/model/AccessBudgetDetails.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace CleanRooms {
22namespace Model {
23
35 public:
36 AWS_CLEANROOMS_API AccessBudget() = default;
37 AWS_CLEANROOMS_API AccessBudget(Aws::Utils::Json::JsonView jsonValue);
38 AWS_CLEANROOMS_API AccessBudget& operator=(Aws::Utils::Json::JsonView jsonValue);
39 AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
45 inline const Aws::String& GetResourceArn() const { return m_resourceArn; }
46 inline bool ResourceArnHasBeenSet() const { return m_resourceArnHasBeenSet; }
47 template <typename ResourceArnT = Aws::String>
48 void SetResourceArn(ResourceArnT&& value) {
49 m_resourceArnHasBeenSet = true;
50 m_resourceArn = std::forward<ResourceArnT>(value);
51 }
52 template <typename ResourceArnT = Aws::String>
53 AccessBudget& WithResourceArn(ResourceArnT&& value) {
54 SetResourceArn(std::forward<ResourceArnT>(value));
55 return *this;
56 }
58
60
64 inline const Aws::Vector<AccessBudgetDetails>& GetDetails() const { return m_details; }
65 inline bool DetailsHasBeenSet() const { return m_detailsHasBeenSet; }
66 template <typename DetailsT = Aws::Vector<AccessBudgetDetails>>
67 void SetDetails(DetailsT&& value) {
68 m_detailsHasBeenSet = true;
69 m_details = std::forward<DetailsT>(value);
70 }
71 template <typename DetailsT = Aws::Vector<AccessBudgetDetails>>
72 AccessBudget& WithDetails(DetailsT&& value) {
73 SetDetails(std::forward<DetailsT>(value));
74 return *this;
75 }
76 template <typename DetailsT = AccessBudgetDetails>
77 AccessBudget& AddDetails(DetailsT&& value) {
78 m_detailsHasBeenSet = true;
79 m_details.emplace_back(std::forward<DetailsT>(value));
80 return *this;
81 }
83
85
90 inline int GetAggregateRemainingBudget() const { return m_aggregateRemainingBudget; }
91 inline bool AggregateRemainingBudgetHasBeenSet() const { return m_aggregateRemainingBudgetHasBeenSet; }
92 inline void SetAggregateRemainingBudget(int value) {
93 m_aggregateRemainingBudgetHasBeenSet = true;
94 m_aggregateRemainingBudget = value;
95 }
98 return *this;
99 }
101 private:
102 Aws::String m_resourceArn;
103
105
106 int m_aggregateRemainingBudget{0};
107 bool m_resourceArnHasBeenSet = false;
108 bool m_detailsHasBeenSet = false;
109 bool m_aggregateRemainingBudgetHasBeenSet = false;
110};
111
112} // namespace Model
113} // namespace CleanRooms
114} // namespace Aws
AWS_CLEANROOMS_API AccessBudget()=default
const Aws::Vector< AccessBudgetDetails > & GetDetails() const
AccessBudget & WithResourceArn(ResourceArnT &&value)
AccessBudget & WithAggregateRemainingBudget(int value)
AccessBudget & WithDetails(DetailsT &&value)
AccessBudget & AddDetails(DetailsT &&value)
const Aws::String & GetResourceArn() const
AWS_CLEANROOMS_API AccessBudget(Aws::Utils::Json::JsonView jsonValue)
void SetResourceArn(ResourceArnT &&value)
AWS_CLEANROOMS_API AccessBudget & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetDetails(DetailsT &&value)
AWS_CLEANROOMS_API Aws::Utils::Json::JsonValue Jsonize() 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