AWS SDK for C++

AWS SDK for C++ Version 1.11.763

Loading...
Searching...
No Matches
EinvoiceDeliveryPreference.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/invoicing/Invoicing_EXPORTS.h>
10#include <aws/invoicing/model/ConnectionTestingMethod.h>
11#include <aws/invoicing/model/EinvoiceDeliveryAttachmentType.h>
12#include <aws/invoicing/model/EinvoiceDeliveryDocumentType.h>
13#include <aws/invoicing/model/Protocol.h>
14#include <aws/invoicing/model/PurchaseOrderDataSource.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Utils {
20namespace Json {
21class JsonValue;
22class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace Invoicing {
26namespace Model {
27
35 public:
36 AWS_INVOICING_API EinvoiceDeliveryPreference() = default;
39 AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const;
40
42
46 return m_einvoiceDeliveryDocumentTypes;
47 }
48 inline bool EinvoiceDeliveryDocumentTypesHasBeenSet() const { return m_einvoiceDeliveryDocumentTypesHasBeenSet; }
49 template <typename EinvoiceDeliveryDocumentTypesT = Aws::Vector<EinvoiceDeliveryDocumentType>>
50 void SetEinvoiceDeliveryDocumentTypes(EinvoiceDeliveryDocumentTypesT&& value) {
51 m_einvoiceDeliveryDocumentTypesHasBeenSet = true;
52 m_einvoiceDeliveryDocumentTypes = std::forward<EinvoiceDeliveryDocumentTypesT>(value);
53 }
54 template <typename EinvoiceDeliveryDocumentTypesT = Aws::Vector<EinvoiceDeliveryDocumentType>>
55 EinvoiceDeliveryPreference& WithEinvoiceDeliveryDocumentTypes(EinvoiceDeliveryDocumentTypesT&& value) {
56 SetEinvoiceDeliveryDocumentTypes(std::forward<EinvoiceDeliveryDocumentTypesT>(value));
57 return *this;
58 }
60 m_einvoiceDeliveryDocumentTypesHasBeenSet = true;
61 m_einvoiceDeliveryDocumentTypes.push_back(value);
62 return *this;
63 }
65
67
71 return m_einvoiceDeliveryAttachmentTypes;
72 }
73 inline bool EinvoiceDeliveryAttachmentTypesHasBeenSet() const { return m_einvoiceDeliveryAttachmentTypesHasBeenSet; }
74 template <typename EinvoiceDeliveryAttachmentTypesT = Aws::Vector<EinvoiceDeliveryAttachmentType>>
75 void SetEinvoiceDeliveryAttachmentTypes(EinvoiceDeliveryAttachmentTypesT&& value) {
76 m_einvoiceDeliveryAttachmentTypesHasBeenSet = true;
77 m_einvoiceDeliveryAttachmentTypes = std::forward<EinvoiceDeliveryAttachmentTypesT>(value);
78 }
79 template <typename EinvoiceDeliveryAttachmentTypesT = Aws::Vector<EinvoiceDeliveryAttachmentType>>
80 EinvoiceDeliveryPreference& WithEinvoiceDeliveryAttachmentTypes(EinvoiceDeliveryAttachmentTypesT&& value) {
81 SetEinvoiceDeliveryAttachmentTypes(std::forward<EinvoiceDeliveryAttachmentTypesT>(value));
82 return *this;
83 }
85 m_einvoiceDeliveryAttachmentTypesHasBeenSet = true;
86 m_einvoiceDeliveryAttachmentTypes.push_back(value);
87 return *this;
88 }
90
92
95 inline Protocol GetProtocol() const { return m_protocol; }
96 inline bool ProtocolHasBeenSet() const { return m_protocolHasBeenSet; }
97 inline void SetProtocol(Protocol value) {
98 m_protocolHasBeenSet = true;
99 m_protocol = value;
100 }
102 SetProtocol(value);
103 return *this;
104 }
106
108
112 inline const Aws::Vector<PurchaseOrderDataSource>& GetPurchaseOrderDataSources() const { return m_purchaseOrderDataSources; }
113 inline bool PurchaseOrderDataSourcesHasBeenSet() const { return m_purchaseOrderDataSourcesHasBeenSet; }
114 template <typename PurchaseOrderDataSourcesT = Aws::Vector<PurchaseOrderDataSource>>
115 void SetPurchaseOrderDataSources(PurchaseOrderDataSourcesT&& value) {
116 m_purchaseOrderDataSourcesHasBeenSet = true;
117 m_purchaseOrderDataSources = std::forward<PurchaseOrderDataSourcesT>(value);
118 }
119 template <typename PurchaseOrderDataSourcesT = Aws::Vector<PurchaseOrderDataSource>>
120 EinvoiceDeliveryPreference& WithPurchaseOrderDataSources(PurchaseOrderDataSourcesT&& value) {
121 SetPurchaseOrderDataSources(std::forward<PurchaseOrderDataSourcesT>(value));
122 return *this;
123 }
124 template <typename PurchaseOrderDataSourcesT = PurchaseOrderDataSource>
125 EinvoiceDeliveryPreference& AddPurchaseOrderDataSources(PurchaseOrderDataSourcesT&& value) {
126 m_purchaseOrderDataSourcesHasBeenSet = true;
127 m_purchaseOrderDataSources.emplace_back(std::forward<PurchaseOrderDataSourcesT>(value));
128 return *this;
129 }
131
133
136 inline ConnectionTestingMethod GetConnectionTestingMethod() const { return m_connectionTestingMethod; }
137 inline bool ConnectionTestingMethodHasBeenSet() const { return m_connectionTestingMethodHasBeenSet; }
138 inline void SetConnectionTestingMethod(ConnectionTestingMethod value) {
139 m_connectionTestingMethodHasBeenSet = true;
140 m_connectionTestingMethod = value;
141 }
142 inline EinvoiceDeliveryPreference& WithConnectionTestingMethod(ConnectionTestingMethod value) {
144 return *this;
145 }
147
149
152 inline const Aws::Utils::DateTime& GetEinvoiceDeliveryActivationDate() const { return m_einvoiceDeliveryActivationDate; }
153 inline bool EinvoiceDeliveryActivationDateHasBeenSet() const { return m_einvoiceDeliveryActivationDateHasBeenSet; }
154 template <typename EinvoiceDeliveryActivationDateT = Aws::Utils::DateTime>
155 void SetEinvoiceDeliveryActivationDate(EinvoiceDeliveryActivationDateT&& value) {
156 m_einvoiceDeliveryActivationDateHasBeenSet = true;
157 m_einvoiceDeliveryActivationDate = std::forward<EinvoiceDeliveryActivationDateT>(value);
158 }
159 template <typename EinvoiceDeliveryActivationDateT = Aws::Utils::DateTime>
160 EinvoiceDeliveryPreference& WithEinvoiceDeliveryActivationDate(EinvoiceDeliveryActivationDateT&& value) {
161 SetEinvoiceDeliveryActivationDate(std::forward<EinvoiceDeliveryActivationDateT>(value));
162 return *this;
163 }
165 private:
166 Aws::Vector<EinvoiceDeliveryDocumentType> m_einvoiceDeliveryDocumentTypes;
167
168 Aws::Vector<EinvoiceDeliveryAttachmentType> m_einvoiceDeliveryAttachmentTypes;
169
170 Protocol m_protocol{Protocol::NOT_SET};
171
172 Aws::Vector<PurchaseOrderDataSource> m_purchaseOrderDataSources;
173
174 ConnectionTestingMethod m_connectionTestingMethod{ConnectionTestingMethod::NOT_SET};
175
176 Aws::Utils::DateTime m_einvoiceDeliveryActivationDate{};
177 bool m_einvoiceDeliveryDocumentTypesHasBeenSet = false;
178 bool m_einvoiceDeliveryAttachmentTypesHasBeenSet = false;
179 bool m_protocolHasBeenSet = false;
180 bool m_purchaseOrderDataSourcesHasBeenSet = false;
181 bool m_connectionTestingMethodHasBeenSet = false;
182 bool m_einvoiceDeliveryActivationDateHasBeenSet = false;
183};
184
185} // namespace Model
186} // namespace Invoicing
187} // namespace Aws
void SetEinvoiceDeliveryDocumentTypes(EinvoiceDeliveryDocumentTypesT &&value)
EinvoiceDeliveryPreference & WithEinvoiceDeliveryDocumentTypes(EinvoiceDeliveryDocumentTypesT &&value)
EinvoiceDeliveryPreference & AddPurchaseOrderDataSources(PurchaseOrderDataSourcesT &&value)
AWS_INVOICING_API EinvoiceDeliveryPreference & operator=(Aws::Utils::Json::JsonView jsonValue)
EinvoiceDeliveryPreference & WithConnectionTestingMethod(ConnectionTestingMethod value)
AWS_INVOICING_API EinvoiceDeliveryPreference()=default
EinvoiceDeliveryPreference & WithEinvoiceDeliveryActivationDate(EinvoiceDeliveryActivationDateT &&value)
const Aws::Vector< PurchaseOrderDataSource > & GetPurchaseOrderDataSources() const
void SetEinvoiceDeliveryAttachmentTypes(EinvoiceDeliveryAttachmentTypesT &&value)
EinvoiceDeliveryPreference & WithProtocol(Protocol value)
EinvoiceDeliveryPreference & WithEinvoiceDeliveryAttachmentTypes(EinvoiceDeliveryAttachmentTypesT &&value)
const Aws::Vector< EinvoiceDeliveryAttachmentType > & GetEinvoiceDeliveryAttachmentTypes() const
EinvoiceDeliveryPreference & AddEinvoiceDeliveryAttachmentTypes(EinvoiceDeliveryAttachmentType value)
EinvoiceDeliveryPreference & AddEinvoiceDeliveryDocumentTypes(EinvoiceDeliveryDocumentType value)
EinvoiceDeliveryPreference & WithPurchaseOrderDataSources(PurchaseOrderDataSourcesT &&value)
const Aws::Vector< EinvoiceDeliveryDocumentType > & GetEinvoiceDeliveryDocumentTypes() const
void SetConnectionTestingMethod(ConnectionTestingMethod value)
const Aws::Utils::DateTime & GetEinvoiceDeliveryActivationDate() const
void SetEinvoiceDeliveryActivationDate(EinvoiceDeliveryActivationDateT &&value)
AWS_INVOICING_API EinvoiceDeliveryPreference(Aws::Utils::Json::JsonView jsonValue)
void SetPurchaseOrderDataSources(PurchaseOrderDataSourcesT &&value)
AWS_INVOICING_API Aws::Utils::Json::JsonValue Jsonize() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue