AWS SDK for C++

AWS SDK for C++ Version 1.11.719

Loading...
Searching...
No Matches
Customer.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/partnercentral-selling/PartnerCentralSelling_EXPORTS.h>
9#include <aws/partnercentral-selling/model/Account.h>
10#include <aws/partnercentral-selling/model/Contact.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace PartnerCentralSelling {
22namespace Model {
23
30class Customer {
31 public:
32 AWS_PARTNERCENTRALSELLING_API Customer() = default;
33 AWS_PARTNERCENTRALSELLING_API Customer(Aws::Utils::Json::JsonView jsonValue);
34 AWS_PARTNERCENTRALSELLING_API Customer& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_PARTNERCENTRALSELLING_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Account& GetAccount() const { return m_account; }
42 inline bool AccountHasBeenSet() const { return m_accountHasBeenSet; }
43 template <typename AccountT = Account>
44 void SetAccount(AccountT&& value) {
45 m_accountHasBeenSet = true;
46 m_account = std::forward<AccountT>(value);
47 }
48 template <typename AccountT = Account>
49 Customer& WithAccount(AccountT&& value) {
50 SetAccount(std::forward<AccountT>(value));
51 return *this;
52 }
54
56
63 inline const Aws::Vector<Contact>& GetContacts() const { return m_contacts; }
64 inline bool ContactsHasBeenSet() const { return m_contactsHasBeenSet; }
65 template <typename ContactsT = Aws::Vector<Contact>>
66 void SetContacts(ContactsT&& value) {
67 m_contactsHasBeenSet = true;
68 m_contacts = std::forward<ContactsT>(value);
69 }
70 template <typename ContactsT = Aws::Vector<Contact>>
71 Customer& WithContacts(ContactsT&& value) {
72 SetContacts(std::forward<ContactsT>(value));
73 return *this;
74 }
75 template <typename ContactsT = Contact>
76 Customer& AddContacts(ContactsT&& value) {
77 m_contactsHasBeenSet = true;
78 m_contacts.emplace_back(std::forward<ContactsT>(value));
79 return *this;
80 }
82 private:
83 Account m_account;
84
85 Aws::Vector<Contact> m_contacts;
86 bool m_accountHasBeenSet = false;
87 bool m_contactsHasBeenSet = false;
88};
89
90} // namespace Model
91} // namespace PartnerCentralSelling
92} // namespace Aws
Customer & WithAccount(AccountT &&value)
Definition Customer.h:49
AWS_PARTNERCENTRALSELLING_API Customer()=default
void SetContacts(ContactsT &&value)
Definition Customer.h:66
Customer & WithContacts(ContactsT &&value)
Definition Customer.h:71
const Aws::Vector< Contact > & GetContacts() const
Definition Customer.h:63
AWS_PARTNERCENTRALSELLING_API Customer & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_PARTNERCENTRALSELLING_API Customer(Aws::Utils::Json::JsonView jsonValue)
AWS_PARTNERCENTRALSELLING_API Aws::Utils::Json::JsonValue Jsonize() const
Customer & AddContacts(ContactsT &&value)
Definition Customer.h:76
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue