AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
InvoiceUnitRule.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/invoicing/Invoicing_EXPORTS.h>
10
11#include <utility>
12
13namespace Aws {
14namespace Utils {
15namespace Json {
16class JsonValue;
17class JsonView;
18} // namespace Json
19} // namespace Utils
20namespace Invoicing {
21namespace Model {
22
31 public:
32 AWS_INVOICING_API InvoiceUnitRule() = default;
33 AWS_INVOICING_API InvoiceUnitRule(Aws::Utils::Json::JsonView jsonValue);
35 AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
42 inline const Aws::Vector<Aws::String>& GetLinkedAccounts() const { return m_linkedAccounts; }
43 inline bool LinkedAccountsHasBeenSet() const { return m_linkedAccountsHasBeenSet; }
44 template <typename LinkedAccountsT = Aws::Vector<Aws::String>>
45 void SetLinkedAccounts(LinkedAccountsT&& value) {
46 m_linkedAccountsHasBeenSet = true;
47 m_linkedAccounts = std::forward<LinkedAccountsT>(value);
48 }
49 template <typename LinkedAccountsT = Aws::Vector<Aws::String>>
50 InvoiceUnitRule& WithLinkedAccounts(LinkedAccountsT&& value) {
51 SetLinkedAccounts(std::forward<LinkedAccountsT>(value));
52 return *this;
53 }
54 template <typename LinkedAccountsT = Aws::String>
55 InvoiceUnitRule& AddLinkedAccounts(LinkedAccountsT&& value) {
56 m_linkedAccountsHasBeenSet = true;
57 m_linkedAccounts.emplace_back(std::forward<LinkedAccountsT>(value));
58 return *this;
59 }
61
63
69 inline const Aws::Vector<Aws::String>& GetBillSourceAccounts() const { return m_billSourceAccounts; }
70 inline bool BillSourceAccountsHasBeenSet() const { return m_billSourceAccountsHasBeenSet; }
71 template <typename BillSourceAccountsT = Aws::Vector<Aws::String>>
72 void SetBillSourceAccounts(BillSourceAccountsT&& value) {
73 m_billSourceAccountsHasBeenSet = true;
74 m_billSourceAccounts = std::forward<BillSourceAccountsT>(value);
75 }
76 template <typename BillSourceAccountsT = Aws::Vector<Aws::String>>
77 InvoiceUnitRule& WithBillSourceAccounts(BillSourceAccountsT&& value) {
78 SetBillSourceAccounts(std::forward<BillSourceAccountsT>(value));
79 return *this;
80 }
81 template <typename BillSourceAccountsT = Aws::String>
82 InvoiceUnitRule& AddBillSourceAccounts(BillSourceAccountsT&& value) {
83 m_billSourceAccountsHasBeenSet = true;
84 m_billSourceAccounts.emplace_back(std::forward<BillSourceAccountsT>(value));
85 return *this;
86 }
88 private:
89 Aws::Vector<Aws::String> m_linkedAccounts;
90
91 Aws::Vector<Aws::String> m_billSourceAccounts;
92 bool m_linkedAccountsHasBeenSet = false;
93 bool m_billSourceAccountsHasBeenSet = false;
94};
95
96} // namespace Model
97} // namespace Invoicing
98} // namespace Aws
const Aws::Vector< Aws::String > & GetLinkedAccounts() const
AWS_INVOICING_API InvoiceUnitRule(Aws::Utils::Json::JsonView jsonValue)
InvoiceUnitRule & WithBillSourceAccounts(BillSourceAccountsT &&value)
AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const
InvoiceUnitRule & AddBillSourceAccounts(BillSourceAccountsT &&value)
InvoiceUnitRule & WithLinkedAccounts(LinkedAccountsT &&value)
void SetBillSourceAccounts(BillSourceAccountsT &&value)
AWS_INVOICING_API InvoiceUnitRule()=default
AWS_INVOICING_API InvoiceUnitRule & operator=(Aws::Utils::Json::JsonView jsonValue)
InvoiceUnitRule & AddLinkedAccounts(LinkedAccountsT &&value)
const Aws::Vector< Aws::String > & GetBillSourceAccounts() const
void SetLinkedAccounts(LinkedAccountsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue