AWS SDK for C++

AWS SDK for C++ Version 1.11.818

Loading...
Searching...
No Matches
Project.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/partnercentral-selling/PartnerCentralSelling_EXPORTS.h>
10#include <aws/partnercentral-selling/model/AwsPartition.h>
11#include <aws/partnercentral-selling/model/CompetitorName.h>
12#include <aws/partnercentral-selling/model/DeliveryModel.h>
13#include <aws/partnercentral-selling/model/ExpectedContractDuration.h>
14#include <aws/partnercentral-selling/model/ExpectedCustomerSpend.h>
15#include <aws/partnercentral-selling/model/SalesActivity.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace PartnerCentralSelling {
27namespace Model {
28
35class Project {
36 public:
37 AWS_PARTNERCENTRALSELLING_API Project() = default;
38 AWS_PARTNERCENTRALSELLING_API Project(Aws::Utils::Json::JsonView jsonValue);
39 AWS_PARTNERCENTRALSELLING_API Project& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_PARTNERCENTRALSELLING_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
60 inline const Aws::Vector<DeliveryModel>& GetDeliveryModels() const { return m_deliveryModels; }
61 inline bool DeliveryModelsHasBeenSet() const { return m_deliveryModelsHasBeenSet; }
62 template <typename DeliveryModelsT = Aws::Vector<DeliveryModel>>
63 void SetDeliveryModels(DeliveryModelsT&& value) {
64 m_deliveryModelsHasBeenSet = true;
65 m_deliveryModels = std::forward<DeliveryModelsT>(value);
66 }
67 template <typename DeliveryModelsT = Aws::Vector<DeliveryModel>>
68 Project& WithDeliveryModels(DeliveryModelsT&& value) {
69 SetDeliveryModels(std::forward<DeliveryModelsT>(value));
70 return *this;
71 }
73 m_deliveryModelsHasBeenSet = true;
74 m_deliveryModels.push_back(value);
75 return *this;
76 }
78
80
85 inline const Aws::Vector<ExpectedCustomerSpend>& GetExpectedCustomerSpend() const { return m_expectedCustomerSpend; }
86 inline bool ExpectedCustomerSpendHasBeenSet() const { return m_expectedCustomerSpendHasBeenSet; }
87 template <typename ExpectedCustomerSpendT = Aws::Vector<ExpectedCustomerSpend>>
88 void SetExpectedCustomerSpend(ExpectedCustomerSpendT&& value) {
89 m_expectedCustomerSpendHasBeenSet = true;
90 m_expectedCustomerSpend = std::forward<ExpectedCustomerSpendT>(value);
91 }
92 template <typename ExpectedCustomerSpendT = Aws::Vector<ExpectedCustomerSpend>>
93 Project& WithExpectedCustomerSpend(ExpectedCustomerSpendT&& value) {
94 SetExpectedCustomerSpend(std::forward<ExpectedCustomerSpendT>(value));
95 return *this;
96 }
97 template <typename ExpectedCustomerSpendT = ExpectedCustomerSpend>
98 Project& AddExpectedCustomerSpend(ExpectedCustomerSpendT&& value) {
99 m_expectedCustomerSpendHasBeenSet = true;
100 m_expectedCustomerSpend.emplace_back(std::forward<ExpectedCustomerSpendT>(value));
101 return *this;
102 }
104
106
111 inline const ExpectedContractDuration& GetExpectedContractDuration() const { return m_expectedContractDuration; }
112 inline bool ExpectedContractDurationHasBeenSet() const { return m_expectedContractDurationHasBeenSet; }
113 template <typename ExpectedContractDurationT = ExpectedContractDuration>
114 void SetExpectedContractDuration(ExpectedContractDurationT&& value) {
115 m_expectedContractDurationHasBeenSet = true;
116 m_expectedContractDuration = std::forward<ExpectedContractDurationT>(value);
117 }
118 template <typename ExpectedContractDurationT = ExpectedContractDuration>
119 Project& WithExpectedContractDuration(ExpectedContractDurationT&& value) {
120 SetExpectedContractDuration(std::forward<ExpectedContractDurationT>(value));
121 return *this;
122 }
124
126
129 inline const Aws::String& GetTitle() const { return m_title; }
130 inline bool TitleHasBeenSet() const { return m_titleHasBeenSet; }
131 template <typename TitleT = Aws::String>
132 void SetTitle(TitleT&& value) {
133 m_titleHasBeenSet = true;
134 m_title = std::forward<TitleT>(value);
135 }
136 template <typename TitleT = Aws::String>
137 Project& WithTitle(TitleT&& value) {
138 SetTitle(std::forward<TitleT>(value));
139 return *this;
140 }
142
144
155 inline const Aws::Vector<Aws::String>& GetApnPrograms() const { return m_apnPrograms; }
156 inline bool ApnProgramsHasBeenSet() const { return m_apnProgramsHasBeenSet; }
157 template <typename ApnProgramsT = Aws::Vector<Aws::String>>
158 void SetApnPrograms(ApnProgramsT&& value) {
159 m_apnProgramsHasBeenSet = true;
160 m_apnPrograms = std::forward<ApnProgramsT>(value);
161 }
162 template <typename ApnProgramsT = Aws::Vector<Aws::String>>
163 Project& WithApnPrograms(ApnProgramsT&& value) {
164 SetApnPrograms(std::forward<ApnProgramsT>(value));
165 return *this;
166 }
167 template <typename ApnProgramsT = Aws::String>
168 Project& AddApnPrograms(ApnProgramsT&& value) {
169 m_apnProgramsHasBeenSet = true;
170 m_apnPrograms.emplace_back(std::forward<ApnProgramsT>(value));
171 return *this;
172 }
174
176
189 inline const Aws::String& GetCustomerBusinessProblem() const { return m_customerBusinessProblem; }
190 inline bool CustomerBusinessProblemHasBeenSet() const { return m_customerBusinessProblemHasBeenSet; }
191 template <typename CustomerBusinessProblemT = Aws::String>
192 void SetCustomerBusinessProblem(CustomerBusinessProblemT&& value) {
193 m_customerBusinessProblemHasBeenSet = true;
194 m_customerBusinessProblem = std::forward<CustomerBusinessProblemT>(value);
195 }
196 template <typename CustomerBusinessProblemT = Aws::String>
197 Project& WithCustomerBusinessProblem(CustomerBusinessProblemT&& value) {
198 SetCustomerBusinessProblem(std::forward<CustomerBusinessProblemT>(value));
199 return *this;
200 }
202
204
225 inline const Aws::String& GetCustomerUseCase() const { return m_customerUseCase; }
226 inline bool CustomerUseCaseHasBeenSet() const { return m_customerUseCaseHasBeenSet; }
227 template <typename CustomerUseCaseT = Aws::String>
228 void SetCustomerUseCase(CustomerUseCaseT&& value) {
229 m_customerUseCaseHasBeenSet = true;
230 m_customerUseCase = std::forward<CustomerUseCaseT>(value);
231 }
232 template <typename CustomerUseCaseT = Aws::String>
233 Project& WithCustomerUseCase(CustomerUseCaseT&& value) {
234 SetCustomerUseCase(std::forward<CustomerUseCaseT>(value));
235 return *this;
236 }
238
240
243 inline const Aws::String& GetRelatedOpportunityIdentifier() const { return m_relatedOpportunityIdentifier; }
244 inline bool RelatedOpportunityIdentifierHasBeenSet() const { return m_relatedOpportunityIdentifierHasBeenSet; }
245 template <typename RelatedOpportunityIdentifierT = Aws::String>
246 void SetRelatedOpportunityIdentifier(RelatedOpportunityIdentifierT&& value) {
247 m_relatedOpportunityIdentifierHasBeenSet = true;
248 m_relatedOpportunityIdentifier = std::forward<RelatedOpportunityIdentifierT>(value);
249 }
250 template <typename RelatedOpportunityIdentifierT = Aws::String>
251 Project& WithRelatedOpportunityIdentifier(RelatedOpportunityIdentifierT&& value) {
252 SetRelatedOpportunityIdentifier(std::forward<RelatedOpportunityIdentifierT>(value));
253 return *this;
254 }
256
258
277 inline const Aws::Vector<SalesActivity>& GetSalesActivities() const { return m_salesActivities; }
278 inline bool SalesActivitiesHasBeenSet() const { return m_salesActivitiesHasBeenSet; }
279 template <typename SalesActivitiesT = Aws::Vector<SalesActivity>>
280 void SetSalesActivities(SalesActivitiesT&& value) {
281 m_salesActivitiesHasBeenSet = true;
282 m_salesActivities = std::forward<SalesActivitiesT>(value);
283 }
284 template <typename SalesActivitiesT = Aws::Vector<SalesActivity>>
285 Project& WithSalesActivities(SalesActivitiesT&& value) {
286 SetSalesActivities(std::forward<SalesActivitiesT>(value));
287 return *this;
288 }
290 m_salesActivitiesHasBeenSet = true;
291 m_salesActivities.push_back(value);
292 return *this;
293 }
295
297
301 inline CompetitorName GetCompetitorName() const { return m_competitorName; }
302 inline bool CompetitorNameHasBeenSet() const { return m_competitorNameHasBeenSet; }
304 m_competitorNameHasBeenSet = true;
305 m_competitorName = value;
306 }
308 SetCompetitorName(value);
309 return *this;
310 }
312
314
318 inline const Aws::String& GetOtherCompetitorNames() const { return m_otherCompetitorNames; }
319 inline bool OtherCompetitorNamesHasBeenSet() const { return m_otherCompetitorNamesHasBeenSet; }
320 template <typename OtherCompetitorNamesT = Aws::String>
321 void SetOtherCompetitorNames(OtherCompetitorNamesT&& value) {
322 m_otherCompetitorNamesHasBeenSet = true;
323 m_otherCompetitorNames = std::forward<OtherCompetitorNamesT>(value);
324 }
325 template <typename OtherCompetitorNamesT = Aws::String>
326 Project& WithOtherCompetitorNames(OtherCompetitorNamesT&& value) {
327 SetOtherCompetitorNames(std::forward<OtherCompetitorNamesT>(value));
328 return *this;
329 }
331
333
338 inline const Aws::String& GetOtherSolutionDescription() const { return m_otherSolutionDescription; }
339 inline bool OtherSolutionDescriptionHasBeenSet() const { return m_otherSolutionDescriptionHasBeenSet; }
340 template <typename OtherSolutionDescriptionT = Aws::String>
341 void SetOtherSolutionDescription(OtherSolutionDescriptionT&& value) {
342 m_otherSolutionDescriptionHasBeenSet = true;
343 m_otherSolutionDescription = std::forward<OtherSolutionDescriptionT>(value);
344 }
345 template <typename OtherSolutionDescriptionT = Aws::String>
346 Project& WithOtherSolutionDescription(OtherSolutionDescriptionT&& value) {
347 SetOtherSolutionDescription(std::forward<OtherSolutionDescriptionT>(value));
348 return *this;
349 }
351
353
357 inline const Aws::String& GetAdditionalComments() const { return m_additionalComments; }
358 inline bool AdditionalCommentsHasBeenSet() const { return m_additionalCommentsHasBeenSet; }
359 template <typename AdditionalCommentsT = Aws::String>
360 void SetAdditionalComments(AdditionalCommentsT&& value) {
361 m_additionalCommentsHasBeenSet = true;
362 m_additionalComments = std::forward<AdditionalCommentsT>(value);
363 }
364 template <typename AdditionalCommentsT = Aws::String>
365 Project& WithAdditionalComments(AdditionalCommentsT&& value) {
366 SetAdditionalComments(std::forward<AdditionalCommentsT>(value));
367 return *this;
368 }
370
372
377 inline AwsPartition GetAwsPartition() const { return m_awsPartition; }
378 inline bool AwsPartitionHasBeenSet() const { return m_awsPartitionHasBeenSet; }
379 inline void SetAwsPartition(AwsPartition value) {
380 m_awsPartitionHasBeenSet = true;
381 m_awsPartition = value;
382 }
384 SetAwsPartition(value);
385 return *this;
386 }
388 private:
389 Aws::Vector<DeliveryModel> m_deliveryModels;
390
391 Aws::Vector<ExpectedCustomerSpend> m_expectedCustomerSpend;
392
393 ExpectedContractDuration m_expectedContractDuration;
394
395 Aws::String m_title;
396
397 Aws::Vector<Aws::String> m_apnPrograms;
398
399 Aws::String m_customerBusinessProblem;
400
401 Aws::String m_customerUseCase;
402
403 Aws::String m_relatedOpportunityIdentifier;
404
405 Aws::Vector<SalesActivity> m_salesActivities;
406
407 CompetitorName m_competitorName{CompetitorName::NOT_SET};
408
409 Aws::String m_otherCompetitorNames;
410
411 Aws::String m_otherSolutionDescription;
412
413 Aws::String m_additionalComments;
414
415 AwsPartition m_awsPartition{AwsPartition::NOT_SET};
416 bool m_deliveryModelsHasBeenSet = false;
417 bool m_expectedCustomerSpendHasBeenSet = false;
418 bool m_expectedContractDurationHasBeenSet = false;
419 bool m_titleHasBeenSet = false;
420 bool m_apnProgramsHasBeenSet = false;
421 bool m_customerBusinessProblemHasBeenSet = false;
422 bool m_customerUseCaseHasBeenSet = false;
423 bool m_relatedOpportunityIdentifierHasBeenSet = false;
424 bool m_salesActivitiesHasBeenSet = false;
425 bool m_competitorNameHasBeenSet = false;
426 bool m_otherCompetitorNamesHasBeenSet = false;
427 bool m_otherSolutionDescriptionHasBeenSet = false;
428 bool m_additionalCommentsHasBeenSet = false;
429 bool m_awsPartitionHasBeenSet = false;
430};
431
432} // namespace Model
433} // namespace PartnerCentralSelling
434} // namespace Aws
Project & WithCompetitorName(CompetitorName value)
Definition Project.h:307
void SetDeliveryModels(DeliveryModelsT &&value)
Definition Project.h:63
const Aws::String & GetRelatedOpportunityIdentifier() const
Definition Project.h:243
const Aws::Vector< Aws::String > & GetApnPrograms() const
Definition Project.h:155
Project & WithCustomerBusinessProblem(CustomerBusinessProblemT &&value)
Definition Project.h:197
void SetAdditionalComments(AdditionalCommentsT &&value)
Definition Project.h:360
Project & AddApnPrograms(ApnProgramsT &&value)
Definition Project.h:168
Project & WithExpectedContractDuration(ExpectedContractDurationT &&value)
Definition Project.h:119
Project & AddDeliveryModels(DeliveryModel value)
Definition Project.h:72
const Aws::String & GetCustomerUseCase() const
Definition Project.h:225
Project & WithAwsPartition(AwsPartition value)
Definition Project.h:383
Project & WithDeliveryModels(DeliveryModelsT &&value)
Definition Project.h:68
Project & WithAdditionalComments(AdditionalCommentsT &&value)
Definition Project.h:365
AWS_PARTNERCENTRALSELLING_API Project(Aws::Utils::Json::JsonView jsonValue)
void SetCustomerUseCase(CustomerUseCaseT &&value)
Definition Project.h:228
Project & WithApnPrograms(ApnProgramsT &&value)
Definition Project.h:163
const Aws::Vector< ExpectedCustomerSpend > & GetExpectedCustomerSpend() const
Definition Project.h:85
void SetOtherCompetitorNames(OtherCompetitorNamesT &&value)
Definition Project.h:321
Project & AddSalesActivities(SalesActivity value)
Definition Project.h:289
CompetitorName GetCompetitorName() const
Definition Project.h:301
Project & WithRelatedOpportunityIdentifier(RelatedOpportunityIdentifierT &&value)
Definition Project.h:251
const Aws::String & GetOtherSolutionDescription() const
Definition Project.h:338
const Aws::String & GetTitle() const
Definition Project.h:129
const Aws::String & GetOtherCompetitorNames() const
Definition Project.h:318
AWS_PARTNERCENTRALSELLING_API Aws::Utils::Json::JsonValue Jsonize() const
void SetSalesActivities(SalesActivitiesT &&value)
Definition Project.h:280
const Aws::String & GetCustomerBusinessProblem() const
Definition Project.h:189
void SetCompetitorName(CompetitorName value)
Definition Project.h:303
AWS_PARTNERCENTRALSELLING_API Project & operator=(Aws::Utils::Json::JsonView jsonValue)
Project & WithCustomerUseCase(CustomerUseCaseT &&value)
Definition Project.h:233
Project & WithSalesActivities(SalesActivitiesT &&value)
Definition Project.h:285
AWS_PARTNERCENTRALSELLING_API Project()=default
void SetOtherSolutionDescription(OtherSolutionDescriptionT &&value)
Definition Project.h:341
void SetExpectedContractDuration(ExpectedContractDurationT &&value)
Definition Project.h:114
Project & AddExpectedCustomerSpend(ExpectedCustomerSpendT &&value)
Definition Project.h:98
void SetCustomerBusinessProblem(CustomerBusinessProblemT &&value)
Definition Project.h:192
Project & WithExpectedCustomerSpend(ExpectedCustomerSpendT &&value)
Definition Project.h:93
void SetApnPrograms(ApnProgramsT &&value)
Definition Project.h:158
const Aws::Vector< DeliveryModel > & GetDeliveryModels() const
Definition Project.h:60
void SetAwsPartition(AwsPartition value)
Definition Project.h:379
void SetExpectedCustomerSpend(ExpectedCustomerSpendT &&value)
Definition Project.h:88
Project & WithOtherSolutionDescription(OtherSolutionDescriptionT &&value)
Definition Project.h:346
Project & WithOtherCompetitorNames(OtherCompetitorNamesT &&value)
Definition Project.h:326
const Aws::Vector< SalesActivity > & GetSalesActivities() const
Definition Project.h:277
const ExpectedContractDuration & GetExpectedContractDuration() const
Definition Project.h:111
void SetRelatedOpportunityIdentifier(RelatedOpportunityIdentifierT &&value)
Definition Project.h:246
Project & WithTitle(TitleT &&value)
Definition Project.h:137
const Aws::String & GetAdditionalComments() const
Definition Project.h:357
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue