AWS SDK for C++

AWS SDK for C++ Version 1.11.712

Loading...
Searching...
No Matches
CreateOrderRequest.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/outposts/OutpostsRequest.h>
10#include <aws/outposts/Outposts_EXPORTS.h>
11#include <aws/outposts/model/LineItemRequest.h>
12#include <aws/outposts/model/PaymentOption.h>
13#include <aws/outposts/model/PaymentTerm.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Outposts {
19namespace Model {
20
24 public:
25 AWS_OUTPOSTS_API CreateOrderRequest() = default;
26
27 // Service request name is the Operation name which will send this request out,
28 // each operation should has unique request name, so that we can get operation's name from this request.
29 // Note: this is not true for response, multiple operations may have the same response name,
30 // so we can not get operation's name from response.
31 inline virtual const char* GetServiceRequestName() const override { return "CreateOrder"; }
32
33 AWS_OUTPOSTS_API Aws::String SerializePayload() const override;
34
36
39 inline const Aws::String& GetOutpostIdentifier() const { return m_outpostIdentifier; }
40 inline bool OutpostIdentifierHasBeenSet() const { return m_outpostIdentifierHasBeenSet; }
41 template <typename OutpostIdentifierT = Aws::String>
42 void SetOutpostIdentifier(OutpostIdentifierT&& value) {
43 m_outpostIdentifierHasBeenSet = true;
44 m_outpostIdentifier = std::forward<OutpostIdentifierT>(value);
45 }
46 template <typename OutpostIdentifierT = Aws::String>
47 CreateOrderRequest& WithOutpostIdentifier(OutpostIdentifierT&& value) {
48 SetOutpostIdentifier(std::forward<OutpostIdentifierT>(value));
49 return *this;
50 }
52
54
57 inline const Aws::Vector<LineItemRequest>& GetLineItems() const { return m_lineItems; }
58 inline bool LineItemsHasBeenSet() const { return m_lineItemsHasBeenSet; }
59 template <typename LineItemsT = Aws::Vector<LineItemRequest>>
60 void SetLineItems(LineItemsT&& value) {
61 m_lineItemsHasBeenSet = true;
62 m_lineItems = std::forward<LineItemsT>(value);
63 }
64 template <typename LineItemsT = Aws::Vector<LineItemRequest>>
65 CreateOrderRequest& WithLineItems(LineItemsT&& value) {
66 SetLineItems(std::forward<LineItemsT>(value));
67 return *this;
68 }
69 template <typename LineItemsT = LineItemRequest>
70 CreateOrderRequest& AddLineItems(LineItemsT&& value) {
71 m_lineItemsHasBeenSet = true;
72 m_lineItems.emplace_back(std::forward<LineItemsT>(value));
73 return *this;
74 }
76
78
81 inline PaymentOption GetPaymentOption() const { return m_paymentOption; }
82 inline bool PaymentOptionHasBeenSet() const { return m_paymentOptionHasBeenSet; }
83 inline void SetPaymentOption(PaymentOption value) {
84 m_paymentOptionHasBeenSet = true;
85 m_paymentOption = value;
86 }
88 SetPaymentOption(value);
89 return *this;
90 }
92
94
97 inline PaymentTerm GetPaymentTerm() const { return m_paymentTerm; }
98 inline bool PaymentTermHasBeenSet() const { return m_paymentTermHasBeenSet; }
99 inline void SetPaymentTerm(PaymentTerm value) {
100 m_paymentTermHasBeenSet = true;
101 m_paymentTerm = value;
102 }
104 SetPaymentTerm(value);
105 return *this;
106 }
108 private:
109 Aws::String m_outpostIdentifier;
110
112
113 PaymentOption m_paymentOption{PaymentOption::NOT_SET};
114
115 PaymentTerm m_paymentTerm{PaymentTerm::NOT_SET};
116 bool m_outpostIdentifierHasBeenSet = false;
117 bool m_lineItemsHasBeenSet = false;
118 bool m_paymentOptionHasBeenSet = false;
119 bool m_paymentTermHasBeenSet = false;
120};
121
122} // namespace Model
123} // namespace Outposts
124} // namespace Aws
const Aws::String & GetOutpostIdentifier() const
AWS_OUTPOSTS_API CreateOrderRequest()=default
virtual const char * GetServiceRequestName() const override
void SetOutpostIdentifier(OutpostIdentifierT &&value)
CreateOrderRequest & WithPaymentTerm(PaymentTerm value)
CreateOrderRequest & WithPaymentOption(PaymentOption value)
CreateOrderRequest & WithOutpostIdentifier(OutpostIdentifierT &&value)
CreateOrderRequest & AddLineItems(LineItemsT &&value)
const Aws::Vector< LineItemRequest > & GetLineItems() const
CreateOrderRequest & WithLineItems(LineItemsT &&value)
AWS_OUTPOSTS_API Aws::String SerializePayload() const override
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector