AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
ExportIdleRecommendationsRequest.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/ExportableIdleField.h>
10#include <aws/compute-optimizer/model/FileFormat.h>
11#include <aws/compute-optimizer/model/IdleRecommendationFilter.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 ExportIdleRecommendationsRequest() = 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 "ExportIdleRecommendations"; }
33
34 AWS_COMPUTEOPTIMIZER_API Aws::String SerializePayload() const override;
35
36 AWS_COMPUTEOPTIMIZER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override;
37
39
50 inline const Aws::Vector<Aws::String>& GetAccountIds() const { return m_accountIds; }
51 inline bool AccountIdsHasBeenSet() const { return m_accountIdsHasBeenSet; }
52 template <typename AccountIdsT = Aws::Vector<Aws::String>>
53 void SetAccountIds(AccountIdsT&& value) {
54 m_accountIdsHasBeenSet = true;
55 m_accountIds = std::forward<AccountIdsT>(value);
56 }
57 template <typename AccountIdsT = Aws::Vector<Aws::String>>
59 SetAccountIds(std::forward<AccountIdsT>(value));
60 return *this;
61 }
62 template <typename AccountIdsT = Aws::String>
64 m_accountIdsHasBeenSet = true;
65 m_accountIds.emplace_back(std::forward<AccountIdsT>(value));
66 return *this;
67 }
69
71
75 inline const Aws::Vector<IdleRecommendationFilter>& GetFilters() const { return m_filters; }
76 inline bool FiltersHasBeenSet() const { return m_filtersHasBeenSet; }
77 template <typename FiltersT = Aws::Vector<IdleRecommendationFilter>>
78 void SetFilters(FiltersT&& value) {
79 m_filtersHasBeenSet = true;
80 m_filters = std::forward<FiltersT>(value);
81 }
82 template <typename FiltersT = Aws::Vector<IdleRecommendationFilter>>
84 SetFilters(std::forward<FiltersT>(value));
85 return *this;
86 }
87 template <typename FiltersT = IdleRecommendationFilter>
89 m_filtersHasBeenSet = true;
90 m_filters.emplace_back(std::forward<FiltersT>(value));
91 return *this;
92 }
94
96
102 inline const Aws::Vector<ExportableIdleField>& GetFieldsToExport() const { return m_fieldsToExport; }
103 inline bool FieldsToExportHasBeenSet() const { return m_fieldsToExportHasBeenSet; }
104 template <typename FieldsToExportT = Aws::Vector<ExportableIdleField>>
105 void SetFieldsToExport(FieldsToExportT&& value) {
106 m_fieldsToExportHasBeenSet = true;
107 m_fieldsToExport = std::forward<FieldsToExportT>(value);
108 }
109 template <typename FieldsToExportT = Aws::Vector<ExportableIdleField>>
111 SetFieldsToExport(std::forward<FieldsToExportT>(value));
112 return *this;
113 }
115 m_fieldsToExportHasBeenSet = true;
116 m_fieldsToExport.push_back(value);
117 return *this;
118 }
120
122
123 inline const S3DestinationConfig& GetS3DestinationConfig() const { return m_s3DestinationConfig; }
124 inline bool S3DestinationConfigHasBeenSet() const { return m_s3DestinationConfigHasBeenSet; }
125 template <typename S3DestinationConfigT = S3DestinationConfig>
126 void SetS3DestinationConfig(S3DestinationConfigT&& value) {
127 m_s3DestinationConfigHasBeenSet = true;
128 m_s3DestinationConfig = std::forward<S3DestinationConfigT>(value);
129 }
130 template <typename S3DestinationConfigT = S3DestinationConfig>
132 SetS3DestinationConfig(std::forward<S3DestinationConfigT>(value));
133 return *this;
134 }
136
138
142 inline FileFormat GetFileFormat() const { return m_fileFormat; }
143 inline bool FileFormatHasBeenSet() const { return m_fileFormatHasBeenSet; }
144 inline void SetFileFormat(FileFormat value) {
145 m_fileFormatHasBeenSet = true;
146 m_fileFormat = value;
147 }
149 SetFileFormat(value);
150 return *this;
151 }
153
155
169 inline bool GetIncludeMemberAccounts() const { return m_includeMemberAccounts; }
170 inline bool IncludeMemberAccountsHasBeenSet() const { return m_includeMemberAccountsHasBeenSet; }
171 inline void SetIncludeMemberAccounts(bool value) {
172 m_includeMemberAccountsHasBeenSet = true;
173 m_includeMemberAccounts = value;
174 }
177 return *this;
178 }
180 private:
181 Aws::Vector<Aws::String> m_accountIds;
182
184
185 Aws::Vector<ExportableIdleField> m_fieldsToExport;
186
187 S3DestinationConfig m_s3DestinationConfig;
188
189 FileFormat m_fileFormat{FileFormat::NOT_SET};
190
191 bool m_includeMemberAccounts{false};
192 bool m_accountIdsHasBeenSet = false;
193 bool m_filtersHasBeenSet = false;
194 bool m_fieldsToExportHasBeenSet = false;
195 bool m_s3DestinationConfigHasBeenSet = false;
196 bool m_fileFormatHasBeenSet = false;
197 bool m_includeMemberAccountsHasBeenSet = false;
198};
199
200} // namespace Model
201} // namespace ComputeOptimizer
202} // namespace Aws
ExportIdleRecommendationsRequest & AddFilters(FiltersT &&value)
ExportIdleRecommendationsRequest & WithAccountIds(AccountIdsT &&value)
ExportIdleRecommendationsRequest & WithFilters(FiltersT &&value)
AWS_COMPUTEOPTIMIZER_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
ExportIdleRecommendationsRequest & AddAccountIds(AccountIdsT &&value)
AWS_COMPUTEOPTIMIZER_API ExportIdleRecommendationsRequest()=default
const Aws::Vector< IdleRecommendationFilter > & GetFilters() const
ExportIdleRecommendationsRequest & WithFileFormat(FileFormat value)
ExportIdleRecommendationsRequest & AddFieldsToExport(ExportableIdleField value)
ExportIdleRecommendationsRequest & WithFieldsToExport(FieldsToExportT &&value)
AWS_COMPUTEOPTIMIZER_API Aws::String SerializePayload() const override
ExportIdleRecommendationsRequest & WithS3DestinationConfig(S3DestinationConfigT &&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