AWS SDK for C++

AWS SDK for C++ Version 1.11.710

Loading...
Searching...
No Matches
CreditDetails.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/partnercentral-benefits/PartnerCentralBenefits_EXPORTS.h>
9#include <aws/partnercentral-benefits/model/CreditCode.h>
10#include <aws/partnercentral-benefits/model/MonetaryValue.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace PartnerCentralBenefits {
22namespace Model {
23
31 public:
32 AWS_PARTNERCENTRALBENEFITS_API CreditDetails() = default;
33 AWS_PARTNERCENTRALBENEFITS_API CreditDetails(Aws::Utils::Json::JsonView jsonValue);
34 AWS_PARTNERCENTRALBENEFITS_API CreditDetails& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_PARTNERCENTRALBENEFITS_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const MonetaryValue& GetAllocatedAmount() const { return m_allocatedAmount; }
42 inline bool AllocatedAmountHasBeenSet() const { return m_allocatedAmountHasBeenSet; }
43 template <typename AllocatedAmountT = MonetaryValue>
44 void SetAllocatedAmount(AllocatedAmountT&& value) {
45 m_allocatedAmountHasBeenSet = true;
46 m_allocatedAmount = std::forward<AllocatedAmountT>(value);
47 }
48 template <typename AllocatedAmountT = MonetaryValue>
49 CreditDetails& WithAllocatedAmount(AllocatedAmountT&& value) {
50 SetAllocatedAmount(std::forward<AllocatedAmountT>(value));
51 return *this;
52 }
54
56
60 inline const MonetaryValue& GetIssuedAmount() const { return m_issuedAmount; }
61 inline bool IssuedAmountHasBeenSet() const { return m_issuedAmountHasBeenSet; }
62 template <typename IssuedAmountT = MonetaryValue>
63 void SetIssuedAmount(IssuedAmountT&& value) {
64 m_issuedAmountHasBeenSet = true;
65 m_issuedAmount = std::forward<IssuedAmountT>(value);
66 }
67 template <typename IssuedAmountT = MonetaryValue>
68 CreditDetails& WithIssuedAmount(IssuedAmountT&& value) {
69 SetIssuedAmount(std::forward<IssuedAmountT>(value));
70 return *this;
71 }
73
75
79 inline const Aws::Vector<CreditCode>& GetCodes() const { return m_codes; }
80 inline bool CodesHasBeenSet() const { return m_codesHasBeenSet; }
81 template <typename CodesT = Aws::Vector<CreditCode>>
82 void SetCodes(CodesT&& value) {
83 m_codesHasBeenSet = true;
84 m_codes = std::forward<CodesT>(value);
85 }
86 template <typename CodesT = Aws::Vector<CreditCode>>
87 CreditDetails& WithCodes(CodesT&& value) {
88 SetCodes(std::forward<CodesT>(value));
89 return *this;
90 }
91 template <typename CodesT = CreditCode>
92 CreditDetails& AddCodes(CodesT&& value) {
93 m_codesHasBeenSet = true;
94 m_codes.emplace_back(std::forward<CodesT>(value));
95 return *this;
96 }
98 private:
99 MonetaryValue m_allocatedAmount;
100
101 MonetaryValue m_issuedAmount;
102
104 bool m_allocatedAmountHasBeenSet = false;
105 bool m_issuedAmountHasBeenSet = false;
106 bool m_codesHasBeenSet = false;
107};
108
109} // namespace Model
110} // namespace PartnerCentralBenefits
111} // namespace Aws
const MonetaryValue & GetIssuedAmount() const
AWS_PARTNERCENTRALBENEFITS_API CreditDetails(Aws::Utils::Json::JsonView jsonValue)
AWS_PARTNERCENTRALBENEFITS_API CreditDetails & operator=(Aws::Utils::Json::JsonView jsonValue)
const MonetaryValue & GetAllocatedAmount() const
AWS_PARTNERCENTRALBENEFITS_API Aws::Utils::Json::JsonValue Jsonize() const
void SetAllocatedAmount(AllocatedAmountT &&value)
CreditDetails & WithIssuedAmount(IssuedAmountT &&value)
CreditDetails & WithCodes(CodesT &&value)
const Aws::Vector< CreditCode > & GetCodes() const
CreditDetails & WithAllocatedAmount(AllocatedAmountT &&value)
AWS_PARTNERCENTRALBENEFITS_API CreditDetails()=default
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue