AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
ExpenseDocument.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/textract/Textract_EXPORTS.h>
9#include <aws/textract/model/Block.h>
10#include <aws/textract/model/ExpenseField.h>
11#include <aws/textract/model/LineItemGroup.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace Textract {
23namespace Model {
24
32 public:
33 AWS_TEXTRACT_API ExpenseDocument() = default;
34 AWS_TEXTRACT_API ExpenseDocument(Aws::Utils::Json::JsonView jsonValue);
36 AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
43 inline int GetExpenseIndex() const { return m_expenseIndex; }
44 inline bool ExpenseIndexHasBeenSet() const { return m_expenseIndexHasBeenSet; }
45 inline void SetExpenseIndex(int value) {
46 m_expenseIndexHasBeenSet = true;
47 m_expenseIndex = value;
48 }
49 inline ExpenseDocument& WithExpenseIndex(int value) {
50 SetExpenseIndex(value);
51 return *this;
52 }
54
56
59 inline const Aws::Vector<ExpenseField>& GetSummaryFields() const { return m_summaryFields; }
60 inline bool SummaryFieldsHasBeenSet() const { return m_summaryFieldsHasBeenSet; }
61 template <typename SummaryFieldsT = Aws::Vector<ExpenseField>>
62 void SetSummaryFields(SummaryFieldsT&& value) {
63 m_summaryFieldsHasBeenSet = true;
64 m_summaryFields = std::forward<SummaryFieldsT>(value);
65 }
66 template <typename SummaryFieldsT = Aws::Vector<ExpenseField>>
67 ExpenseDocument& WithSummaryFields(SummaryFieldsT&& value) {
68 SetSummaryFields(std::forward<SummaryFieldsT>(value));
69 return *this;
70 }
71 template <typename SummaryFieldsT = ExpenseField>
72 ExpenseDocument& AddSummaryFields(SummaryFieldsT&& value) {
73 m_summaryFieldsHasBeenSet = true;
74 m_summaryFields.emplace_back(std::forward<SummaryFieldsT>(value));
75 return *this;
76 }
78
80
84 inline const Aws::Vector<LineItemGroup>& GetLineItemGroups() const { return m_lineItemGroups; }
85 inline bool LineItemGroupsHasBeenSet() const { return m_lineItemGroupsHasBeenSet; }
86 template <typename LineItemGroupsT = Aws::Vector<LineItemGroup>>
87 void SetLineItemGroups(LineItemGroupsT&& value) {
88 m_lineItemGroupsHasBeenSet = true;
89 m_lineItemGroups = std::forward<LineItemGroupsT>(value);
90 }
91 template <typename LineItemGroupsT = Aws::Vector<LineItemGroup>>
92 ExpenseDocument& WithLineItemGroups(LineItemGroupsT&& value) {
93 SetLineItemGroups(std::forward<LineItemGroupsT>(value));
94 return *this;
95 }
96 template <typename LineItemGroupsT = LineItemGroup>
97 ExpenseDocument& AddLineItemGroups(LineItemGroupsT&& value) {
98 m_lineItemGroupsHasBeenSet = true;
99 m_lineItemGroups.emplace_back(std::forward<LineItemGroupsT>(value));
100 return *this;
101 }
103
105
109 inline const Aws::Vector<Block>& GetBlocks() const { return m_blocks; }
110 inline bool BlocksHasBeenSet() const { return m_blocksHasBeenSet; }
111 template <typename BlocksT = Aws::Vector<Block>>
112 void SetBlocks(BlocksT&& value) {
113 m_blocksHasBeenSet = true;
114 m_blocks = std::forward<BlocksT>(value);
115 }
116 template <typename BlocksT = Aws::Vector<Block>>
117 ExpenseDocument& WithBlocks(BlocksT&& value) {
118 SetBlocks(std::forward<BlocksT>(value));
119 return *this;
120 }
121 template <typename BlocksT = Block>
122 ExpenseDocument& AddBlocks(BlocksT&& value) {
123 m_blocksHasBeenSet = true;
124 m_blocks.emplace_back(std::forward<BlocksT>(value));
125 return *this;
126 }
128 private:
129 int m_expenseIndex{0};
130
131 Aws::Vector<ExpenseField> m_summaryFields;
132
133 Aws::Vector<LineItemGroup> m_lineItemGroups;
134
135 Aws::Vector<Block> m_blocks;
136 bool m_expenseIndexHasBeenSet = false;
137 bool m_summaryFieldsHasBeenSet = false;
138 bool m_lineItemGroupsHasBeenSet = false;
139 bool m_blocksHasBeenSet = false;
140};
141
142} // namespace Model
143} // namespace Textract
144} // namespace Aws
ExpenseDocument & WithSummaryFields(SummaryFieldsT &&value)
const Aws::Vector< Block > & GetBlocks() const
AWS_TEXTRACT_API ExpenseDocument(Aws::Utils::Json::JsonView jsonValue)
ExpenseDocument & AddBlocks(BlocksT &&value)
const Aws::Vector< ExpenseField > & GetSummaryFields() const
ExpenseDocument & WithLineItemGroups(LineItemGroupsT &&value)
const Aws::Vector< LineItemGroup > & GetLineItemGroups() const
ExpenseDocument & AddSummaryFields(SummaryFieldsT &&value)
AWS_TEXTRACT_API ExpenseDocument & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_TEXTRACT_API Aws::Utils::Json::JsonValue Jsonize() const
ExpenseDocument & WithBlocks(BlocksT &&value)
ExpenseDocument & WithExpenseIndex(int value)
void SetLineItemGroups(LineItemGroupsT &&value)
AWS_TEXTRACT_API ExpenseDocument()=default
void SetSummaryFields(SummaryFieldsT &&value)
ExpenseDocument & AddLineItemGroups(LineItemGroupsT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue