AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
ExportLicenseRecommendationsRequest.h
1
6#pragma once
7#include <aws/compute-optimizer/ComputeOptimizerRequest.h>
8#include <aws/compute-optimizer/ComputeOptimizer_EXPORTS.h>
9#include <aws/compute-optimizer/model/ExportableLicenseField.h>
10#include <aws/compute-optimizer/model/FileFormat.h>
11#include <aws/compute-optimizer/model/LicenseRecommendationFilter.h>
12#include <aws/compute-optimizer/model/S3DestinationConfig.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19namespace ComputeOptimizer {
20namespace Model {
21
25 public:
26 AWS_COMPUTEOPTIMIZER_API ExportLicenseRecommendationsRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "ExportLicenseRecommendations"; }
33
34 AWS_COMPUTEOPTIMIZER_API Aws::String SerializePayload() const override;
35
36 AWS_COMPUTEOPTIMIZER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37
39
49 inline const Aws::Vector<Aws::String>& GetAccountIds() const { return m_accountIds; }
50 inline bool AccountIdsHasBeenSet() const { return m_accountIdsHasBeenSet; }
51 template <typename AccountIdsT = Aws::Vector<Aws::String>>
52 void SetAccountIds(AccountIdsT&& value) {
53 m_accountIdsHasBeenSet = true;
54 m_accountIds = std::forward<AccountIdsT>(value);
55 }
56 template <typename AccountIdsT = Aws::Vector<Aws::String>>
58 SetAccountIds(std::forward<AccountIdsT>(value));
59 return *this;
60 }
61 template <typename AccountIdsT = Aws::String>
63 m_accountIdsHasBeenSet = true;
64 m_accountIds.emplace_back(std::forward<AccountIdsT>(value));
65 return *this;
66 }
68
70
74 inline const Aws::Vector<LicenseRecommendationFilter>& GetFilters() const { return m_filters; }
75 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
76 template <typename FiltersT = Aws::Vector<LicenseRecommendationFilter>>
77 void SetFilters(FiltersT&& value) {
78 m_filtersHasBeenSet = true;
79 m_filters = std::forward<FiltersT>(value);
80 }
81 template <typename FiltersT = Aws::Vector<LicenseRecommendationFilter>>
83 SetFilters(std::forward<FiltersT>(value));
84 return *this;
85 }
86 template <typename FiltersT = LicenseRecommendationFilter>
88 m_filtersHasBeenSet = true;
89 m_filters.emplace_back(std::forward<FiltersT>(value));
90 return *this;
91 }
93
95
101 inline const Aws::Vector<ExportableLicenseField>& GetFieldsToExport() const { return m_fieldsToExport; }
102 inline bool FieldsToExportHasBeenSet() const { return m_fieldsToExportHasBeenSet; }
103 template <typename FieldsToExportT = Aws::Vector<ExportableLicenseField>>
104 void SetFieldsToExport(FieldsToExportT&& value) {
105 m_fieldsToExportHasBeenSet = true;
106 m_fieldsToExport = std::forward<FieldsToExportT>(value);
107 }
108 template <typename FieldsToExportT = Aws::Vector<ExportableLicenseField>>
110 SetFieldsToExport(std::forward<FieldsToExportT>(value));
111 return *this;
112 }
114 m_fieldsToExportHasBeenSet = true;
115 m_fieldsToExport.push_back(value);
116 return *this;
117 }
119
121
122 inline const S3DestinationConfig& GetS3DestinationConfig() const { return m_s3DestinationConfig; }
123 inline bool S3DestinationConfigHasBeenSet() const { return m_s3DestinationConfigHasBeenSet; }
124 template <typename S3DestinationConfigT = S3DestinationConfig>
125 void SetS3DestinationConfig(S3DestinationConfigT&& value) {
126 m_s3DestinationConfigHasBeenSet = true;
127 m_s3DestinationConfig = std::forward<S3DestinationConfigT>(value);
128 }
129 template <typename S3DestinationConfigT = S3DestinationConfig>
131 SetS3DestinationConfig(std::forward<S3DestinationConfigT>(value));
132 return *this;
133 }
135
137
141 inline FileFormat GetFileFormat() const { return m_fileFormat; }
142 inline bool FileFormatHasBeenSet() const { return m_fileFormatHasBeenSet; }
143 inline void SetFileFormat(FileFormat value) {
144 m_fileFormatHasBeenSet = true;
145 m_fileFormat = value;
146 }
148 SetFileFormat(value);
149 return *this;
150 }
152
154
167 inline bool GetIncludeMemberAccounts() const { return m_includeMemberAccounts; }
168 inline bool IncludeMemberAccountsHasBeenSet() const { return m_includeMemberAccountsHasBeenSet; }
169 inline void SetIncludeMemberAccounts(bool value) {
170 m_includeMemberAccountsHasBeenSet = true;
171 m_includeMemberAccounts = value;
172 }
175 return *this;
176 }
178 private:
179 Aws::Vector<Aws::String> m_accountIds;
180
182
184
185 S3DestinationConfig m_s3DestinationConfig;
186
187 FileFormat m_fileFormat{FileFormat::NOT_SET};
188
189 bool m_includeMemberAccounts{false};
190 bool m_accountIdsHasBeenSet = false;
191 bool m_filtersHasBeenSet = false;
192 bool m_fieldsToExportHasBeenSet = false;
193 bool m_s3DestinationConfigHasBeenSet = false;
194 bool m_fileFormatHasBeenSet = false;
195 bool m_includeMemberAccountsHasBeenSet = false;
196};
197
198} // namespace Model
199} // namespace ComputeOptimizer
200} // namespace Aws
ExportLicenseRecommendationsRequest & WithAccountIds(AccountIdsT &&value)
const Aws::Vector< LicenseRecommendationFilter > & GetFilters() const
ExportLicenseRecommendationsRequest & WithFieldsToExport(FieldsToExportT &&value)
ExportLicenseRecommendationsRequest & AddFieldsToExport(ExportableLicenseField value)
AWS_COMPUTEOPTIMIZER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
AWS_COMPUTEOPTIMIZER_API Aws::String SerializePayload() const override
AWS_COMPUTEOPTIMIZER_API ExportLicenseRecommendationsRequest()=default
ExportLicenseRecommendationsRequest & WithS3DestinationConfig(S3DestinationConfigT &&value)
ExportLicenseRecommendationsRequest & AddAccountIds(AccountIdsT &&value)
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector