From 12f3db40fbc628c005b975f1912c90bbbea0e654 Mon Sep 17 00:00:00 2001 From: aws-sdk-cpp-automation Date: Wed, 22 Apr 2020 19:10:42 +0000 Subject: [PATCH] Add support for code review and recommendation feedback APIs. This release is to support AWS Firewall Manager policy with Organizational Unit scope. Amazon Redshift support for usage limits This change adds a new field 'OptionalDeployment' to ServiceSoftwareOptions to indicate whether a service software update is optional or mandatory. If True, it indicates that the update is optional, and the service software is not automatically updated. If False, the service software is automatically updated after AutomatedUpdateDate. Adding ServiceUnavailableException as one of the expected exceptions --- .../CodeGuruReviewerClient.h | 237 +++++- .../model/AssociateRepositoryRequest.h | 216 +++--- .../aws/codeguru-reviewer/model/CodeReview.h | 574 +++++++++++++++ .../model/CodeReviewSummary.h | 496 +++++++++++++ .../model/CommitDiffSourceCodeType.h | 142 ++++ .../model/DescribeCodeReviewRequest.h | 93 +++ .../model/DescribeCodeReviewResult.h | 77 ++ .../DescribeRecommendationFeedbackRequest.h | 203 ++++++ .../DescribeRecommendationFeedbackResult.h | 77 ++ .../DescribeRepositoryAssociationRequest.h | 24 +- .../aws/codeguru-reviewer/model/JobState.h | 43 ++ .../model/ListCodeReviewsRequest.h | 367 ++++++++++ .../model/ListCodeReviewsResult.h | 127 ++++ .../model/ListRecommendationFeedbackRequest.h | 330 +++++++++ .../model/ListRecommendationFeedbackResult.h | 148 ++++ .../model/ListRecommendationsRequest.h | 171 +++++ .../model/ListRecommendationsResult.h | 127 ++++ .../model/ListRepositoryAssociationsRequest.h | 163 +++-- .../aws/codeguru-reviewer/model/Metrics.h | 101 +++ .../codeguru-reviewer/model/MetricsSummary.h | 100 +++ .../model/PutRecommendationFeedbackRequest.h | 199 +++++ .../model/PutRecommendationFeedbackResult.h | 46 ++ .../aws/codeguru-reviewer/model/Reaction.h | 41 ++ .../model/RecommendationFeedback.h | 318 ++++++++ .../model/RecommendationFeedbackSummary.h | 197 +++++ .../model/RecommendationSummary.h | 262 +++++++ .../model/RepositoryAssociation.h | 16 +- .../model/RepositoryAssociationSummary.h | 18 +- .../codeguru-reviewer/model/SourceCodeType.h | 88 +++ .../aws/codeguru-reviewer/model/Type.h | 40 + .../source/CodeGuruReviewerClient.cpp | 252 +++++++ .../source/model/CodeReview.cpp | 250 +++++++ .../source/model/CodeReviewSummary.cpp | 220 ++++++ .../source/model/CommitDiffSourceCodeType.cpp | 84 +++ .../model/DescribeCodeReviewRequest.cpp | 37 + .../source/model/DescribeCodeReviewResult.cpp | 50 ++ .../DescribeRecommendationFeedbackRequest.cpp | 60 ++ .../DescribeRecommendationFeedbackResult.cpp | 50 ++ .../source/model/JobState.cpp | 94 +++ .../source/model/ListCodeReviewsRequest.cpp | 102 +++ .../source/model/ListCodeReviewsResult.cpp | 59 ++ .../ListRecommendationFeedbackRequest.cpp | 83 +++ .../ListRecommendationFeedbackResult.cpp | 59 ++ .../model/ListRecommendationsRequest.cpp | 61 ++ .../model/ListRecommendationsResult.cpp | 59 ++ .../source/model/Metrics.cpp | 88 +++ .../source/model/MetricsSummary.cpp | 88 +++ .../PutRecommendationFeedbackRequest.cpp | 64 ++ .../model/PutRecommendationFeedbackResult.cpp | 44 ++ .../source/model/Reaction.cpp | 80 ++ .../source/model/RecommendationFeedback.cpp | 150 ++++ .../model/RecommendationFeedbackSummary.cpp | 107 +++ .../source/model/RecommendationSummary.cpp | 133 ++++ .../source/model/SourceCodeType.cpp | 69 ++ .../source/model/Type.cpp | 73 ++ .../include/aws/core/VersionConfig.h | 2 +- .../aws/es/model/ServiceSoftwareOptions.h | 32 + .../source/model/ServiceSoftwareOptions.cpp | 21 +- aws-cpp-sdk-fms/include/aws/fms/FMSClient.h | 54 +- .../aws/fms/model/CustomerPolicyScopeIdType.h | 3 +- .../include/aws/fms/model/Policy.h | 520 +++++++++---- .../aws/fms/model/SecurityServicePolicyData.h | 144 +--- .../model/CustomerPolicyScopeIdType.cpp | 7 + .../include/aws/redshift/RedshiftClient.h | 162 ++++ .../include/aws/redshift/RedshiftErrors.h | 5 +- .../redshift/model/CreateUsageLimitRequest.h | 347 +++++++++ .../redshift/model/CreateUsageLimitResult.h | 356 +++++++++ .../redshift/model/DeleteUsageLimitRequest.h | 97 +++ .../model/DescribeUsageLimitsRequest.h | 501 +++++++++++++ .../model/DescribeUsageLimitsResult.h | 181 +++++ .../redshift/model/ModifyUsageLimitRequest.h | 166 +++++ .../redshift/model/ModifyUsageLimitResult.h | 356 +++++++++ .../model/RestoreFromClusterSnapshotRequest.h | 16 +- .../include/aws/redshift/model/UsageLimit.h | 417 +++++++++++ .../redshift/model/UsageLimitBreachAction.h | 42 ++ .../redshift/model/UsageLimitFeatureType.h | 41 ++ .../aws/redshift/model/UsageLimitLimitType.h | 41 ++ .../aws/redshift/model/UsageLimitPeriod.h | 42 ++ .../source/RedshiftClient.cpp | 144 ++++ .../source/RedshiftErrors.cpp | 15 + .../source/model/CreateUsageLimitRequest.cpp | 91 +++ .../source/model/CreateUsageLimitResult.cpp | 115 +++ .../source/model/DeleteUsageLimitRequest.cpp | 45 ++ .../model/DescribeUsageLimitsRequest.cpp | 95 +++ .../model/DescribeUsageLimitsResult.cpp | 75 ++ .../source/model/ModifyUsageLimitRequest.cpp | 59 ++ .../source/model/ModifyUsageLimitResult.cpp | 115 +++ .../source/model/UsageLimit.cpp | 242 ++++++ .../source/model/UsageLimitBreachAction.cpp | 87 +++ .../source/model/UsageLimitFeatureType.cpp | 80 ++ .../source/model/UsageLimitLimitType.cpp | 80 ++ .../source/model/UsageLimitPeriod.cpp | 87 +++ .../model/TranscriptResultStream.h | 35 + .../model/StartStreamTranscriptionHandler.cpp | 2 +- .../codeguru-reviewer-2019-09-19.normal.json | 689 +++++++++++++++++- .../es-2015-01-01.normal.json | 4 + .../fms-2018-01-01.normal.json | 13 +- .../redshift-2012-12-01.normal.json | 293 +++++++- ...ranscribe-streaming-2017-10-26.normal.json | 16 +- 99 files changed, 12862 insertions(+), 530 deletions(-) create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReview.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReviewSummary.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CommitDiffSourceCodeType.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/JobState.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Metrics.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/MetricsSummary.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackRequest.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackResult.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Reaction.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedback.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedbackSummary.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationSummary.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/SourceCodeType.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Type.h create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/CodeReview.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/CodeReviewSummary.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/CommitDiffSourceCodeType.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/JobState.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/Metrics.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/MetricsSummary.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackRequest.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackResult.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/Reaction.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedback.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedbackSummary.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationSummary.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/SourceCodeType.cpp create mode 100644 aws-cpp-sdk-codeguru-reviewer/source/model/Type.cpp create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitRequest.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitResult.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/DeleteUsageLimitRequest.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsRequest.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsResult.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitRequest.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitResult.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimit.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitBreachAction.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitFeatureType.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitLimitType.h create mode 100644 aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitPeriod.h create mode 100644 aws-cpp-sdk-redshift/source/model/CreateUsageLimitRequest.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/CreateUsageLimitResult.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/DeleteUsageLimitRequest.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsRequest.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsResult.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/ModifyUsageLimitRequest.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/ModifyUsageLimitResult.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/UsageLimit.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/UsageLimitBreachAction.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/UsageLimitFeatureType.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/UsageLimitLimitType.cpp create mode 100644 aws-cpp-sdk-redshift/source/model/UsageLimitPeriod.cpp diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/CodeGuruReviewerClient.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/CodeGuruReviewerClient.h index 3eb06ac09a3..aaaa40ffd43 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/CodeGuruReviewerClient.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/CodeGuruReviewerClient.h @@ -22,9 +22,15 @@ #include #include #include +#include +#include #include #include +#include +#include +#include #include +#include #include #include #include @@ -65,27 +71,51 @@ namespace CodeGuruReviewer namespace Model { class AssociateRepositoryRequest; + class DescribeCodeReviewRequest; + class DescribeRecommendationFeedbackRequest; class DescribeRepositoryAssociationRequest; class DisassociateRepositoryRequest; + class ListCodeReviewsRequest; + class ListRecommendationFeedbackRequest; + class ListRecommendationsRequest; class ListRepositoryAssociationsRequest; + class PutRecommendationFeedbackRequest; typedef Aws::Utils::Outcome> AssociateRepositoryOutcome; + typedef Aws::Utils::Outcome> DescribeCodeReviewOutcome; + typedef Aws::Utils::Outcome> DescribeRecommendationFeedbackOutcome; typedef Aws::Utils::Outcome> DescribeRepositoryAssociationOutcome; typedef Aws::Utils::Outcome> DisassociateRepositoryOutcome; + typedef Aws::Utils::Outcome> ListCodeReviewsOutcome; + typedef Aws::Utils::Outcome> ListRecommendationFeedbackOutcome; + typedef Aws::Utils::Outcome> ListRecommendationsOutcome; typedef Aws::Utils::Outcome> ListRepositoryAssociationsOutcome; + typedef Aws::Utils::Outcome> PutRecommendationFeedbackOutcome; typedef std::future AssociateRepositoryOutcomeCallable; + typedef std::future DescribeCodeReviewOutcomeCallable; + typedef std::future DescribeRecommendationFeedbackOutcomeCallable; typedef std::future DescribeRepositoryAssociationOutcomeCallable; typedef std::future DisassociateRepositoryOutcomeCallable; + typedef std::future ListCodeReviewsOutcomeCallable; + typedef std::future ListRecommendationFeedbackOutcomeCallable; + typedef std::future ListRecommendationsOutcomeCallable; typedef std::future ListRepositoryAssociationsOutcomeCallable; + typedef std::future PutRecommendationFeedbackOutcomeCallable; } // namespace Model class CodeGuruReviewerClient; typedef std::function&) > AssociateRepositoryResponseReceivedHandler; + typedef std::function&) > DescribeCodeReviewResponseReceivedHandler; + typedef std::function&) > DescribeRecommendationFeedbackResponseReceivedHandler; typedef std::function&) > DescribeRepositoryAssociationResponseReceivedHandler; typedef std::function&) > DisassociateRepositoryResponseReceivedHandler; + typedef std::function&) > ListCodeReviewsResponseReceivedHandler; + typedef std::function&) > ListRecommendationFeedbackResponseReceivedHandler; + typedef std::function&) > ListRecommendationsResponseReceivedHandler; typedef std::function&) > ListRepositoryAssociationsResponseReceivedHandler; + typedef std::function&) > PutRecommendationFeedbackResponseReceivedHandler; /** *

This section provides documentation for the Amazon CodeGuru Reviewer API @@ -123,10 +153,10 @@ namespace Model /** *

Associates an AWS CodeCommit repository with Amazon CodeGuru Reviewer. When * you associate an AWS CodeCommit repository with Amazon CodeGuru Reviewer, Amazon - * CodeGuru Reviewer will provide recommendations for each pull request. You can - * view recommendations in the AWS CodeCommit repository.

You can associate - * a GitHub repository using the Amazon CodeGuru Reviewer console.

See - * Also:

You can associate a GitHub repository using the Amazon + * CodeGuru Reviewer console.

See Also:

AWS * API Reference

*/ @@ -135,10 +165,10 @@ namespace Model /** *

Associates an AWS CodeCommit repository with Amazon CodeGuru Reviewer. When * you associate an AWS CodeCommit repository with Amazon CodeGuru Reviewer, Amazon - * CodeGuru Reviewer will provide recommendations for each pull request. You can - * view recommendations in the AWS CodeCommit repository.

You can associate - * a GitHub repository using the Amazon CodeGuru Reviewer console.

See - * Also:

You can associate a GitHub repository using the Amazon + * CodeGuru Reviewer console.

See Also:

AWS * API Reference

* @@ -149,10 +179,10 @@ namespace Model /** *

Associates an AWS CodeCommit repository with Amazon CodeGuru Reviewer. When * you associate an AWS CodeCommit repository with Amazon CodeGuru Reviewer, Amazon - * CodeGuru Reviewer will provide recommendations for each pull request. You can - * view recommendations in the AWS CodeCommit repository.

You can associate - * a GitHub repository using the Amazon CodeGuru Reviewer console.

See - * Also:

You can associate a GitHub repository using the Amazon + * CodeGuru Reviewer console.

See Also:

AWS * API Reference

* @@ -160,6 +190,62 @@ namespace Model */ virtual void AssociateRepositoryAsync(const Model::AssociateRepositoryRequest& request, const AssociateRepositoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** + *

Returns the metadaata associated with the code review along with its + * status.

See Also:

AWS + * API Reference

+ */ + virtual Model::DescribeCodeReviewOutcome DescribeCodeReview(const Model::DescribeCodeReviewRequest& request) const; + + /** + *

Returns the metadaata associated with the code review along with its + * status.

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::DescribeCodeReviewOutcomeCallable DescribeCodeReviewCallable(const Model::DescribeCodeReviewRequest& request) const; + + /** + *

Returns the metadaata associated with the code review along with its + * status.

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void DescribeCodeReviewAsync(const Model::DescribeCodeReviewRequest& request, const DescribeCodeReviewResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + + /** + *

Describes the customer feedback for a CodeGuru Reviewer recommendation. + *

See Also:

AWS + * API Reference

+ */ + virtual Model::DescribeRecommendationFeedbackOutcome DescribeRecommendationFeedback(const Model::DescribeRecommendationFeedbackRequest& request) const; + + /** + *

Describes the customer feedback for a CodeGuru Reviewer recommendation. + *

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::DescribeRecommendationFeedbackOutcomeCallable DescribeRecommendationFeedbackCallable(const Model::DescribeRecommendationFeedbackRequest& request) const; + + /** + *

Describes the customer feedback for a CodeGuru Reviewer recommendation. + *

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void DescribeRecommendationFeedbackAsync(const Model::DescribeRecommendationFeedbackRequest& request, const DescribeRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

Describes a repository association.

See Also:

AWS @@ -213,6 +299,96 @@ namespace Model */ virtual void DisassociateRepositoryAsync(const Model::DisassociateRepositoryRequest& request, const DisassociateRepositoryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** + *

Lists all the code reviews that the customer has created in the past 90 + * days.

See Also:

AWS + * API Reference

+ */ + virtual Model::ListCodeReviewsOutcome ListCodeReviews(const Model::ListCodeReviewsRequest& request) const; + + /** + *

Lists all the code reviews that the customer has created in the past 90 + * days.

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::ListCodeReviewsOutcomeCallable ListCodeReviewsCallable(const Model::ListCodeReviewsRequest& request) const; + + /** + *

Lists all the code reviews that the customer has created in the past 90 + * days.

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void ListCodeReviewsAsync(const Model::ListCodeReviewsRequest& request, const ListCodeReviewsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + + /** + *

Lists the customer feedback for a CodeGuru Reviewer recommendation for all + * users. This API will be used from the console to extract the previously given + * feedback by the user to pre-populate the feedback emojis for all + * recommendations.

See Also:

AWS + * API Reference

+ */ + virtual Model::ListRecommendationFeedbackOutcome ListRecommendationFeedback(const Model::ListRecommendationFeedbackRequest& request) const; + + /** + *

Lists the customer feedback for a CodeGuru Reviewer recommendation for all + * users. This API will be used from the console to extract the previously given + * feedback by the user to pre-populate the feedback emojis for all + * recommendations.

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::ListRecommendationFeedbackOutcomeCallable ListRecommendationFeedbackCallable(const Model::ListRecommendationFeedbackRequest& request) const; + + /** + *

Lists the customer feedback for a CodeGuru Reviewer recommendation for all + * users. This API will be used from the console to extract the previously given + * feedback by the user to pre-populate the feedback emojis for all + * recommendations.

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void ListRecommendationFeedbackAsync(const Model::ListRecommendationFeedbackRequest& request, const ListRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + + /** + *

Returns the list of all recommendations for a completed code review. + *

See Also:

AWS + * API Reference

+ */ + virtual Model::ListRecommendationsOutcome ListRecommendations(const Model::ListRecommendationsRequest& request) const; + + /** + *

Returns the list of all recommendations for a completed code review. + *

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::ListRecommendationsOutcomeCallable ListRecommendationsCallable(const Model::ListRecommendationsRequest& request) const; + + /** + *

Returns the list of all recommendations for a completed code review. + *

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void ListRecommendationsAsync(const Model::ListRecommendationsRequest& request, const ListRecommendationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

Lists repository associations. You can optionally filter on one or more of * the following recommendation properties: provider types, states, names, and @@ -244,14 +420,51 @@ namespace Model */ virtual void ListRepositoryAssociationsAsync(const Model::ListRepositoryAssociationsRequest& request, const ListRepositoryAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** + *

Stores customer feedback for a CodeGuru-Reviewer recommendation. When this + * API is called again with different reactions the previous feedback is + * overwritten.

See Also:

AWS + * API Reference

+ */ + virtual Model::PutRecommendationFeedbackOutcome PutRecommendationFeedback(const Model::PutRecommendationFeedbackRequest& request) const; + + /** + *

Stores customer feedback for a CodeGuru-Reviewer recommendation. When this + * API is called again with different reactions the previous feedback is + * overwritten.

See Also:

AWS + * API Reference

+ * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::PutRecommendationFeedbackOutcomeCallable PutRecommendationFeedbackCallable(const Model::PutRecommendationFeedbackRequest& request) const; + + /** + *

Stores customer feedback for a CodeGuru-Reviewer recommendation. When this + * API is called again with different reactions the previous feedback is + * overwritten.

See Also:

AWS + * API Reference

+ * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void PutRecommendationFeedbackAsync(const Model::PutRecommendationFeedbackRequest& request, const PutRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + void OverrideEndpoint(const Aws::String& endpoint); private: void init(const Aws::Client::ClientConfiguration& clientConfiguration); void AssociateRepositoryAsyncHelper(const Model::AssociateRepositoryRequest& request, const AssociateRepositoryResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void DescribeCodeReviewAsyncHelper(const Model::DescribeCodeReviewRequest& request, const DescribeCodeReviewResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void DescribeRecommendationFeedbackAsyncHelper(const Model::DescribeRecommendationFeedbackRequest& request, const DescribeRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeRepositoryAssociationAsyncHelper(const Model::DescribeRepositoryAssociationRequest& request, const DescribeRepositoryAssociationResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisassociateRepositoryAsyncHelper(const Model::DisassociateRepositoryRequest& request, const DisassociateRepositoryResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void ListCodeReviewsAsyncHelper(const Model::ListCodeReviewsRequest& request, const ListCodeReviewsResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void ListRecommendationFeedbackAsyncHelper(const Model::ListRecommendationFeedbackRequest& request, const ListRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void ListRecommendationsAsyncHelper(const Model::ListRecommendationsRequest& request, const ListRecommendationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ListRepositoryAssociationsAsyncHelper(const Model::ListRepositoryAssociationsRequest& request, const ListRepositoryAssociationsResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void PutRecommendationFeedbackAsyncHelper(const Model::PutRecommendationFeedbackRequest& request, const PutRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const; Aws::String m_uri; Aws::String m_configScheme; diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/AssociateRepositoryRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/AssociateRepositoryRequest.h index 2f1c926f044..be7f5ffe649 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/AssociateRepositoryRequest.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/AssociateRepositoryRequest.h @@ -77,153 +77,145 @@ namespace Model /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline const Aws::String& GetClientRequestToken() const{ return m_clientRequestToken; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline bool ClientRequestTokenHasBeenSet() const { return m_clientRequestTokenHasBeenSet; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline void SetClientRequestToken(const Aws::String& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = value; } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline void SetClientRequestToken(Aws::String&& value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken = std::move(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline void SetClientRequestToken(const char* value) { m_clientRequestTokenHasBeenSet = true; m_clientRequestToken.assign(value); } /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline AssociateRepositoryRequest& WithClientRequestToken(const Aws::String& value) { SetClientRequestToken(value); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline AssociateRepositoryRequest& WithClientRequestToken(Aws::String&& value) { SetClientRequestToken(std::move(value)); return *this;} /** *

Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request.

If you want to add a new repository association, this - * parameter specifies a unique identifier for the new repository association that - * helps ensure idempotency.

If you use the AWS CLI or one of the AWS SDK to - * call this operation, then you can leave this parameter empty. The CLI or SDK - * generates a random UUID for you and includes that in the request. If you don't - * use the SDK and instead generate a raw HTTP request to the Secrets Manager - * service endpoint, then you must generate a ClientRequestToken yourself for new - * versions and include that value in the request.

You typically only need - * to interact with this value if you implement your own retry logic and want to - * ensure that a given repository association is not created twice. We recommend - * that you generate a UUID-type value to ensure uniqueness within the specified - * repository association.

Amazon CodeGuru Reviewer uses this value to - * prevent the accidental creation of duplicate repository associations if there - * are failures and retries.

+ * of the request.

To add a new repository association, this parameter + * specifies a unique identifier for the new repository association that helps + * ensure idempotency.

If you use the AWS CLI or one of the AWS SDKs to call + * this operation, you can leave this parameter empty. The CLI or SDK generates a + * random UUID for you and includes that in the request. If you don't use the SDK + * and instead generate a raw HTTP request to the Secrets Manager service endpoint, + * you must generate a ClientRequestToken yourself for new versions and include + * that value in the request.

You typically interact with this value if you + * implement your own retry logic and want to ensure that a given repository + * association is not created twice. We recommend that you generate a UUID-type + * value to ensure uniqueness within the specified repository association.

+ *

Amazon CodeGuru Reviewer uses this value to prevent the accidental creation + * of duplicate repository associations if there are failures and retries.

*/ inline AssociateRepositoryRequest& WithClientRequestToken(const char* value) { SetClientRequestToken(value); return *this;} diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReview.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReview.h new file mode 100644 index 00000000000..0ab83d57adb --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReview.h @@ -0,0 +1,574 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about a code review.

See Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API CodeReview + { + public: + CodeReview(); + CodeReview(Aws::Utils::Json::JsonView jsonValue); + CodeReview& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The name of the code review.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

The name of the code review.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

The name of the code review.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

The name of the code review.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

The name of the code review.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

The name of the code review.

+ */ + inline CodeReview& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

The name of the code review.

+ */ + inline CodeReview& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

The name of the code review.

+ */ + inline CodeReview& WithName(const char* value) { SetName(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReview& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReview& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReview& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

The name of the repository.

+ */ + inline const Aws::String& GetRepositoryName() const{ return m_repositoryName; } + + /** + *

The name of the repository.

+ */ + inline bool RepositoryNameHasBeenSet() const { return m_repositoryNameHasBeenSet; } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(const Aws::String& value) { m_repositoryNameHasBeenSet = true; m_repositoryName = value; } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(Aws::String&& value) { m_repositoryNameHasBeenSet = true; m_repositoryName = std::move(value); } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(const char* value) { m_repositoryNameHasBeenSet = true; m_repositoryName.assign(value); } + + /** + *

The name of the repository.

+ */ + inline CodeReview& WithRepositoryName(const Aws::String& value) { SetRepositoryName(value); return *this;} + + /** + *

The name of the repository.

+ */ + inline CodeReview& WithRepositoryName(Aws::String&& value) { SetRepositoryName(std::move(value)); return *this;} + + /** + *

The name of the repository.

+ */ + inline CodeReview& WithRepositoryName(const char* value) { SetRepositoryName(value); return *this;} + + + /** + *

The owner of the repository.

+ */ + inline const Aws::String& GetOwner() const{ return m_owner; } + + /** + *

The owner of the repository.

+ */ + inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); } + + /** + *

The owner of the repository.

+ */ + inline CodeReview& WithOwner(const Aws::String& value) { SetOwner(value); return *this;} + + /** + *

The owner of the repository.

+ */ + inline CodeReview& WithOwner(Aws::String&& value) { SetOwner(std::move(value)); return *this;} + + /** + *

The owner of the repository.

+ */ + inline CodeReview& WithOwner(const char* value) { SetOwner(value); return *this;} + + + /** + *

The provider type of the repository association.

+ */ + inline const ProviderType& GetProviderType() const{ return m_providerType; } + + /** + *

The provider type of the repository association.

+ */ + inline bool ProviderTypeHasBeenSet() const { return m_providerTypeHasBeenSet; } + + /** + *

The provider type of the repository association.

+ */ + inline void SetProviderType(const ProviderType& value) { m_providerTypeHasBeenSet = true; m_providerType = value; } + + /** + *

The provider type of the repository association.

+ */ + inline void SetProviderType(ProviderType&& value) { m_providerTypeHasBeenSet = true; m_providerType = std::move(value); } + + /** + *

The provider type of the repository association.

+ */ + inline CodeReview& WithProviderType(const ProviderType& value) { SetProviderType(value); return *this;} + + /** + *

The provider type of the repository association.

+ */ + inline CodeReview& WithProviderType(ProviderType&& value) { SetProviderType(std::move(value)); return *this;} + + + /** + *

The state of the code review.

+ */ + inline const JobState& GetState() const{ return m_state; } + + /** + *

The state of the code review.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The state of the code review.

+ */ + inline void SetState(const JobState& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The state of the code review.

+ */ + inline void SetState(JobState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The state of the code review.

+ */ + inline CodeReview& WithState(const JobState& value) { SetState(value); return *this;} + + /** + *

The state of the code review.

+ */ + inline CodeReview& WithState(JobState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The reason for the state of the code review.

+ */ + inline const Aws::String& GetStateReason() const{ return m_stateReason; } + + /** + *

The reason for the state of the code review.

+ */ + inline bool StateReasonHasBeenSet() const { return m_stateReasonHasBeenSet; } + + /** + *

The reason for the state of the code review.

+ */ + inline void SetStateReason(const Aws::String& value) { m_stateReasonHasBeenSet = true; m_stateReason = value; } + + /** + *

The reason for the state of the code review.

+ */ + inline void SetStateReason(Aws::String&& value) { m_stateReasonHasBeenSet = true; m_stateReason = std::move(value); } + + /** + *

The reason for the state of the code review.

+ */ + inline void SetStateReason(const char* value) { m_stateReasonHasBeenSet = true; m_stateReason.assign(value); } + + /** + *

The reason for the state of the code review.

+ */ + inline CodeReview& WithStateReason(const Aws::String& value) { SetStateReason(value); return *this;} + + /** + *

The reason for the state of the code review.

+ */ + inline CodeReview& WithStateReason(Aws::String&& value) { SetStateReason(std::move(value)); return *this;} + + /** + *

The reason for the state of the code review.

+ */ + inline CodeReview& WithStateReason(const char* value) { SetStateReason(value); return *this;} + + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline const Aws::Utils::DateTime& GetCreatedTimeStamp() const{ return m_createdTimeStamp; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline bool CreatedTimeStampHasBeenSet() const { return m_createdTimeStampHasBeenSet; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline void SetCreatedTimeStamp(const Aws::Utils::DateTime& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = value; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline void SetCreatedTimeStamp(Aws::Utils::DateTime&& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = std::move(value); } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline CodeReview& WithCreatedTimeStamp(const Aws::Utils::DateTime& value) { SetCreatedTimeStamp(value); return *this;} + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline CodeReview& WithCreatedTimeStamp(Aws::Utils::DateTime&& value) { SetCreatedTimeStamp(std::move(value)); return *this;} + + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline const Aws::Utils::DateTime& GetLastUpdatedTimeStamp() const{ return m_lastUpdatedTimeStamp; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline bool LastUpdatedTimeStampHasBeenSet() const { return m_lastUpdatedTimeStampHasBeenSet; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline void SetLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = value; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline void SetLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = std::move(value); } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline CodeReview& WithLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimeStamp(value); return *this;} + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline CodeReview& WithLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimeStamp(std::move(value)); return *this;} + + + /** + *

The type of code review.

+ */ + inline const Type& GetType() const{ return m_type; } + + /** + *

The type of code review.

+ */ + inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } + + /** + *

The type of code review.

+ */ + inline void SetType(const Type& value) { m_typeHasBeenSet = true; m_type = value; } + + /** + *

The type of code review.

+ */ + inline void SetType(Type&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } + + /** + *

The type of code review.

+ */ + inline CodeReview& WithType(const Type& value) { SetType(value); return *this;} + + /** + *

The type of code review.

+ */ + inline CodeReview& WithType(Type&& value) { SetType(std::move(value)); return *this;} + + + /** + *

The pull request ID for the code review.

+ */ + inline const Aws::String& GetPullRequestId() const{ return m_pullRequestId; } + + /** + *

The pull request ID for the code review.

+ */ + inline bool PullRequestIdHasBeenSet() const { return m_pullRequestIdHasBeenSet; } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(const Aws::String& value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId = value; } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(Aws::String&& value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId = std::move(value); } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(const char* value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId.assign(value); } + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReview& WithPullRequestId(const Aws::String& value) { SetPullRequestId(value); return *this;} + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReview& WithPullRequestId(Aws::String&& value) { SetPullRequestId(std::move(value)); return *this;} + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReview& WithPullRequestId(const char* value) { SetPullRequestId(value); return *this;} + + + /** + *

The type of the source code for the code review.

+ */ + inline const SourceCodeType& GetSourceCodeType() const{ return m_sourceCodeType; } + + /** + *

The type of the source code for the code review.

+ */ + inline bool SourceCodeTypeHasBeenSet() const { return m_sourceCodeTypeHasBeenSet; } + + /** + *

The type of the source code for the code review.

+ */ + inline void SetSourceCodeType(const SourceCodeType& value) { m_sourceCodeTypeHasBeenSet = true; m_sourceCodeType = value; } + + /** + *

The type of the source code for the code review.

+ */ + inline void SetSourceCodeType(SourceCodeType&& value) { m_sourceCodeTypeHasBeenSet = true; m_sourceCodeType = std::move(value); } + + /** + *

The type of the source code for the code review.

+ */ + inline CodeReview& WithSourceCodeType(const SourceCodeType& value) { SetSourceCodeType(value); return *this;} + + /** + *

The type of the source code for the code review.

+ */ + inline CodeReview& WithSourceCodeType(SourceCodeType&& value) { SetSourceCodeType(std::move(value)); return *this;} + + + /** + *

The statistics from the code review.

+ */ + inline const Metrics& GetMetrics() const{ return m_metrics; } + + /** + *

The statistics from the code review.

+ */ + inline bool MetricsHasBeenSet() const { return m_metricsHasBeenSet; } + + /** + *

The statistics from the code review.

+ */ + inline void SetMetrics(const Metrics& value) { m_metricsHasBeenSet = true; m_metrics = value; } + + /** + *

The statistics from the code review.

+ */ + inline void SetMetrics(Metrics&& value) { m_metricsHasBeenSet = true; m_metrics = std::move(value); } + + /** + *

The statistics from the code review.

+ */ + inline CodeReview& WithMetrics(const Metrics& value) { SetMetrics(value); return *this;} + + /** + *

The statistics from the code review.

+ */ + inline CodeReview& WithMetrics(Metrics&& value) { SetMetrics(std::move(value)); return *this;} + + private: + + Aws::String m_name; + bool m_nameHasBeenSet; + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::String m_repositoryName; + bool m_repositoryNameHasBeenSet; + + Aws::String m_owner; + bool m_ownerHasBeenSet; + + ProviderType m_providerType; + bool m_providerTypeHasBeenSet; + + JobState m_state; + bool m_stateHasBeenSet; + + Aws::String m_stateReason; + bool m_stateReasonHasBeenSet; + + Aws::Utils::DateTime m_createdTimeStamp; + bool m_createdTimeStampHasBeenSet; + + Aws::Utils::DateTime m_lastUpdatedTimeStamp; + bool m_lastUpdatedTimeStampHasBeenSet; + + Type m_type; + bool m_typeHasBeenSet; + + Aws::String m_pullRequestId; + bool m_pullRequestIdHasBeenSet; + + SourceCodeType m_sourceCodeType; + bool m_sourceCodeTypeHasBeenSet; + + Metrics m_metrics; + bool m_metricsHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReviewSummary.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReviewSummary.h new file mode 100644 index 00000000000..150fe52cd03 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CodeReviewSummary.h @@ -0,0 +1,496 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about the summary of the code review.

See Also:

+ * AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API CodeReviewSummary + { + public: + CodeReviewSummary(); + CodeReviewSummary(Aws::Utils::Json::JsonView jsonValue); + CodeReviewSummary& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The name of the code review.

+ */ + inline const Aws::String& GetName() const{ return m_name; } + + /** + *

The name of the code review.

+ */ + inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } + + /** + *

The name of the code review.

+ */ + inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } + + /** + *

The name of the code review.

+ */ + inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } + + /** + *

The name of the code review.

+ */ + inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } + + /** + *

The name of the code review.

+ */ + inline CodeReviewSummary& WithName(const Aws::String& value) { SetName(value); return *this;} + + /** + *

The name of the code review.

+ */ + inline CodeReviewSummary& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} + + /** + *

The name of the code review.

+ */ + inline CodeReviewSummary& WithName(const char* value) { SetName(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReviewSummary& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReviewSummary& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline CodeReviewSummary& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

The name of the repository.

+ */ + inline const Aws::String& GetRepositoryName() const{ return m_repositoryName; } + + /** + *

The name of the repository.

+ */ + inline bool RepositoryNameHasBeenSet() const { return m_repositoryNameHasBeenSet; } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(const Aws::String& value) { m_repositoryNameHasBeenSet = true; m_repositoryName = value; } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(Aws::String&& value) { m_repositoryNameHasBeenSet = true; m_repositoryName = std::move(value); } + + /** + *

The name of the repository.

+ */ + inline void SetRepositoryName(const char* value) { m_repositoryNameHasBeenSet = true; m_repositoryName.assign(value); } + + /** + *

The name of the repository.

+ */ + inline CodeReviewSummary& WithRepositoryName(const Aws::String& value) { SetRepositoryName(value); return *this;} + + /** + *

The name of the repository.

+ */ + inline CodeReviewSummary& WithRepositoryName(Aws::String&& value) { SetRepositoryName(std::move(value)); return *this;} + + /** + *

The name of the repository.

+ */ + inline CodeReviewSummary& WithRepositoryName(const char* value) { SetRepositoryName(value); return *this;} + + + /** + *

The owner of the repository.

+ */ + inline const Aws::String& GetOwner() const{ return m_owner; } + + /** + *

The owner of the repository.

+ */ + inline bool OwnerHasBeenSet() const { return m_ownerHasBeenSet; } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(const Aws::String& value) { m_ownerHasBeenSet = true; m_owner = value; } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(Aws::String&& value) { m_ownerHasBeenSet = true; m_owner = std::move(value); } + + /** + *

The owner of the repository.

+ */ + inline void SetOwner(const char* value) { m_ownerHasBeenSet = true; m_owner.assign(value); } + + /** + *

The owner of the repository.

+ */ + inline CodeReviewSummary& WithOwner(const Aws::String& value) { SetOwner(value); return *this;} + + /** + *

The owner of the repository.

+ */ + inline CodeReviewSummary& WithOwner(Aws::String&& value) { SetOwner(std::move(value)); return *this;} + + /** + *

The owner of the repository.

+ */ + inline CodeReviewSummary& WithOwner(const char* value) { SetOwner(value); return *this;} + + + /** + *

The provider type of the repository association.

+ */ + inline const ProviderType& GetProviderType() const{ return m_providerType; } + + /** + *

The provider type of the repository association.

+ */ + inline bool ProviderTypeHasBeenSet() const { return m_providerTypeHasBeenSet; } + + /** + *

The provider type of the repository association.

+ */ + inline void SetProviderType(const ProviderType& value) { m_providerTypeHasBeenSet = true; m_providerType = value; } + + /** + *

The provider type of the repository association.

+ */ + inline void SetProviderType(ProviderType&& value) { m_providerTypeHasBeenSet = true; m_providerType = std::move(value); } + + /** + *

The provider type of the repository association.

+ */ + inline CodeReviewSummary& WithProviderType(const ProviderType& value) { SetProviderType(value); return *this;} + + /** + *

The provider type of the repository association.

+ */ + inline CodeReviewSummary& WithProviderType(ProviderType&& value) { SetProviderType(std::move(value)); return *this;} + + + /** + *

The state of the code review.

+ */ + inline const JobState& GetState() const{ return m_state; } + + /** + *

The state of the code review.

+ */ + inline bool StateHasBeenSet() const { return m_stateHasBeenSet; } + + /** + *

The state of the code review.

+ */ + inline void SetState(const JobState& value) { m_stateHasBeenSet = true; m_state = value; } + + /** + *

The state of the code review.

+ */ + inline void SetState(JobState&& value) { m_stateHasBeenSet = true; m_state = std::move(value); } + + /** + *

The state of the code review.

+ */ + inline CodeReviewSummary& WithState(const JobState& value) { SetState(value); return *this;} + + /** + *

The state of the code review.

+ */ + inline CodeReviewSummary& WithState(JobState&& value) { SetState(std::move(value)); return *this;} + + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline const Aws::Utils::DateTime& GetCreatedTimeStamp() const{ return m_createdTimeStamp; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline bool CreatedTimeStampHasBeenSet() const { return m_createdTimeStampHasBeenSet; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline void SetCreatedTimeStamp(const Aws::Utils::DateTime& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = value; } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline void SetCreatedTimeStamp(Aws::Utils::DateTime&& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = std::move(value); } + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline CodeReviewSummary& WithCreatedTimeStamp(const Aws::Utils::DateTime& value) { SetCreatedTimeStamp(value); return *this;} + + /** + *

The time, in milliseconds since the epoch, when the code review was created. + *

+ */ + inline CodeReviewSummary& WithCreatedTimeStamp(Aws::Utils::DateTime&& value) { SetCreatedTimeStamp(std::move(value)); return *this;} + + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline const Aws::Utils::DateTime& GetLastUpdatedTimeStamp() const{ return m_lastUpdatedTimeStamp; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline bool LastUpdatedTimeStampHasBeenSet() const { return m_lastUpdatedTimeStampHasBeenSet; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline void SetLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = value; } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline void SetLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = std::move(value); } + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline CodeReviewSummary& WithLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimeStamp(value); return *this;} + + /** + *

The time, in milliseconds since the epoch, when the code review was last + * updated.

+ */ + inline CodeReviewSummary& WithLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimeStamp(std::move(value)); return *this;} + + + /** + *

The type of the code review.

+ */ + inline const Type& GetType() const{ return m_type; } + + /** + *

The type of the code review.

+ */ + inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } + + /** + *

The type of the code review.

+ */ + inline void SetType(const Type& value) { m_typeHasBeenSet = true; m_type = value; } + + /** + *

The type of the code review.

+ */ + inline void SetType(Type&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } + + /** + *

The type of the code review.

+ */ + inline CodeReviewSummary& WithType(const Type& value) { SetType(value); return *this;} + + /** + *

The type of the code review.

+ */ + inline CodeReviewSummary& WithType(Type&& value) { SetType(std::move(value)); return *this;} + + + /** + *

The pull request ID for the code review.

+ */ + inline const Aws::String& GetPullRequestId() const{ return m_pullRequestId; } + + /** + *

The pull request ID for the code review.

+ */ + inline bool PullRequestIdHasBeenSet() const { return m_pullRequestIdHasBeenSet; } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(const Aws::String& value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId = value; } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(Aws::String&& value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId = std::move(value); } + + /** + *

The pull request ID for the code review.

+ */ + inline void SetPullRequestId(const char* value) { m_pullRequestIdHasBeenSet = true; m_pullRequestId.assign(value); } + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReviewSummary& WithPullRequestId(const Aws::String& value) { SetPullRequestId(value); return *this;} + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReviewSummary& WithPullRequestId(Aws::String&& value) { SetPullRequestId(std::move(value)); return *this;} + + /** + *

The pull request ID for the code review.

+ */ + inline CodeReviewSummary& WithPullRequestId(const char* value) { SetPullRequestId(value); return *this;} + + + /** + *

The statistics from the code review.

+ */ + inline const MetricsSummary& GetMetricsSummary() const{ return m_metricsSummary; } + + /** + *

The statistics from the code review.

+ */ + inline bool MetricsSummaryHasBeenSet() const { return m_metricsSummaryHasBeenSet; } + + /** + *

The statistics from the code review.

+ */ + inline void SetMetricsSummary(const MetricsSummary& value) { m_metricsSummaryHasBeenSet = true; m_metricsSummary = value; } + + /** + *

The statistics from the code review.

+ */ + inline void SetMetricsSummary(MetricsSummary&& value) { m_metricsSummaryHasBeenSet = true; m_metricsSummary = std::move(value); } + + /** + *

The statistics from the code review.

+ */ + inline CodeReviewSummary& WithMetricsSummary(const MetricsSummary& value) { SetMetricsSummary(value); return *this;} + + /** + *

The statistics from the code review.

+ */ + inline CodeReviewSummary& WithMetricsSummary(MetricsSummary&& value) { SetMetricsSummary(std::move(value)); return *this;} + + private: + + Aws::String m_name; + bool m_nameHasBeenSet; + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::String m_repositoryName; + bool m_repositoryNameHasBeenSet; + + Aws::String m_owner; + bool m_ownerHasBeenSet; + + ProviderType m_providerType; + bool m_providerTypeHasBeenSet; + + JobState m_state; + bool m_stateHasBeenSet; + + Aws::Utils::DateTime m_createdTimeStamp; + bool m_createdTimeStampHasBeenSet; + + Aws::Utils::DateTime m_lastUpdatedTimeStamp; + bool m_lastUpdatedTimeStampHasBeenSet; + + Type m_type; + bool m_typeHasBeenSet; + + Aws::String m_pullRequestId; + bool m_pullRequestIdHasBeenSet; + + MetricsSummary m_metricsSummary; + bool m_metricsSummaryHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CommitDiffSourceCodeType.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CommitDiffSourceCodeType.h new file mode 100644 index 00000000000..aebffebe9ef --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/CommitDiffSourceCodeType.h @@ -0,0 +1,142 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

The commit diff for the pull request.

See Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API CommitDiffSourceCodeType + { + public: + CommitDiffSourceCodeType(); + CommitDiffSourceCodeType(Aws::Utils::Json::JsonView jsonValue); + CommitDiffSourceCodeType& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

Source Commit SHA.

+ */ + inline const Aws::String& GetSourceCommit() const{ return m_sourceCommit; } + + /** + *

Source Commit SHA.

+ */ + inline bool SourceCommitHasBeenSet() const { return m_sourceCommitHasBeenSet; } + + /** + *

Source Commit SHA.

+ */ + inline void SetSourceCommit(const Aws::String& value) { m_sourceCommitHasBeenSet = true; m_sourceCommit = value; } + + /** + *

Source Commit SHA.

+ */ + inline void SetSourceCommit(Aws::String&& value) { m_sourceCommitHasBeenSet = true; m_sourceCommit = std::move(value); } + + /** + *

Source Commit SHA.

+ */ + inline void SetSourceCommit(const char* value) { m_sourceCommitHasBeenSet = true; m_sourceCommit.assign(value); } + + /** + *

Source Commit SHA.

+ */ + inline CommitDiffSourceCodeType& WithSourceCommit(const Aws::String& value) { SetSourceCommit(value); return *this;} + + /** + *

Source Commit SHA.

+ */ + inline CommitDiffSourceCodeType& WithSourceCommit(Aws::String&& value) { SetSourceCommit(std::move(value)); return *this;} + + /** + *

Source Commit SHA.

+ */ + inline CommitDiffSourceCodeType& WithSourceCommit(const char* value) { SetSourceCommit(value); return *this;} + + + /** + *

Destination Commit SHA

+ */ + inline const Aws::String& GetDestinationCommit() const{ return m_destinationCommit; } + + /** + *

Destination Commit SHA

+ */ + inline bool DestinationCommitHasBeenSet() const { return m_destinationCommitHasBeenSet; } + + /** + *

Destination Commit SHA

+ */ + inline void SetDestinationCommit(const Aws::String& value) { m_destinationCommitHasBeenSet = true; m_destinationCommit = value; } + + /** + *

Destination Commit SHA

+ */ + inline void SetDestinationCommit(Aws::String&& value) { m_destinationCommitHasBeenSet = true; m_destinationCommit = std::move(value); } + + /** + *

Destination Commit SHA

+ */ + inline void SetDestinationCommit(const char* value) { m_destinationCommitHasBeenSet = true; m_destinationCommit.assign(value); } + + /** + *

Destination Commit SHA

+ */ + inline CommitDiffSourceCodeType& WithDestinationCommit(const Aws::String& value) { SetDestinationCommit(value); return *this;} + + /** + *

Destination Commit SHA

+ */ + inline CommitDiffSourceCodeType& WithDestinationCommit(Aws::String&& value) { SetDestinationCommit(std::move(value)); return *this;} + + /** + *

Destination Commit SHA

+ */ + inline CommitDiffSourceCodeType& WithDestinationCommit(const char* value) { SetDestinationCommit(value); return *this;} + + private: + + Aws::String m_sourceCommit; + bool m_sourceCommitHasBeenSet; + + Aws::String m_destinationCommit; + bool m_destinationCommitHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewRequest.h new file mode 100644 index 00000000000..d1883ebc747 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewRequest.h @@ -0,0 +1,93 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API DescribeCodeReviewRequest : public CodeGuruReviewerRequest + { + public: + DescribeCodeReviewRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DescribeCodeReview"; } + + Aws::String SerializePayload() const override; + + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline DescribeCodeReviewRequest& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline DescribeCodeReviewRequest& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline DescribeCodeReviewRequest& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + private: + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewResult.h new file mode 100644 index 00000000000..a7392963220 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeCodeReviewResult.h @@ -0,0 +1,77 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API DescribeCodeReviewResult + { + public: + DescribeCodeReviewResult(); + DescribeCodeReviewResult(const Aws::AmazonWebServiceResult& result); + DescribeCodeReviewResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

Information about the code review.

+ */ + inline const CodeReview& GetCodeReview() const{ return m_codeReview; } + + /** + *

Information about the code review.

+ */ + inline void SetCodeReview(const CodeReview& value) { m_codeReview = value; } + + /** + *

Information about the code review.

+ */ + inline void SetCodeReview(CodeReview&& value) { m_codeReview = std::move(value); } + + /** + *

Information about the code review.

+ */ + inline DescribeCodeReviewResult& WithCodeReview(const CodeReview& value) { SetCodeReview(value); return *this;} + + /** + *

Information about the code review.

+ */ + inline DescribeCodeReviewResult& WithCodeReview(CodeReview&& value) { SetCodeReview(std::move(value)); return *this;} + + private: + + CodeReview m_codeReview; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackRequest.h new file mode 100644 index 00000000000..aee49feb21a --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackRequest.h @@ -0,0 +1,203 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API DescribeRecommendationFeedbackRequest : public CodeGuruReviewerRequest + { + public: + DescribeRecommendationFeedbackRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DescribeRecommendationFeedback"; } + + Aws::String SerializePayload() const override; + + void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline DescribeRecommendationFeedbackRequest& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline DescribeRecommendationFeedbackRequest& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline DescribeRecommendationFeedbackRequest& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline DescribeRecommendationFeedbackRequest& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline DescribeRecommendationFeedbackRequest& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline DescribeRecommendationFeedbackRequest& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} + + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline const Aws::String& GetUserId() const{ return m_userId; } + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline DescribeRecommendationFeedbackRequest& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline DescribeRecommendationFeedbackRequest& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} + + /** + *

Optional parameter to describe the feedback for a given user. If this is not + * supplied, it defaults to the user making the request.

+ */ + inline DescribeRecommendationFeedbackRequest& WithUserId(const char* value) { SetUserId(value); return *this;} + + private: + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::String m_recommendationId; + bool m_recommendationIdHasBeenSet; + + Aws::String m_userId; + bool m_userIdHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackResult.h new file mode 100644 index 00000000000..0259422f805 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRecommendationFeedbackResult.h @@ -0,0 +1,77 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API DescribeRecommendationFeedbackResult + { + public: + DescribeRecommendationFeedbackResult(); + DescribeRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result); + DescribeRecommendationFeedbackResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

The recommendation feedback given by the user.

+ */ + inline const RecommendationFeedback& GetRecommendationFeedback() const{ return m_recommendationFeedback; } + + /** + *

The recommendation feedback given by the user.

+ */ + inline void SetRecommendationFeedback(const RecommendationFeedback& value) { m_recommendationFeedback = value; } + + /** + *

The recommendation feedback given by the user.

+ */ + inline void SetRecommendationFeedback(RecommendationFeedback&& value) { m_recommendationFeedback = std::move(value); } + + /** + *

The recommendation feedback given by the user.

+ */ + inline DescribeRecommendationFeedbackResult& WithRecommendationFeedback(const RecommendationFeedback& value) { SetRecommendationFeedback(value); return *this;} + + /** + *

The recommendation feedback given by the user.

+ */ + inline DescribeRecommendationFeedbackResult& WithRecommendationFeedback(RecommendationFeedback&& value) { SetRecommendationFeedback(std::move(value)); return *this;} + + private: + + RecommendationFeedback m_recommendationFeedback; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRepositoryAssociationRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRepositoryAssociationRequest.h index 2341371bc0d..15bfca975f0 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRepositoryAssociationRequest.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/DescribeRepositoryAssociationRequest.h @@ -43,42 +43,50 @@ namespace Model /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline const Aws::String& GetAssociationArn() const{ return m_associationArn; } /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline bool AssociationArnHasBeenSet() const { return m_associationArnHasBeenSet; } /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline void SetAssociationArn(const Aws::String& value) { m_associationArnHasBeenSet = true; m_associationArn = value; } /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline void SetAssociationArn(Aws::String&& value) { m_associationArnHasBeenSet = true; m_associationArn = std::move(value); } /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline void SetAssociationArn(const char* value) { m_associationArnHasBeenSet = true; m_associationArn.assign(value); } /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline DescribeRepositoryAssociationRequest& WithAssociationArn(const Aws::String& value) { SetAssociationArn(value); return *this;} /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline DescribeRepositoryAssociationRequest& WithAssociationArn(Aws::String&& value) { SetAssociationArn(std::move(value)); return *this;} /** - *

The Amazon Resource Name (ARN) identifying the association.

+ *

The Amazon Resource Name (ARN) identifying the association. You can retrieve + * this ARN by calling ListRepositories.

*/ inline DescribeRepositoryAssociationRequest& WithAssociationArn(const char* value) { SetAssociationArn(value); return *this;} diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/JobState.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/JobState.h new file mode 100644 index 00000000000..cd9f920fca5 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/JobState.h @@ -0,0 +1,43 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + enum class JobState + { + NOT_SET, + Completed, + Pending, + Failed, + Deleting + }; + +namespace JobStateMapper +{ +AWS_CODEGURUREVIEWER_API JobState GetJobStateForName(const Aws::String& name); + +AWS_CODEGURUREVIEWER_API Aws::String GetNameForJobState(JobState value); +} // namespace JobStateMapper +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsRequest.h new file mode 100644 index 00000000000..0422a75bd23 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsRequest.h @@ -0,0 +1,367 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API ListCodeReviewsRequest : public CodeGuruReviewerRequest + { + public: + ListCodeReviewsRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ListCodeReviews"; } + + Aws::String SerializePayload() const override; + + void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline const Aws::Vector& GetProviderTypes() const{ return m_providerTypes; } + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline bool ProviderTypesHasBeenSet() const { return m_providerTypesHasBeenSet; } + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline void SetProviderTypes(const Aws::Vector& value) { m_providerTypesHasBeenSet = true; m_providerTypes = value; } + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline void SetProviderTypes(Aws::Vector&& value) { m_providerTypesHasBeenSet = true; m_providerTypes = std::move(value); } + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline ListCodeReviewsRequest& WithProviderTypes(const Aws::Vector& value) { SetProviderTypes(value); return *this;} + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline ListCodeReviewsRequest& WithProviderTypes(Aws::Vector&& value) { SetProviderTypes(std::move(value)); return *this;} + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline ListCodeReviewsRequest& AddProviderTypes(const ProviderType& value) { m_providerTypesHasBeenSet = true; m_providerTypes.push_back(value); return *this; } + + /** + *

List of provider types for filtering that needs to be applied before + * displaying the result. For example, "providerTypes=[GitHub]" will list code + * reviews from GitHub.

+ */ + inline ListCodeReviewsRequest& AddProviderTypes(ProviderType&& value) { m_providerTypesHasBeenSet = true; m_providerTypes.push_back(std::move(value)); return *this; } + + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline const Aws::Vector& GetStates() const{ return m_states; } + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline bool StatesHasBeenSet() const { return m_statesHasBeenSet; } + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline void SetStates(const Aws::Vector& value) { m_statesHasBeenSet = true; m_states = value; } + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline void SetStates(Aws::Vector&& value) { m_statesHasBeenSet = true; m_states = std::move(value); } + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline ListCodeReviewsRequest& WithStates(const Aws::Vector& value) { SetStates(value); return *this;} + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline ListCodeReviewsRequest& WithStates(Aws::Vector&& value) { SetStates(std::move(value)); return *this;} + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline ListCodeReviewsRequest& AddStates(const JobState& value) { m_statesHasBeenSet = true; m_states.push_back(value); return *this; } + + /** + *

List of states for filtering that needs to be applied before displaying the + * result. For example, "states=[Pending]" will list code reviews in the Pending + * state.

+ */ + inline ListCodeReviewsRequest& AddStates(JobState&& value) { m_statesHasBeenSet = true; m_states.push_back(std::move(value)); return *this; } + + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline const Aws::Vector& GetRepositoryNames() const{ return m_repositoryNames; } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline bool RepositoryNamesHasBeenSet() const { return m_repositoryNamesHasBeenSet; } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline void SetRepositoryNames(const Aws::Vector& value) { m_repositoryNamesHasBeenSet = true; m_repositoryNames = value; } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline void SetRepositoryNames(Aws::Vector&& value) { m_repositoryNamesHasBeenSet = true; m_repositoryNames = std::move(value); } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline ListCodeReviewsRequest& WithRepositoryNames(const Aws::Vector& value) { SetRepositoryNames(value); return *this;} + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline ListCodeReviewsRequest& WithRepositoryNames(Aws::Vector&& value) { SetRepositoryNames(std::move(value)); return *this;} + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline ListCodeReviewsRequest& AddRepositoryNames(const Aws::String& value) { m_repositoryNamesHasBeenSet = true; m_repositoryNames.push_back(value); return *this; } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline ListCodeReviewsRequest& AddRepositoryNames(Aws::String&& value) { m_repositoryNamesHasBeenSet = true; m_repositoryNames.push_back(std::move(value)); return *this; } + + /** + *

List of repository names for filtering that needs to be applied before + * displaying the result.

+ */ + inline ListCodeReviewsRequest& AddRepositoryNames(const char* value) { m_repositoryNamesHasBeenSet = true; m_repositoryNames.push_back(value); return *this; } + + + /** + *

The type of code reviews to list in the response.

+ */ + inline const Type& GetType() const{ return m_type; } + + /** + *

The type of code reviews to list in the response.

+ */ + inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } + + /** + *

The type of code reviews to list in the response.

+ */ + inline void SetType(const Type& value) { m_typeHasBeenSet = true; m_type = value; } + + /** + *

The type of code reviews to list in the response.

+ */ + inline void SetType(Type&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } + + /** + *

The type of code reviews to list in the response.

+ */ + inline ListCodeReviewsRequest& WithType(const Type& value) { SetType(value); return *this;} + + /** + *

The type of code reviews to list in the response.

+ */ + inline ListCodeReviewsRequest& WithType(Type&& value) { SetType(std::move(value)); return *this;} + + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline int GetMaxResults() const{ return m_maxResults; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline ListCodeReviewsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListCodeReviewsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListCodeReviewsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListCodeReviewsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + private: + + Aws::Vector m_providerTypes; + bool m_providerTypesHasBeenSet; + + Aws::Vector m_states; + bool m_statesHasBeenSet; + + Aws::Vector m_repositoryNames; + bool m_repositoryNamesHasBeenSet; + + Type m_type; + bool m_typeHasBeenSet; + + int m_maxResults; + bool m_maxResultsHasBeenSet; + + Aws::String m_nextToken; + bool m_nextTokenHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsResult.h new file mode 100644 index 00000000000..1f0dddfd813 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListCodeReviewsResult.h @@ -0,0 +1,127 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API ListCodeReviewsResult + { + public: + ListCodeReviewsResult(); + ListCodeReviewsResult(const Aws::AmazonWebServiceResult& result); + ListCodeReviewsResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline const Aws::Vector& GetCodeReviewSummaries() const{ return m_codeReviewSummaries; } + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline void SetCodeReviewSummaries(const Aws::Vector& value) { m_codeReviewSummaries = value; } + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline void SetCodeReviewSummaries(Aws::Vector&& value) { m_codeReviewSummaries = std::move(value); } + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline ListCodeReviewsResult& WithCodeReviewSummaries(const Aws::Vector& value) { SetCodeReviewSummaries(value); return *this;} + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline ListCodeReviewsResult& WithCodeReviewSummaries(Aws::Vector&& value) { SetCodeReviewSummaries(std::move(value)); return *this;} + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline ListCodeReviewsResult& AddCodeReviewSummaries(const CodeReviewSummary& value) { m_codeReviewSummaries.push_back(value); return *this; } + + /** + *

A list of code reviews that meet the criteria of the request.

+ */ + inline ListCodeReviewsResult& AddCodeReviewSummaries(CodeReviewSummary&& value) { m_codeReviewSummaries.push_back(std::move(value)); return *this; } + + + /** + *

Pagination token.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const char* value) { m_nextToken.assign(value); } + + /** + *

Pagination token.

+ */ + inline ListCodeReviewsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

Pagination token.

+ */ + inline ListCodeReviewsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

Pagination token.

+ */ + inline ListCodeReviewsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + private: + + Aws::Vector m_codeReviewSummaries; + + Aws::String m_nextToken; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackRequest.h new file mode 100644 index 00000000000..d2bb5f78e40 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackRequest.h @@ -0,0 +1,330 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API ListRecommendationFeedbackRequest : public CodeGuruReviewerRequest + { + public: + ListRecommendationFeedbackRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ListRecommendationFeedback"; } + + Aws::String SerializePayload() const override; + + void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline int GetMaxResults() const{ return m_maxResults; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline ListRecommendationFeedbackRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline ListRecommendationFeedbackRequest& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline ListRecommendationFeedbackRequest& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline ListRecommendationFeedbackRequest& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline const Aws::Vector& GetUserIds() const{ return m_userIds; } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline bool UserIdsHasBeenSet() const { return m_userIdsHasBeenSet; } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline void SetUserIds(const Aws::Vector& value) { m_userIdsHasBeenSet = true; m_userIds = value; } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline void SetUserIds(Aws::Vector&& value) { m_userIdsHasBeenSet = true; m_userIds = std::move(value); } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline ListRecommendationFeedbackRequest& WithUserIds(const Aws::Vector& value) { SetUserIds(value); return *this;} + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline ListRecommendationFeedbackRequest& WithUserIds(Aws::Vector&& value) { SetUserIds(std::move(value)); return *this;} + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline ListRecommendationFeedbackRequest& AddUserIds(const Aws::String& value) { m_userIdsHasBeenSet = true; m_userIds.push_back(value); return *this; } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline ListRecommendationFeedbackRequest& AddUserIds(Aws::String&& value) { m_userIdsHasBeenSet = true; m_userIds.push_back(std::move(value)); return *this; } + + /** + *

Filter on userIds that need to be applied before displaying the result. This + * can be used to query all the recommendation feedback for a code review from a + * given user.

+ */ + inline ListRecommendationFeedbackRequest& AddUserIds(const char* value) { m_userIdsHasBeenSet = true; m_userIds.push_back(value); return *this; } + + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline const Aws::Vector& GetRecommendationIds() const{ return m_recommendationIds; } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline bool RecommendationIdsHasBeenSet() const { return m_recommendationIdsHasBeenSet; } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline void SetRecommendationIds(const Aws::Vector& value) { m_recommendationIdsHasBeenSet = true; m_recommendationIds = value; } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline void SetRecommendationIds(Aws::Vector&& value) { m_recommendationIdsHasBeenSet = true; m_recommendationIds = std::move(value); } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline ListRecommendationFeedbackRequest& WithRecommendationIds(const Aws::Vector& value) { SetRecommendationIds(value); return *this;} + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline ListRecommendationFeedbackRequest& WithRecommendationIds(Aws::Vector&& value) { SetRecommendationIds(std::move(value)); return *this;} + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline ListRecommendationFeedbackRequest& AddRecommendationIds(const Aws::String& value) { m_recommendationIdsHasBeenSet = true; m_recommendationIds.push_back(value); return *this; } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline ListRecommendationFeedbackRequest& AddRecommendationIds(Aws::String&& value) { m_recommendationIdsHasBeenSet = true; m_recommendationIds.push_back(std::move(value)); return *this; } + + /** + *

Filter on recommendationIds that need to be applied before displaying the + * result. This can be used to query all the recommendation feedback for a given + * recommendation.

+ */ + inline ListRecommendationFeedbackRequest& AddRecommendationIds(const char* value) { m_recommendationIdsHasBeenSet = true; m_recommendationIds.push_back(value); return *this; } + + private: + + Aws::String m_nextToken; + bool m_nextTokenHasBeenSet; + + int m_maxResults; + bool m_maxResultsHasBeenSet; + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::Vector m_userIds; + bool m_userIdsHasBeenSet; + + Aws::Vector m_recommendationIds; + bool m_recommendationIdsHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackResult.h new file mode 100644 index 00000000000..740f0595e8b --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationFeedbackResult.h @@ -0,0 +1,148 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API ListRecommendationFeedbackResult + { + public: + ListRecommendationFeedbackResult(); + ListRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result); + ListRecommendationFeedbackResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline const Aws::Vector& GetRecommendationFeedbackSummaries() const{ return m_recommendationFeedbackSummaries; } + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline void SetRecommendationFeedbackSummaries(const Aws::Vector& value) { m_recommendationFeedbackSummaries = value; } + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline void SetRecommendationFeedbackSummaries(Aws::Vector&& value) { m_recommendationFeedbackSummaries = std::move(value); } + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline ListRecommendationFeedbackResult& WithRecommendationFeedbackSummaries(const Aws::Vector& value) { SetRecommendationFeedbackSummaries(value); return *this;} + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline ListRecommendationFeedbackResult& WithRecommendationFeedbackSummaries(Aws::Vector&& value) { SetRecommendationFeedbackSummaries(std::move(value)); return *this;} + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline ListRecommendationFeedbackResult& AddRecommendationFeedbackSummaries(const RecommendationFeedbackSummary& value) { m_recommendationFeedbackSummaries.push_back(value); return *this; } + + /** + *

Recommendation feedback summaries corresponding to the code reivew ARN.

+ */ + inline ListRecommendationFeedbackResult& AddRecommendationFeedbackSummaries(RecommendationFeedbackSummary&& value) { m_recommendationFeedbackSummaries.push_back(std::move(value)); return *this; } + + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline void SetNextToken(const char* value) { m_nextToken.assign(value); } + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

If nextToken is returned, there are more results available. The value of + * nextToken is a unique pagination token for each page. Make the call again using + * the returned token to retrieve the next page. Keep all other arguments + * unchanged.

+ */ + inline ListRecommendationFeedbackResult& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + private: + + Aws::Vector m_recommendationFeedbackSummaries; + + Aws::String m_nextToken; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsRequest.h new file mode 100644 index 00000000000..a16b910f88e --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsRequest.h @@ -0,0 +1,171 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Http +{ + class URI; +} //namespace Http +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API ListRecommendationsRequest : public CodeGuruReviewerRequest + { + public: + ListRecommendationsRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ListRecommendations"; } + + Aws::String SerializePayload() const override; + + void AddQueryStringParameters(Aws::Http::URI& uri) const override; + + + /** + *

Pagination token.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

Pagination token.

+ */ + inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } + + /** + *

Pagination token.

+ */ + inline ListRecommendationsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

Pagination token.

+ */ + inline ListRecommendationsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

Pagination token.

+ */ + inline ListRecommendationsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline int GetMaxResults() const{ return m_maxResults; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } + + /** + *

The maximum number of results that are returned per call. The default is + * 100.

+ */ + inline ListRecommendationsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} + + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline ListRecommendationsRequest& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline ListRecommendationsRequest& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) of the code review to describe.

+ */ + inline ListRecommendationsRequest& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + private: + + Aws::String m_nextToken; + bool m_nextTokenHasBeenSet; + + int m_maxResults; + bool m_maxResultsHasBeenSet; + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsResult.h new file mode 100644 index 00000000000..4c6be9c4c7a --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRecommendationsResult.h @@ -0,0 +1,127 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API ListRecommendationsResult + { + public: + ListRecommendationsResult(); + ListRecommendationsResult(const Aws::AmazonWebServiceResult& result); + ListRecommendationsResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

List of recommendations for the requested code review.

+ */ + inline const Aws::Vector& GetRecommendationSummaries() const{ return m_recommendationSummaries; } + + /** + *

List of recommendations for the requested code review.

+ */ + inline void SetRecommendationSummaries(const Aws::Vector& value) { m_recommendationSummaries = value; } + + /** + *

List of recommendations for the requested code review.

+ */ + inline void SetRecommendationSummaries(Aws::Vector&& value) { m_recommendationSummaries = std::move(value); } + + /** + *

List of recommendations for the requested code review.

+ */ + inline ListRecommendationsResult& WithRecommendationSummaries(const Aws::Vector& value) { SetRecommendationSummaries(value); return *this;} + + /** + *

List of recommendations for the requested code review.

+ */ + inline ListRecommendationsResult& WithRecommendationSummaries(Aws::Vector&& value) { SetRecommendationSummaries(std::move(value)); return *this;} + + /** + *

List of recommendations for the requested code review.

+ */ + inline ListRecommendationsResult& AddRecommendationSummaries(const RecommendationSummary& value) { m_recommendationSummaries.push_back(value); return *this; } + + /** + *

List of recommendations for the requested code review.

+ */ + inline ListRecommendationsResult& AddRecommendationSummaries(RecommendationSummary&& value) { m_recommendationSummaries.push_back(std::move(value)); return *this; } + + + /** + *

Pagination token.

+ */ + inline const Aws::String& GetNextToken() const{ return m_nextToken; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const Aws::String& value) { m_nextToken = value; } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(Aws::String&& value) { m_nextToken = std::move(value); } + + /** + *

Pagination token.

+ */ + inline void SetNextToken(const char* value) { m_nextToken.assign(value); } + + /** + *

Pagination token.

+ */ + inline ListRecommendationsResult& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} + + /** + *

Pagination token.

+ */ + inline ListRecommendationsResult& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} + + /** + *

Pagination token.

+ */ + inline ListRecommendationsResult& WithNextToken(const char* value) { SetNextToken(value); return *this;} + + private: + + Aws::Vector m_recommendationSummaries; + + Aws::String m_nextToken; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRepositoryAssociationsRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRepositoryAssociationsRequest.h index a00b6206ced..d7bed66fb63 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRepositoryAssociationsRequest.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/ListRepositoryAssociationsRequest.h @@ -134,102 +134,111 @@ namespace Model /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline const Aws::Vector& GetNames() const{ return m_names; } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline bool NamesHasBeenSet() const { return m_namesHasBeenSet; } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline void SetNames(const Aws::Vector& value) { m_namesHasBeenSet = true; m_names = value; } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline void SetNames(Aws::Vector&& value) { m_namesHasBeenSet = true; m_names = std::move(value); } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline ListRepositoryAssociationsRequest& WithNames(const Aws::Vector& value) { SetNames(value); return *this;} /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline ListRepositoryAssociationsRequest& WithNames(Aws::Vector&& value) { SetNames(std::move(value)); return *this;} /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline ListRepositoryAssociationsRequest& AddNames(const Aws::String& value) { m_namesHasBeenSet = true; m_names.push_back(value); return *this; } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline ListRepositoryAssociationsRequest& AddNames(Aws::String&& value) { m_namesHasBeenSet = true; m_names.push_back(std::move(value)); return *this; } /** - *

List of names to use as a filter.

+ *

List of repository names to use as a filter.

*/ inline ListRepositoryAssociationsRequest& AddNames(const char* value) { m_namesHasBeenSet = true; m_names.push_back(value); return *this; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline const Aws::Vector& GetOwners() const{ return m_owners; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline bool OwnersHasBeenSet() const { return m_ownersHasBeenSet; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline void SetOwners(const Aws::Vector& value) { m_ownersHasBeenSet = true; m_owners = value; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline void SetOwners(Aws::Vector&& value) { m_ownersHasBeenSet = true; m_owners = std::move(value); } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline ListRepositoryAssociationsRequest& WithOwners(const Aws::Vector& value) { SetOwners(value); return *this;} /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline ListRepositoryAssociationsRequest& WithOwners(Aws::Vector&& value) { SetOwners(std::move(value)); return *this;} /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline ListRepositoryAssociationsRequest& AddOwners(const Aws::String& value) { m_ownersHasBeenSet = true; m_owners.push_back(value); return *this; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline ListRepositoryAssociationsRequest& AddOwners(Aws::String&& value) { m_ownersHasBeenSet = true; m_owners.push_back(std::move(value)); return *this; } /** - *

List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS - * account id. For GitHub, it is the GitHub account name.

+ *

List of owners to use as a filter. For GitHub, this is name of the GitHub + * account that was used to associate the repository. For AWS CodeCommit, it is the + * name of the CodeCommit account that was used to associate the repository.

*/ inline ListRepositoryAssociationsRequest& AddOwners(const char* value) { m_ownersHasBeenSet = true; m_owners.push_back(value); return *this; } @@ -238,13 +247,12 @@ namespace Model *

The maximum number of repository association results returned by * ListRepositoryAssociations in paginated output. When this parameter * is used, ListRepositoryAssociations only returns - * maxResults results in a single page along with a - * nextToken response element. The remaining results of the initial - * request can be seen by sending another ListRepositoryAssociations - * request with the returned nextToken value. This value can be - * between 1 and 100. If this parameter is not used, then - * ListRepositoryAssociations returns up to 100 results and a - * nextToken value if applicable.

+ * maxResults results in a single page with a nextToken + * response element. The remaining results of the initial request can be seen by + * sending another ListRepositoryAssociations request with the + * returned nextToken value. This value can be between 1 and 25. If + * this parameter is not used, ListRepositoryAssociations returns up + * to 25 results and a nextToken value if applicable.

*/ inline int GetMaxResults() const{ return m_maxResults; } @@ -252,13 +260,12 @@ namespace Model *

The maximum number of repository association results returned by * ListRepositoryAssociations in paginated output. When this parameter * is used, ListRepositoryAssociations only returns - * maxResults results in a single page along with a - * nextToken response element. The remaining results of the initial - * request can be seen by sending another ListRepositoryAssociations - * request with the returned nextToken value. This value can be - * between 1 and 100. If this parameter is not used, then - * ListRepositoryAssociations returns up to 100 results and a - * nextToken value if applicable.

+ * maxResults results in a single page with a nextToken + * response element. The remaining results of the initial request can be seen by + * sending another ListRepositoryAssociations request with the + * returned nextToken value. This value can be between 1 and 25. If + * this parameter is not used, ListRepositoryAssociations returns up + * to 25 results and a nextToken value if applicable.

*/ inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } @@ -266,13 +273,12 @@ namespace Model *

The maximum number of repository association results returned by * ListRepositoryAssociations in paginated output. When this parameter * is used, ListRepositoryAssociations only returns - * maxResults results in a single page along with a - * nextToken response element. The remaining results of the initial - * request can be seen by sending another ListRepositoryAssociations - * request with the returned nextToken value. This value can be - * between 1 and 100. If this parameter is not used, then - * ListRepositoryAssociations returns up to 100 results and a - * nextToken value if applicable.

+ * maxResults results in a single page with a nextToken + * response element. The remaining results of the initial request can be seen by + * sending another ListRepositoryAssociations request with the + * returned nextToken value. This value can be between 1 and 25. If + * this parameter is not used, ListRepositoryAssociations returns up + * to 25 results and a nextToken value if applicable.

*/ inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } @@ -280,13 +286,12 @@ namespace Model *

The maximum number of repository association results returned by * ListRepositoryAssociations in paginated output. When this parameter * is used, ListRepositoryAssociations only returns - * maxResults results in a single page along with a - * nextToken response element. The remaining results of the initial - * request can be seen by sending another ListRepositoryAssociations - * request with the returned nextToken value. This value can be - * between 1 and 100. If this parameter is not used, then - * ListRepositoryAssociations returns up to 100 results and a - * nextToken value if applicable.

+ * maxResults results in a single page with a nextToken + * response element. The remaining results of the initial request can be seen by + * sending another ListRepositoryAssociations request with the + * returned nextToken value. This value can be between 1 and 25. If + * this parameter is not used, ListRepositoryAssociations returns up + * to 25 results and a nextToken value if applicable.

*/ inline ListRepositoryAssociationsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} @@ -296,9 +301,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } @@ -307,9 +312,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } @@ -318,9 +323,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } @@ -329,9 +334,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } @@ -340,9 +345,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } @@ -351,9 +356,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline ListRepositoryAssociationsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} @@ -362,9 +367,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline ListRepositoryAssociationsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} @@ -373,9 +378,9 @@ namespace Model * ListRepositoryAssociations request where maxResults * was used and the results exceeded the value of that parameter. Pagination * continues from the end of the previous results that returned the - * nextToken value.

This token should be treated as an - * opaque identifier that is only used to retrieve the next items in a list and not - * for other programmatic purposes.

+ * nextToken value.

Treat this token as an opaque + * identifier that is only used to retrieve the next items in a list and not for + * other programmatic purposes.

*/ inline ListRepositoryAssociationsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Metrics.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Metrics.h new file mode 100644 index 00000000000..4055092af7b --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Metrics.h @@ -0,0 +1,101 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about the statistics from the code review.

See + * Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API Metrics + { + public: + Metrics(); + Metrics(Aws::Utils::Json::JsonView jsonValue); + Metrics& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

Lines of code metered in the code review.

+ */ + inline long long GetMeteredLinesOfCodeCount() const{ return m_meteredLinesOfCodeCount; } + + /** + *

Lines of code metered in the code review.

+ */ + inline bool MeteredLinesOfCodeCountHasBeenSet() const { return m_meteredLinesOfCodeCountHasBeenSet; } + + /** + *

Lines of code metered in the code review.

+ */ + inline void SetMeteredLinesOfCodeCount(long long value) { m_meteredLinesOfCodeCountHasBeenSet = true; m_meteredLinesOfCodeCount = value; } + + /** + *

Lines of code metered in the code review.

+ */ + inline Metrics& WithMeteredLinesOfCodeCount(long long value) { SetMeteredLinesOfCodeCount(value); return *this;} + + + /** + *

Total number of recommendations found in the code review.

+ */ + inline long long GetFindingsCount() const{ return m_findingsCount; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline bool FindingsCountHasBeenSet() const { return m_findingsCountHasBeenSet; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline void SetFindingsCount(long long value) { m_findingsCountHasBeenSet = true; m_findingsCount = value; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline Metrics& WithFindingsCount(long long value) { SetFindingsCount(value); return *this;} + + private: + + long long m_meteredLinesOfCodeCount; + bool m_meteredLinesOfCodeCountHasBeenSet; + + long long m_findingsCount; + bool m_findingsCountHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/MetricsSummary.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/MetricsSummary.h new file mode 100644 index 00000000000..84c1def5b25 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/MetricsSummary.h @@ -0,0 +1,100 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about metrics summaries.

See Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API MetricsSummary + { + public: + MetricsSummary(); + MetricsSummary(Aws::Utils::Json::JsonView jsonValue); + MetricsSummary& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

Lines of code metered in the code review.

+ */ + inline long long GetMeteredLinesOfCodeCount() const{ return m_meteredLinesOfCodeCount; } + + /** + *

Lines of code metered in the code review.

+ */ + inline bool MeteredLinesOfCodeCountHasBeenSet() const { return m_meteredLinesOfCodeCountHasBeenSet; } + + /** + *

Lines of code metered in the code review.

+ */ + inline void SetMeteredLinesOfCodeCount(long long value) { m_meteredLinesOfCodeCountHasBeenSet = true; m_meteredLinesOfCodeCount = value; } + + /** + *

Lines of code metered in the code review.

+ */ + inline MetricsSummary& WithMeteredLinesOfCodeCount(long long value) { SetMeteredLinesOfCodeCount(value); return *this;} + + + /** + *

Total number of recommendations found in the code review.

+ */ + inline long long GetFindingsCount() const{ return m_findingsCount; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline bool FindingsCountHasBeenSet() const { return m_findingsCountHasBeenSet; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline void SetFindingsCount(long long value) { m_findingsCountHasBeenSet = true; m_findingsCount = value; } + + /** + *

Total number of recommendations found in the code review.

+ */ + inline MetricsSummary& WithFindingsCount(long long value) { SetFindingsCount(value); return *this;} + + private: + + long long m_meteredLinesOfCodeCount; + bool m_meteredLinesOfCodeCountHasBeenSet; + + long long m_findingsCount; + bool m_findingsCountHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackRequest.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackRequest.h new file mode 100644 index 00000000000..1c59ee8ea1e --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackRequest.h @@ -0,0 +1,199 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + */ + class AWS_CODEGURUREVIEWER_API PutRecommendationFeedbackRequest : public CodeGuruReviewerRequest + { + public: + PutRecommendationFeedbackRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "PutRecommendationFeedback"; } + + Aws::String SerializePayload() const override; + + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline PutRecommendationFeedbackRequest& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline PutRecommendationFeedbackRequest& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline PutRecommendationFeedbackRequest& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline PutRecommendationFeedbackRequest& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline PutRecommendationFeedbackRequest& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} + + /** + *

The recommendation ID that can be used to track the provided recommendations + * and then to collect the feedback.

+ */ + inline PutRecommendationFeedbackRequest& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} + + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline const Aws::Vector& GetReactions() const{ return m_reactions; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline bool ReactionsHasBeenSet() const { return m_reactionsHasBeenSet; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline void SetReactions(const Aws::Vector& value) { m_reactionsHasBeenSet = true; m_reactions = value; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline void SetReactions(Aws::Vector&& value) { m_reactionsHasBeenSet = true; m_reactions = std::move(value); } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline PutRecommendationFeedbackRequest& WithReactions(const Aws::Vector& value) { SetReactions(value); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline PutRecommendationFeedbackRequest& WithReactions(Aws::Vector&& value) { SetReactions(std::move(value)); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline PutRecommendationFeedbackRequest& AddReactions(const Reaction& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(value); return *this; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. If you + * send an empty list it clears all your feedback.

+ */ + inline PutRecommendationFeedbackRequest& AddReactions(Reaction&& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(std::move(value)); return *this; } + + private: + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::String m_recommendationId; + bool m_recommendationIdHasBeenSet; + + Aws::Vector m_reactions; + bool m_reactionsHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackResult.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackResult.h new file mode 100644 index 00000000000..e5a5a6977f4 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/PutRecommendationFeedbackResult.h @@ -0,0 +1,46 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Json +{ + class JsonValue; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + class AWS_CODEGURUREVIEWER_API PutRecommendationFeedbackResult + { + public: + PutRecommendationFeedbackResult(); + PutRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result); + PutRecommendationFeedbackResult& operator=(const Aws::AmazonWebServiceResult& result); + + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Reaction.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Reaction.h new file mode 100644 index 00000000000..fd2e74ae73d --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Reaction.h @@ -0,0 +1,41 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + enum class Reaction + { + NOT_SET, + ThumbsUp, + ThumbsDown + }; + +namespace ReactionMapper +{ +AWS_CODEGURUREVIEWER_API Reaction GetReactionForName(const Aws::String& name); + +AWS_CODEGURUREVIEWER_API Aws::String GetNameForReaction(Reaction value); +} // namespace ReactionMapper +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedback.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedback.h new file mode 100644 index 00000000000..071eeb57a71 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedback.h @@ -0,0 +1,318 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about the recommendation feedback.

See Also:

+ * AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API RecommendationFeedback + { + public: + RecommendationFeedback(); + RecommendationFeedback(Aws::Utils::Json::JsonView jsonValue); + RecommendationFeedback& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline const Aws::String& GetCodeReviewArn() const{ return m_codeReviewArn; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline bool CodeReviewArnHasBeenSet() const { return m_codeReviewArnHasBeenSet; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const Aws::String& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = value; } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(Aws::String&& value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn = std::move(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline void SetCodeReviewArn(const char* value) { m_codeReviewArnHasBeenSet = true; m_codeReviewArn.assign(value); } + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline RecommendationFeedback& WithCodeReviewArn(const Aws::String& value) { SetCodeReviewArn(value); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline RecommendationFeedback& WithCodeReviewArn(Aws::String&& value) { SetCodeReviewArn(std::move(value)); return *this;} + + /** + *

The Amazon Resource Name (ARN) that identifies the code review.

+ */ + inline RecommendationFeedback& WithCodeReviewArn(const char* value) { SetCodeReviewArn(value); return *this;} + + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedback& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedback& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedback& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} + + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline const Aws::Vector& GetReactions() const{ return m_reactions; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline bool ReactionsHasBeenSet() const { return m_reactionsHasBeenSet; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline void SetReactions(const Aws::Vector& value) { m_reactionsHasBeenSet = true; m_reactions = value; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline void SetReactions(Aws::Vector&& value) { m_reactionsHasBeenSet = true; m_reactions = std::move(value); } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline RecommendationFeedback& WithReactions(const Aws::Vector& value) { SetReactions(value); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline RecommendationFeedback& WithReactions(Aws::Vector&& value) { SetReactions(std::move(value)); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline RecommendationFeedback& AddReactions(const Reaction& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(value); return *this; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis. You + * can send an empty list to clear off all your feedback.

+ */ + inline RecommendationFeedback& AddReactions(Reaction&& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(std::move(value)); return *this; } + + + /** + *

The user principal that made the API call.

+ */ + inline const Aws::String& GetUserId() const{ return m_userId; } + + /** + *

The user principal that made the API call.

+ */ + inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } + + /** + *

The user principal that made the API call.

+ */ + inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } + + /** + *

The user principal that made the API call.

+ */ + inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } + + /** + *

The user principal that made the API call.

+ */ + inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } + + /** + *

The user principal that made the API call.

+ */ + inline RecommendationFeedback& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} + + /** + *

The user principal that made the API call.

+ */ + inline RecommendationFeedback& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} + + /** + *

The user principal that made the API call.

+ */ + inline RecommendationFeedback& WithUserId(const char* value) { SetUserId(value); return *this;} + + + /** + *

The time at which the feedback was created.

+ */ + inline const Aws::Utils::DateTime& GetCreatedTimeStamp() const{ return m_createdTimeStamp; } + + /** + *

The time at which the feedback was created.

+ */ + inline bool CreatedTimeStampHasBeenSet() const { return m_createdTimeStampHasBeenSet; } + + /** + *

The time at which the feedback was created.

+ */ + inline void SetCreatedTimeStamp(const Aws::Utils::DateTime& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = value; } + + /** + *

The time at which the feedback was created.

+ */ + inline void SetCreatedTimeStamp(Aws::Utils::DateTime&& value) { m_createdTimeStampHasBeenSet = true; m_createdTimeStamp = std::move(value); } + + /** + *

The time at which the feedback was created.

+ */ + inline RecommendationFeedback& WithCreatedTimeStamp(const Aws::Utils::DateTime& value) { SetCreatedTimeStamp(value); return *this;} + + /** + *

The time at which the feedback was created.

+ */ + inline RecommendationFeedback& WithCreatedTimeStamp(Aws::Utils::DateTime&& value) { SetCreatedTimeStamp(std::move(value)); return *this;} + + + /** + *

The time at which the feedback was last updated.

+ */ + inline const Aws::Utils::DateTime& GetLastUpdatedTimeStamp() const{ return m_lastUpdatedTimeStamp; } + + /** + *

The time at which the feedback was last updated.

+ */ + inline bool LastUpdatedTimeStampHasBeenSet() const { return m_lastUpdatedTimeStampHasBeenSet; } + + /** + *

The time at which the feedback was last updated.

+ */ + inline void SetLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = value; } + + /** + *

The time at which the feedback was last updated.

+ */ + inline void SetLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { m_lastUpdatedTimeStampHasBeenSet = true; m_lastUpdatedTimeStamp = std::move(value); } + + /** + *

The time at which the feedback was last updated.

+ */ + inline RecommendationFeedback& WithLastUpdatedTimeStamp(const Aws::Utils::DateTime& value) { SetLastUpdatedTimeStamp(value); return *this;} + + /** + *

The time at which the feedback was last updated.

+ */ + inline RecommendationFeedback& WithLastUpdatedTimeStamp(Aws::Utils::DateTime&& value) { SetLastUpdatedTimeStamp(std::move(value)); return *this;} + + private: + + Aws::String m_codeReviewArn; + bool m_codeReviewArnHasBeenSet; + + Aws::String m_recommendationId; + bool m_recommendationIdHasBeenSet; + + Aws::Vector m_reactions; + bool m_reactionsHasBeenSet; + + Aws::String m_userId; + bool m_userIdHasBeenSet; + + Aws::Utils::DateTime m_createdTimeStamp; + bool m_createdTimeStampHasBeenSet; + + Aws::Utils::DateTime m_lastUpdatedTimeStamp; + bool m_lastUpdatedTimeStampHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedbackSummary.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedbackSummary.h new file mode 100644 index 00000000000..536140e96f6 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationFeedbackSummary.h @@ -0,0 +1,197 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about recommendation feedback summaries.

See + * Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API RecommendationFeedbackSummary + { + public: + RecommendationFeedbackSummary(); + RecommendationFeedbackSummary(Aws::Utils::Json::JsonView jsonValue); + RecommendationFeedbackSummary& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedbackSummary& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedbackSummary& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationFeedbackSummary& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} + + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline const Aws::Vector& GetReactions() const{ return m_reactions; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline bool ReactionsHasBeenSet() const { return m_reactionsHasBeenSet; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline void SetReactions(const Aws::Vector& value) { m_reactionsHasBeenSet = true; m_reactions = value; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline void SetReactions(Aws::Vector&& value) { m_reactionsHasBeenSet = true; m_reactions = std::move(value); } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline RecommendationFeedbackSummary& WithReactions(const Aws::Vector& value) { SetReactions(value); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline RecommendationFeedbackSummary& WithReactions(Aws::Vector&& value) { SetReactions(std::move(value)); return *this;} + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline RecommendationFeedbackSummary& AddReactions(const Reaction& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(value); return *this; } + + /** + *

List for storing reactions. Reactions are utf-8 text code for emojis.

+ */ + inline RecommendationFeedbackSummary& AddReactions(Reaction&& value) { m_reactionsHasBeenSet = true; m_reactions.push_back(std::move(value)); return *this; } + + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline const Aws::String& GetUserId() const{ return m_userId; } + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline RecommendationFeedbackSummary& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline RecommendationFeedbackSummary& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} + + /** + *

The identifier for the user that gave the feedback.

+ */ + inline RecommendationFeedbackSummary& WithUserId(const char* value) { SetUserId(value); return *this;} + + private: + + Aws::String m_recommendationId; + bool m_recommendationIdHasBeenSet; + + Aws::Vector m_reactions; + bool m_reactionsHasBeenSet; + + Aws::String m_userId; + bool m_userIdHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationSummary.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationSummary.h new file mode 100644 index 00000000000..1e1be4fa23d --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RecommendationSummary.h @@ -0,0 +1,262 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about recommendations.

See Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API RecommendationSummary + { + public: + RecommendationSummary(); + RecommendationSummary(Aws::Utils::Json::JsonView jsonValue); + RecommendationSummary& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline const Aws::String& GetFilePath() const{ return m_filePath; } + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline bool FilePathHasBeenSet() const { return m_filePathHasBeenSet; } + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline void SetFilePath(const Aws::String& value) { m_filePathHasBeenSet = true; m_filePath = value; } + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline void SetFilePath(Aws::String&& value) { m_filePathHasBeenSet = true; m_filePath = std::move(value); } + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline void SetFilePath(const char* value) { m_filePathHasBeenSet = true; m_filePath.assign(value); } + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline RecommendationSummary& WithFilePath(const Aws::String& value) { SetFilePath(value); return *this;} + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline RecommendationSummary& WithFilePath(Aws::String&& value) { SetFilePath(std::move(value)); return *this;} + + /** + *

Name of the file on which a recommendation is provided.

+ */ + inline RecommendationSummary& WithFilePath(const char* value) { SetFilePath(value); return *this;} + + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline const Aws::String& GetRecommendationId() const{ return m_recommendationId; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline bool RecommendationIdHasBeenSet() const { return m_recommendationIdHasBeenSet; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const Aws::String& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = value; } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(Aws::String&& value) { m_recommendationIdHasBeenSet = true; m_recommendationId = std::move(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline void SetRecommendationId(const char* value) { m_recommendationIdHasBeenSet = true; m_recommendationId.assign(value); } + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationSummary& WithRecommendationId(const Aws::String& value) { SetRecommendationId(value); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationSummary& WithRecommendationId(Aws::String&& value) { SetRecommendationId(std::move(value)); return *this;} + + /** + *

The recommendation ID that can be used to track the provided + * recommendations. Later on it can be used to collect the feedback.

+ */ + inline RecommendationSummary& WithRecommendationId(const char* value) { SetRecommendationId(value); return *this;} + + + /** + *

Start line from where the recommendation is applicable in the source commit + * or source branch.

+ */ + inline int GetStartLine() const{ return m_startLine; } + + /** + *

Start line from where the recommendation is applicable in the source commit + * or source branch.

+ */ + inline bool StartLineHasBeenSet() const { return m_startLineHasBeenSet; } + + /** + *

Start line from where the recommendation is applicable in the source commit + * or source branch.

+ */ + inline void SetStartLine(int value) { m_startLineHasBeenSet = true; m_startLine = value; } + + /** + *

Start line from where the recommendation is applicable in the source commit + * or source branch.

+ */ + inline RecommendationSummary& WithStartLine(int value) { SetStartLine(value); return *this;} + + + /** + *

Last line where the recommendation is applicable in the source commit or + * source branch. For a single line comment the start line and end line values will + * be the same.

+ */ + inline int GetEndLine() const{ return m_endLine; } + + /** + *

Last line where the recommendation is applicable in the source commit or + * source branch. For a single line comment the start line and end line values will + * be the same.

+ */ + inline bool EndLineHasBeenSet() const { return m_endLineHasBeenSet; } + + /** + *

Last line where the recommendation is applicable in the source commit or + * source branch. For a single line comment the start line and end line values will + * be the same.

+ */ + inline void SetEndLine(int value) { m_endLineHasBeenSet = true; m_endLine = value; } + + /** + *

Last line where the recommendation is applicable in the source commit or + * source branch. For a single line comment the start line and end line values will + * be the same.

+ */ + inline RecommendationSummary& WithEndLine(int value) { SetEndLine(value); return *this;} + + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline const Aws::String& GetDescription() const{ return m_description; } + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; } + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; } + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); } + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); } + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline RecommendationSummary& WithDescription(const Aws::String& value) { SetDescription(value); return *this;} + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline RecommendationSummary& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;} + + /** + *

A description of the recommendation generated by CodeGuru Reviewer for the + * lines of code between the start line and the end line.

+ */ + inline RecommendationSummary& WithDescription(const char* value) { SetDescription(value); return *this;} + + private: + + Aws::String m_filePath; + bool m_filePathHasBeenSet; + + Aws::String m_recommendationId; + bool m_recommendationIdHasBeenSet; + + int m_startLine; + bool m_startLineHasBeenSet; + + int m_endLine; + bool m_endLineHasBeenSet; + + Aws::String m_description; + bool m_descriptionHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociation.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociation.h index 2df8a2b061f..b51b3c4abb0 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociation.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociation.h @@ -51,42 +51,42 @@ namespace Model /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline const Aws::String& GetAssociationId() const{ return m_associationId; } /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline bool AssociationIdHasBeenSet() const { return m_associationIdHasBeenSet; } /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline void SetAssociationId(const Aws::String& value) { m_associationIdHasBeenSet = true; m_associationId = value; } /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline void SetAssociationId(Aws::String&& value) { m_associationIdHasBeenSet = true; m_associationId = std::move(value); } /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline void SetAssociationId(const char* value) { m_associationIdHasBeenSet = true; m_associationId.assign(value); } /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline RepositoryAssociation& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline RepositoryAssociation& WithAssociationId(Aws::String&& value) { SetAssociationId(std::move(value)); return *this;} /** - *

The id of the repository association.

+ *

The ID of the repository association.

*/ inline RepositoryAssociation& WithAssociationId(const char* value) { SetAssociationId(value); return *this;} diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociationSummary.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociationSummary.h index bb1e2e97c03..2ec1baaa769 100644 --- a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociationSummary.h +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/RepositoryAssociationSummary.h @@ -286,8 +286,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ @@ -297,8 +296,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ @@ -308,8 +306,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ @@ -319,8 +316,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ @@ -330,8 +326,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ @@ -341,8 +336,7 @@ namespace Model *

The state of the repository association.

Associated
*

Amazon CodeGuru Reviewer is associated with the repository.

*
Associating

The association is in progress.

- *
Failed

The association failed. For more information about - * troubleshooting (or why it failed), see [troubleshooting topic].

+ *
Failed

The association failed.

*
Disassociating

Amazon CodeGuru Reviewer is in the process of * disassociating with the repository.

*/ diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/SourceCodeType.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/SourceCodeType.h new file mode 100644 index 00000000000..fe1556ec5af --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/SourceCodeType.h @@ -0,0 +1,88 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Json +{ + class JsonValue; + class JsonView; +} // namespace Json +} // namespace Utils +namespace CodeGuruReviewer +{ +namespace Model +{ + + /** + *

Information about the source code type.

See Also:

AWS + * API Reference

+ */ + class AWS_CODEGURUREVIEWER_API SourceCodeType + { + public: + SourceCodeType(); + SourceCodeType(Aws::Utils::Json::JsonView jsonValue); + SourceCodeType& operator=(Aws::Utils::Json::JsonView jsonValue); + Aws::Utils::Json::JsonValue Jsonize() const; + + + /** + *

The commit diff for the pull request.

+ */ + inline const CommitDiffSourceCodeType& GetCommitDiff() const{ return m_commitDiff; } + + /** + *

The commit diff for the pull request.

+ */ + inline bool CommitDiffHasBeenSet() const { return m_commitDiffHasBeenSet; } + + /** + *

The commit diff for the pull request.

+ */ + inline void SetCommitDiff(const CommitDiffSourceCodeType& value) { m_commitDiffHasBeenSet = true; m_commitDiff = value; } + + /** + *

The commit diff for the pull request.

+ */ + inline void SetCommitDiff(CommitDiffSourceCodeType&& value) { m_commitDiffHasBeenSet = true; m_commitDiff = std::move(value); } + + /** + *

The commit diff for the pull request.

+ */ + inline SourceCodeType& WithCommitDiff(const CommitDiffSourceCodeType& value) { SetCommitDiff(value); return *this;} + + /** + *

The commit diff for the pull request.

+ */ + inline SourceCodeType& WithCommitDiff(CommitDiffSourceCodeType&& value) { SetCommitDiff(std::move(value)); return *this;} + + private: + + CommitDiffSourceCodeType m_commitDiff; + bool m_commitDiffHasBeenSet; + }; + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Type.h b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Type.h new file mode 100644 index 00000000000..fafd1b2f4c2 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/include/aws/codeguru-reviewer/model/Type.h @@ -0,0 +1,40 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + enum class Type + { + NOT_SET, + PullRequest + }; + +namespace TypeMapper +{ +AWS_CODEGURUREVIEWER_API Type GetTypeForName(const Aws::String& name); + +AWS_CODEGURUREVIEWER_API Aws::String GetNameForType(Type value); +} // namespace TypeMapper +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/CodeGuruReviewerClient.cpp b/aws-cpp-sdk-codeguru-reviewer/source/CodeGuruReviewerClient.cpp index 7531da3d99b..3d5a92cf2e6 100644 --- a/aws-cpp-sdk-codeguru-reviewer/source/CodeGuruReviewerClient.cpp +++ b/aws-cpp-sdk-codeguru-reviewer/source/CodeGuruReviewerClient.cpp @@ -31,9 +31,15 @@ #include #include #include +#include +#include #include #include +#include +#include +#include #include +#include using namespace Aws; using namespace Aws::Auth; @@ -142,6 +148,93 @@ void CodeGuruReviewerClient::AssociateRepositoryAsyncHelper(const AssociateRepos handler(this, request, AssociateRepository(request), context); } +DescribeCodeReviewOutcome CodeGuruReviewerClient::DescribeCodeReview(const DescribeCodeReviewRequest& request) const +{ + if (!request.CodeReviewArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DescribeCodeReview", "Required field: CodeReviewArn, is not set"); + return DescribeCodeReviewOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [CodeReviewArn]", false)); + } + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/codereviews/"; + ss << request.GetCodeReviewArn(); + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return DescribeCodeReviewOutcome(DescribeCodeReviewResult(outcome.GetResult())); + } + else + { + return DescribeCodeReviewOutcome(outcome.GetError()); + } +} + +DescribeCodeReviewOutcomeCallable CodeGuruReviewerClient::DescribeCodeReviewCallable(const DescribeCodeReviewRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< DescribeCodeReviewOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeCodeReview(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::DescribeCodeReviewAsync(const DescribeCodeReviewRequest& request, const DescribeCodeReviewResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->DescribeCodeReviewAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::DescribeCodeReviewAsyncHelper(const DescribeCodeReviewRequest& request, const DescribeCodeReviewResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, DescribeCodeReview(request), context); +} + +DescribeRecommendationFeedbackOutcome CodeGuruReviewerClient::DescribeRecommendationFeedback(const DescribeRecommendationFeedbackRequest& request) const +{ + if (!request.CodeReviewArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DescribeRecommendationFeedback", "Required field: CodeReviewArn, is not set"); + return DescribeRecommendationFeedbackOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [CodeReviewArn]", false)); + } + if (!request.RecommendationIdHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("DescribeRecommendationFeedback", "Required field: RecommendationId, is not set"); + return DescribeRecommendationFeedbackOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [RecommendationId]", false)); + } + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/feedback/"; + ss << request.GetCodeReviewArn(); + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return DescribeRecommendationFeedbackOutcome(DescribeRecommendationFeedbackResult(outcome.GetResult())); + } + else + { + return DescribeRecommendationFeedbackOutcome(outcome.GetError()); + } +} + +DescribeRecommendationFeedbackOutcomeCallable CodeGuruReviewerClient::DescribeRecommendationFeedbackCallable(const DescribeRecommendationFeedbackRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< DescribeRecommendationFeedbackOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeRecommendationFeedback(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::DescribeRecommendationFeedbackAsync(const DescribeRecommendationFeedbackRequest& request, const DescribeRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->DescribeRecommendationFeedbackAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::DescribeRecommendationFeedbackAsyncHelper(const DescribeRecommendationFeedbackRequest& request, const DescribeRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, DescribeRecommendationFeedback(request), context); +} + DescribeRepositoryAssociationOutcome CodeGuruReviewerClient::DescribeRepositoryAssociation(const DescribeRepositoryAssociationRequest& request) const { if (!request.AssociationArnHasBeenSet()) @@ -224,6 +317,130 @@ void CodeGuruReviewerClient::DisassociateRepositoryAsyncHelper(const Disassociat handler(this, request, DisassociateRepository(request), context); } +ListCodeReviewsOutcome CodeGuruReviewerClient::ListCodeReviews(const ListCodeReviewsRequest& request) const +{ + if (!request.TypeHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("ListCodeReviews", "Required field: Type, is not set"); + return ListCodeReviewsOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [Type]", false)); + } + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/codereviews"; + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return ListCodeReviewsOutcome(ListCodeReviewsResult(outcome.GetResult())); + } + else + { + return ListCodeReviewsOutcome(outcome.GetError()); + } +} + +ListCodeReviewsOutcomeCallable CodeGuruReviewerClient::ListCodeReviewsCallable(const ListCodeReviewsRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< ListCodeReviewsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListCodeReviews(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::ListCodeReviewsAsync(const ListCodeReviewsRequest& request, const ListCodeReviewsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->ListCodeReviewsAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::ListCodeReviewsAsyncHelper(const ListCodeReviewsRequest& request, const ListCodeReviewsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, ListCodeReviews(request), context); +} + +ListRecommendationFeedbackOutcome CodeGuruReviewerClient::ListRecommendationFeedback(const ListRecommendationFeedbackRequest& request) const +{ + if (!request.CodeReviewArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("ListRecommendationFeedback", "Required field: CodeReviewArn, is not set"); + return ListRecommendationFeedbackOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [CodeReviewArn]", false)); + } + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/feedback/"; + ss << request.GetCodeReviewArn(); + ss << "/RecommendationFeedback"; + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return ListRecommendationFeedbackOutcome(ListRecommendationFeedbackResult(outcome.GetResult())); + } + else + { + return ListRecommendationFeedbackOutcome(outcome.GetError()); + } +} + +ListRecommendationFeedbackOutcomeCallable CodeGuruReviewerClient::ListRecommendationFeedbackCallable(const ListRecommendationFeedbackRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< ListRecommendationFeedbackOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListRecommendationFeedback(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::ListRecommendationFeedbackAsync(const ListRecommendationFeedbackRequest& request, const ListRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->ListRecommendationFeedbackAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::ListRecommendationFeedbackAsyncHelper(const ListRecommendationFeedbackRequest& request, const ListRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, ListRecommendationFeedback(request), context); +} + +ListRecommendationsOutcome CodeGuruReviewerClient::ListRecommendations(const ListRecommendationsRequest& request) const +{ + if (!request.CodeReviewArnHasBeenSet()) + { + AWS_LOGSTREAM_ERROR("ListRecommendations", "Required field: CodeReviewArn, is not set"); + return ListRecommendationsOutcome(Aws::Client::AWSError(CodeGuruReviewerErrors::MISSING_PARAMETER, "MISSING_PARAMETER", "Missing required field [CodeReviewArn]", false)); + } + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/codereviews/"; + ss << request.GetCodeReviewArn(); + ss << "/Recommendations"; + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_GET, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return ListRecommendationsOutcome(ListRecommendationsResult(outcome.GetResult())); + } + else + { + return ListRecommendationsOutcome(outcome.GetError()); + } +} + +ListRecommendationsOutcomeCallable CodeGuruReviewerClient::ListRecommendationsCallable(const ListRecommendationsRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< ListRecommendationsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ListRecommendations(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::ListRecommendationsAsync(const ListRecommendationsRequest& request, const ListRecommendationsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->ListRecommendationsAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::ListRecommendationsAsyncHelper(const ListRecommendationsRequest& request, const ListRecommendationsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, ListRecommendations(request), context); +} + ListRepositoryAssociationsOutcome CodeGuruReviewerClient::ListRepositoryAssociations(const ListRepositoryAssociationsRequest& request) const { Aws::Http::URI uri = m_uri; @@ -259,3 +476,38 @@ void CodeGuruReviewerClient::ListRepositoryAssociationsAsyncHelper(const ListRep handler(this, request, ListRepositoryAssociations(request), context); } +PutRecommendationFeedbackOutcome CodeGuruReviewerClient::PutRecommendationFeedback(const PutRecommendationFeedbackRequest& request) const +{ + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/feedback"; + uri.SetPath(uri.GetPath() + ss.str()); + JsonOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_PUT, Aws::Auth::SIGV4_SIGNER); + if(outcome.IsSuccess()) + { + return PutRecommendationFeedbackOutcome(PutRecommendationFeedbackResult(outcome.GetResult())); + } + else + { + return PutRecommendationFeedbackOutcome(outcome.GetError()); + } +} + +PutRecommendationFeedbackOutcomeCallable CodeGuruReviewerClient::PutRecommendationFeedbackCallable(const PutRecommendationFeedbackRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< PutRecommendationFeedbackOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->PutRecommendationFeedback(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void CodeGuruReviewerClient::PutRecommendationFeedbackAsync(const PutRecommendationFeedbackRequest& request, const PutRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->PutRecommendationFeedbackAsyncHelper( request, handler, context ); } ); +} + +void CodeGuruReviewerClient::PutRecommendationFeedbackAsyncHelper(const PutRecommendationFeedbackRequest& request, const PutRecommendationFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, PutRecommendationFeedback(request), context); +} + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReview.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReview.cpp new file mode 100644 index 00000000000..644d41aa5a6 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReview.cpp @@ -0,0 +1,250 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +CodeReview::CodeReview() : + m_nameHasBeenSet(false), + m_codeReviewArnHasBeenSet(false), + m_repositoryNameHasBeenSet(false), + m_ownerHasBeenSet(false), + m_providerType(ProviderType::NOT_SET), + m_providerTypeHasBeenSet(false), + m_state(JobState::NOT_SET), + m_stateHasBeenSet(false), + m_stateReasonHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_pullRequestIdHasBeenSet(false), + m_sourceCodeTypeHasBeenSet(false), + m_metricsHasBeenSet(false) +{ +} + +CodeReview::CodeReview(JsonView jsonValue) : + m_nameHasBeenSet(false), + m_codeReviewArnHasBeenSet(false), + m_repositoryNameHasBeenSet(false), + m_ownerHasBeenSet(false), + m_providerType(ProviderType::NOT_SET), + m_providerTypeHasBeenSet(false), + m_state(JobState::NOT_SET), + m_stateHasBeenSet(false), + m_stateReasonHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_pullRequestIdHasBeenSet(false), + m_sourceCodeTypeHasBeenSet(false), + m_metricsHasBeenSet(false) +{ + *this = jsonValue; +} + +CodeReview& CodeReview::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("Name")) + { + m_name = jsonValue.GetString("Name"); + + m_nameHasBeenSet = true; + } + + if(jsonValue.ValueExists("CodeReviewArn")) + { + m_codeReviewArn = jsonValue.GetString("CodeReviewArn"); + + m_codeReviewArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("RepositoryName")) + { + m_repositoryName = jsonValue.GetString("RepositoryName"); + + m_repositoryNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("Owner")) + { + m_owner = jsonValue.GetString("Owner"); + + m_ownerHasBeenSet = true; + } + + if(jsonValue.ValueExists("ProviderType")) + { + m_providerType = ProviderTypeMapper::GetProviderTypeForName(jsonValue.GetString("ProviderType")); + + m_providerTypeHasBeenSet = true; + } + + if(jsonValue.ValueExists("State")) + { + m_state = JobStateMapper::GetJobStateForName(jsonValue.GetString("State")); + + m_stateHasBeenSet = true; + } + + if(jsonValue.ValueExists("StateReason")) + { + m_stateReason = jsonValue.GetString("StateReason"); + + m_stateReasonHasBeenSet = true; + } + + if(jsonValue.ValueExists("CreatedTimeStamp")) + { + m_createdTimeStamp = jsonValue.GetDouble("CreatedTimeStamp"); + + m_createdTimeStampHasBeenSet = true; + } + + if(jsonValue.ValueExists("LastUpdatedTimeStamp")) + { + m_lastUpdatedTimeStamp = jsonValue.GetDouble("LastUpdatedTimeStamp"); + + m_lastUpdatedTimeStampHasBeenSet = true; + } + + if(jsonValue.ValueExists("Type")) + { + m_type = TypeMapper::GetTypeForName(jsonValue.GetString("Type")); + + m_typeHasBeenSet = true; + } + + if(jsonValue.ValueExists("PullRequestId")) + { + m_pullRequestId = jsonValue.GetString("PullRequestId"); + + m_pullRequestIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("SourceCodeType")) + { + m_sourceCodeType = jsonValue.GetObject("SourceCodeType"); + + m_sourceCodeTypeHasBeenSet = true; + } + + if(jsonValue.ValueExists("Metrics")) + { + m_metrics = jsonValue.GetObject("Metrics"); + + m_metricsHasBeenSet = true; + } + + return *this; +} + +JsonValue CodeReview::Jsonize() const +{ + JsonValue payload; + + if(m_nameHasBeenSet) + { + payload.WithString("Name", m_name); + + } + + if(m_codeReviewArnHasBeenSet) + { + payload.WithString("CodeReviewArn", m_codeReviewArn); + + } + + if(m_repositoryNameHasBeenSet) + { + payload.WithString("RepositoryName", m_repositoryName); + + } + + if(m_ownerHasBeenSet) + { + payload.WithString("Owner", m_owner); + + } + + if(m_providerTypeHasBeenSet) + { + payload.WithString("ProviderType", ProviderTypeMapper::GetNameForProviderType(m_providerType)); + } + + if(m_stateHasBeenSet) + { + payload.WithString("State", JobStateMapper::GetNameForJobState(m_state)); + } + + if(m_stateReasonHasBeenSet) + { + payload.WithString("StateReason", m_stateReason); + + } + + if(m_createdTimeStampHasBeenSet) + { + payload.WithDouble("CreatedTimeStamp", m_createdTimeStamp.SecondsWithMSPrecision()); + } + + if(m_lastUpdatedTimeStampHasBeenSet) + { + payload.WithDouble("LastUpdatedTimeStamp", m_lastUpdatedTimeStamp.SecondsWithMSPrecision()); + } + + if(m_typeHasBeenSet) + { + payload.WithString("Type", TypeMapper::GetNameForType(m_type)); + } + + if(m_pullRequestIdHasBeenSet) + { + payload.WithString("PullRequestId", m_pullRequestId); + + } + + if(m_sourceCodeTypeHasBeenSet) + { + payload.WithObject("SourceCodeType", m_sourceCodeType.Jsonize()); + + } + + if(m_metricsHasBeenSet) + { + payload.WithObject("Metrics", m_metrics.Jsonize()); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReviewSummary.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReviewSummary.cpp new file mode 100644 index 00000000000..bb3f54f7c6a --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/CodeReviewSummary.cpp @@ -0,0 +1,220 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +CodeReviewSummary::CodeReviewSummary() : + m_nameHasBeenSet(false), + m_codeReviewArnHasBeenSet(false), + m_repositoryNameHasBeenSet(false), + m_ownerHasBeenSet(false), + m_providerType(ProviderType::NOT_SET), + m_providerTypeHasBeenSet(false), + m_state(JobState::NOT_SET), + m_stateHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_pullRequestIdHasBeenSet(false), + m_metricsSummaryHasBeenSet(false) +{ +} + +CodeReviewSummary::CodeReviewSummary(JsonView jsonValue) : + m_nameHasBeenSet(false), + m_codeReviewArnHasBeenSet(false), + m_repositoryNameHasBeenSet(false), + m_ownerHasBeenSet(false), + m_providerType(ProviderType::NOT_SET), + m_providerTypeHasBeenSet(false), + m_state(JobState::NOT_SET), + m_stateHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_pullRequestIdHasBeenSet(false), + m_metricsSummaryHasBeenSet(false) +{ + *this = jsonValue; +} + +CodeReviewSummary& CodeReviewSummary::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("Name")) + { + m_name = jsonValue.GetString("Name"); + + m_nameHasBeenSet = true; + } + + if(jsonValue.ValueExists("CodeReviewArn")) + { + m_codeReviewArn = jsonValue.GetString("CodeReviewArn"); + + m_codeReviewArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("RepositoryName")) + { + m_repositoryName = jsonValue.GetString("RepositoryName"); + + m_repositoryNameHasBeenSet = true; + } + + if(jsonValue.ValueExists("Owner")) + { + m_owner = jsonValue.GetString("Owner"); + + m_ownerHasBeenSet = true; + } + + if(jsonValue.ValueExists("ProviderType")) + { + m_providerType = ProviderTypeMapper::GetProviderTypeForName(jsonValue.GetString("ProviderType")); + + m_providerTypeHasBeenSet = true; + } + + if(jsonValue.ValueExists("State")) + { + m_state = JobStateMapper::GetJobStateForName(jsonValue.GetString("State")); + + m_stateHasBeenSet = true; + } + + if(jsonValue.ValueExists("CreatedTimeStamp")) + { + m_createdTimeStamp = jsonValue.GetDouble("CreatedTimeStamp"); + + m_createdTimeStampHasBeenSet = true; + } + + if(jsonValue.ValueExists("LastUpdatedTimeStamp")) + { + m_lastUpdatedTimeStamp = jsonValue.GetDouble("LastUpdatedTimeStamp"); + + m_lastUpdatedTimeStampHasBeenSet = true; + } + + if(jsonValue.ValueExists("Type")) + { + m_type = TypeMapper::GetTypeForName(jsonValue.GetString("Type")); + + m_typeHasBeenSet = true; + } + + if(jsonValue.ValueExists("PullRequestId")) + { + m_pullRequestId = jsonValue.GetString("PullRequestId"); + + m_pullRequestIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("MetricsSummary")) + { + m_metricsSummary = jsonValue.GetObject("MetricsSummary"); + + m_metricsSummaryHasBeenSet = true; + } + + return *this; +} + +JsonValue CodeReviewSummary::Jsonize() const +{ + JsonValue payload; + + if(m_nameHasBeenSet) + { + payload.WithString("Name", m_name); + + } + + if(m_codeReviewArnHasBeenSet) + { + payload.WithString("CodeReviewArn", m_codeReviewArn); + + } + + if(m_repositoryNameHasBeenSet) + { + payload.WithString("RepositoryName", m_repositoryName); + + } + + if(m_ownerHasBeenSet) + { + payload.WithString("Owner", m_owner); + + } + + if(m_providerTypeHasBeenSet) + { + payload.WithString("ProviderType", ProviderTypeMapper::GetNameForProviderType(m_providerType)); + } + + if(m_stateHasBeenSet) + { + payload.WithString("State", JobStateMapper::GetNameForJobState(m_state)); + } + + if(m_createdTimeStampHasBeenSet) + { + payload.WithDouble("CreatedTimeStamp", m_createdTimeStamp.SecondsWithMSPrecision()); + } + + if(m_lastUpdatedTimeStampHasBeenSet) + { + payload.WithDouble("LastUpdatedTimeStamp", m_lastUpdatedTimeStamp.SecondsWithMSPrecision()); + } + + if(m_typeHasBeenSet) + { + payload.WithString("Type", TypeMapper::GetNameForType(m_type)); + } + + if(m_pullRequestIdHasBeenSet) + { + payload.WithString("PullRequestId", m_pullRequestId); + + } + + if(m_metricsSummaryHasBeenSet) + { + payload.WithObject("MetricsSummary", m_metricsSummary.Jsonize()); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/CommitDiffSourceCodeType.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/CommitDiffSourceCodeType.cpp new file mode 100644 index 00000000000..27d52f926df --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/CommitDiffSourceCodeType.cpp @@ -0,0 +1,84 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +CommitDiffSourceCodeType::CommitDiffSourceCodeType() : + m_sourceCommitHasBeenSet(false), + m_destinationCommitHasBeenSet(false) +{ +} + +CommitDiffSourceCodeType::CommitDiffSourceCodeType(JsonView jsonValue) : + m_sourceCommitHasBeenSet(false), + m_destinationCommitHasBeenSet(false) +{ + *this = jsonValue; +} + +CommitDiffSourceCodeType& CommitDiffSourceCodeType::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("SourceCommit")) + { + m_sourceCommit = jsonValue.GetString("SourceCommit"); + + m_sourceCommitHasBeenSet = true; + } + + if(jsonValue.ValueExists("DestinationCommit")) + { + m_destinationCommit = jsonValue.GetString("DestinationCommit"); + + m_destinationCommitHasBeenSet = true; + } + + return *this; +} + +JsonValue CommitDiffSourceCodeType::Jsonize() const +{ + JsonValue payload; + + if(m_sourceCommitHasBeenSet) + { + payload.WithString("SourceCommit", m_sourceCommit); + + } + + if(m_destinationCommitHasBeenSet) + { + payload.WithString("DestinationCommit", m_destinationCommit); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewRequest.cpp new file mode 100644 index 00000000000..72d6c104166 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewRequest.cpp @@ -0,0 +1,37 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +DescribeCodeReviewRequest::DescribeCodeReviewRequest() : + m_codeReviewArnHasBeenSet(false) +{ +} + +Aws::String DescribeCodeReviewRequest::SerializePayload() const +{ + return {}; +} + + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewResult.cpp new file mode 100644 index 00000000000..eae6f6fa499 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeCodeReviewResult.cpp @@ -0,0 +1,50 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +DescribeCodeReviewResult::DescribeCodeReviewResult() +{ +} + +DescribeCodeReviewResult::DescribeCodeReviewResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DescribeCodeReviewResult& DescribeCodeReviewResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("CodeReview")) + { + m_codeReview = jsonValue.GetObject("CodeReview"); + + } + + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackRequest.cpp new file mode 100644 index 00000000000..7edc48bc9de --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackRequest.cpp @@ -0,0 +1,60 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +DescribeRecommendationFeedbackRequest::DescribeRecommendationFeedbackRequest() : + m_codeReviewArnHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_userIdHasBeenSet(false) +{ +} + +Aws::String DescribeRecommendationFeedbackRequest::SerializePayload() const +{ + return {}; +} + +void DescribeRecommendationFeedbackRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_recommendationIdHasBeenSet) + { + ss << m_recommendationId; + uri.AddQueryStringParameter("RecommendationId", ss.str()); + ss.str(""); + } + + if(m_userIdHasBeenSet) + { + ss << m_userId; + uri.AddQueryStringParameter("UserId", ss.str()); + ss.str(""); + } + +} + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackResult.cpp new file mode 100644 index 00000000000..95e3da4ed5e --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/DescribeRecommendationFeedbackResult.cpp @@ -0,0 +1,50 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +DescribeRecommendationFeedbackResult::DescribeRecommendationFeedbackResult() +{ +} + +DescribeRecommendationFeedbackResult::DescribeRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DescribeRecommendationFeedbackResult& DescribeRecommendationFeedbackResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("RecommendationFeedback")) + { + m_recommendationFeedback = jsonValue.GetObject("RecommendationFeedback"); + + } + + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/JobState.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/JobState.cpp new file mode 100644 index 00000000000..6e490e6b436 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/JobState.cpp @@ -0,0 +1,94 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace CodeGuruReviewer + { + namespace Model + { + namespace JobStateMapper + { + + static const int Completed_HASH = HashingUtils::HashString("Completed"); + static const int Pending_HASH = HashingUtils::HashString("Pending"); + static const int Failed_HASH = HashingUtils::HashString("Failed"); + static const int Deleting_HASH = HashingUtils::HashString("Deleting"); + + + JobState GetJobStateForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == Completed_HASH) + { + return JobState::Completed; + } + else if (hashCode == Pending_HASH) + { + return JobState::Pending; + } + else if (hashCode == Failed_HASH) + { + return JobState::Failed; + } + else if (hashCode == Deleting_HASH) + { + return JobState::Deleting; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return JobState::NOT_SET; + } + + Aws::String GetNameForJobState(JobState enumValue) + { + switch(enumValue) + { + case JobState::Completed: + return "Completed"; + case JobState::Pending: + return "Pending"; + case JobState::Failed: + return "Failed"; + case JobState::Deleting: + return "Deleting"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace JobStateMapper + } // namespace Model + } // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsRequest.cpp new file mode 100644 index 00000000000..9f44d0d6583 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsRequest.cpp @@ -0,0 +1,102 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +ListCodeReviewsRequest::ListCodeReviewsRequest() : + m_providerTypesHasBeenSet(false), + m_statesHasBeenSet(false), + m_repositoryNamesHasBeenSet(false), + m_type(Type::NOT_SET), + m_typeHasBeenSet(false), + m_maxResults(0), + m_maxResultsHasBeenSet(false), + m_nextTokenHasBeenSet(false) +{ +} + +Aws::String ListCodeReviewsRequest::SerializePayload() const +{ + return {}; +} + +void ListCodeReviewsRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_providerTypesHasBeenSet) + { + for(const auto& item : m_providerTypes) + { + ss << ProviderTypeMapper::GetNameForProviderType(item); + uri.AddQueryStringParameter("ProviderTypes", ss.str()); + ss.str(""); + } + } + + if(m_statesHasBeenSet) + { + for(const auto& item : m_states) + { + ss << JobStateMapper::GetNameForJobState(item); + uri.AddQueryStringParameter("States", ss.str()); + ss.str(""); + } + } + + if(m_repositoryNamesHasBeenSet) + { + for(const auto& item : m_repositoryNames) + { + ss << item; + uri.AddQueryStringParameter("RepositoryNames", ss.str()); + ss.str(""); + } + } + + if(m_typeHasBeenSet) + { + ss << TypeMapper::GetNameForType(m_type); + uri.AddQueryStringParameter("Type", ss.str()); + ss.str(""); + } + + if(m_maxResultsHasBeenSet) + { + ss << m_maxResults; + uri.AddQueryStringParameter("MaxResults", ss.str()); + ss.str(""); + } + + if(m_nextTokenHasBeenSet) + { + ss << m_nextToken; + uri.AddQueryStringParameter("NextToken", ss.str()); + ss.str(""); + } + +} + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsResult.cpp new file mode 100644 index 00000000000..ccc77b434fb --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListCodeReviewsResult.cpp @@ -0,0 +1,59 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +ListCodeReviewsResult::ListCodeReviewsResult() +{ +} + +ListCodeReviewsResult::ListCodeReviewsResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +ListCodeReviewsResult& ListCodeReviewsResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("CodeReviewSummaries")) + { + Array codeReviewSummariesJsonList = jsonValue.GetArray("CodeReviewSummaries"); + for(unsigned codeReviewSummariesIndex = 0; codeReviewSummariesIndex < codeReviewSummariesJsonList.GetLength(); ++codeReviewSummariesIndex) + { + m_codeReviewSummaries.push_back(codeReviewSummariesJsonList[codeReviewSummariesIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("NextToken")) + { + m_nextToken = jsonValue.GetString("NextToken"); + + } + + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackRequest.cpp new file mode 100644 index 00000000000..c1d01eba68d --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackRequest.cpp @@ -0,0 +1,83 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +ListRecommendationFeedbackRequest::ListRecommendationFeedbackRequest() : + m_nextTokenHasBeenSet(false), + m_maxResults(0), + m_maxResultsHasBeenSet(false), + m_codeReviewArnHasBeenSet(false), + m_userIdsHasBeenSet(false), + m_recommendationIdsHasBeenSet(false) +{ +} + +Aws::String ListRecommendationFeedbackRequest::SerializePayload() const +{ + return {}; +} + +void ListRecommendationFeedbackRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_nextTokenHasBeenSet) + { + ss << m_nextToken; + uri.AddQueryStringParameter("NextToken", ss.str()); + ss.str(""); + } + + if(m_maxResultsHasBeenSet) + { + ss << m_maxResults; + uri.AddQueryStringParameter("MaxResults", ss.str()); + ss.str(""); + } + + if(m_userIdsHasBeenSet) + { + for(const auto& item : m_userIds) + { + ss << item; + uri.AddQueryStringParameter("UserIds", ss.str()); + ss.str(""); + } + } + + if(m_recommendationIdsHasBeenSet) + { + for(const auto& item : m_recommendationIds) + { + ss << item; + uri.AddQueryStringParameter("RecommendationIds", ss.str()); + ss.str(""); + } + } + +} + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackResult.cpp new file mode 100644 index 00000000000..77443e67c93 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationFeedbackResult.cpp @@ -0,0 +1,59 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +ListRecommendationFeedbackResult::ListRecommendationFeedbackResult() +{ +} + +ListRecommendationFeedbackResult::ListRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +ListRecommendationFeedbackResult& ListRecommendationFeedbackResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("RecommendationFeedbackSummaries")) + { + Array recommendationFeedbackSummariesJsonList = jsonValue.GetArray("RecommendationFeedbackSummaries"); + for(unsigned recommendationFeedbackSummariesIndex = 0; recommendationFeedbackSummariesIndex < recommendationFeedbackSummariesJsonList.GetLength(); ++recommendationFeedbackSummariesIndex) + { + m_recommendationFeedbackSummaries.push_back(recommendationFeedbackSummariesJsonList[recommendationFeedbackSummariesIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("NextToken")) + { + m_nextToken = jsonValue.GetString("NextToken"); + + } + + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsRequest.cpp new file mode 100644 index 00000000000..0ae3ba97a66 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsRequest.cpp @@ -0,0 +1,61 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws::Http; + +ListRecommendationsRequest::ListRecommendationsRequest() : + m_nextTokenHasBeenSet(false), + m_maxResults(0), + m_maxResultsHasBeenSet(false), + m_codeReviewArnHasBeenSet(false) +{ +} + +Aws::String ListRecommendationsRequest::SerializePayload() const +{ + return {}; +} + +void ListRecommendationsRequest::AddQueryStringParameters(URI& uri) const +{ + Aws::StringStream ss; + if(m_nextTokenHasBeenSet) + { + ss << m_nextToken; + uri.AddQueryStringParameter("NextToken", ss.str()); + ss.str(""); + } + + if(m_maxResultsHasBeenSet) + { + ss << m_maxResults; + uri.AddQueryStringParameter("MaxResults", ss.str()); + ss.str(""); + } + +} + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsResult.cpp new file mode 100644 index 00000000000..324b498f990 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/ListRecommendationsResult.cpp @@ -0,0 +1,59 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +ListRecommendationsResult::ListRecommendationsResult() +{ +} + +ListRecommendationsResult::ListRecommendationsResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +ListRecommendationsResult& ListRecommendationsResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + JsonView jsonValue = result.GetPayload().View(); + if(jsonValue.ValueExists("RecommendationSummaries")) + { + Array recommendationSummariesJsonList = jsonValue.GetArray("RecommendationSummaries"); + for(unsigned recommendationSummariesIndex = 0; recommendationSummariesIndex < recommendationSummariesJsonList.GetLength(); ++recommendationSummariesIndex) + { + m_recommendationSummaries.push_back(recommendationSummariesJsonList[recommendationSummariesIndex].AsObject()); + } + } + + if(jsonValue.ValueExists("NextToken")) + { + m_nextToken = jsonValue.GetString("NextToken"); + + } + + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/Metrics.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/Metrics.cpp new file mode 100644 index 00000000000..c0f952cbf6f --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/Metrics.cpp @@ -0,0 +1,88 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +Metrics::Metrics() : + m_meteredLinesOfCodeCount(0), + m_meteredLinesOfCodeCountHasBeenSet(false), + m_findingsCount(0), + m_findingsCountHasBeenSet(false) +{ +} + +Metrics::Metrics(JsonView jsonValue) : + m_meteredLinesOfCodeCount(0), + m_meteredLinesOfCodeCountHasBeenSet(false), + m_findingsCount(0), + m_findingsCountHasBeenSet(false) +{ + *this = jsonValue; +} + +Metrics& Metrics::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("MeteredLinesOfCodeCount")) + { + m_meteredLinesOfCodeCount = jsonValue.GetInt64("MeteredLinesOfCodeCount"); + + m_meteredLinesOfCodeCountHasBeenSet = true; + } + + if(jsonValue.ValueExists("FindingsCount")) + { + m_findingsCount = jsonValue.GetInt64("FindingsCount"); + + m_findingsCountHasBeenSet = true; + } + + return *this; +} + +JsonValue Metrics::Jsonize() const +{ + JsonValue payload; + + if(m_meteredLinesOfCodeCountHasBeenSet) + { + payload.WithInt64("MeteredLinesOfCodeCount", m_meteredLinesOfCodeCount); + + } + + if(m_findingsCountHasBeenSet) + { + payload.WithInt64("FindingsCount", m_findingsCount); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/MetricsSummary.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/MetricsSummary.cpp new file mode 100644 index 00000000000..b86b97f6ab4 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/MetricsSummary.cpp @@ -0,0 +1,88 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +MetricsSummary::MetricsSummary() : + m_meteredLinesOfCodeCount(0), + m_meteredLinesOfCodeCountHasBeenSet(false), + m_findingsCount(0), + m_findingsCountHasBeenSet(false) +{ +} + +MetricsSummary::MetricsSummary(JsonView jsonValue) : + m_meteredLinesOfCodeCount(0), + m_meteredLinesOfCodeCountHasBeenSet(false), + m_findingsCount(0), + m_findingsCountHasBeenSet(false) +{ + *this = jsonValue; +} + +MetricsSummary& MetricsSummary::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("MeteredLinesOfCodeCount")) + { + m_meteredLinesOfCodeCount = jsonValue.GetInt64("MeteredLinesOfCodeCount"); + + m_meteredLinesOfCodeCountHasBeenSet = true; + } + + if(jsonValue.ValueExists("FindingsCount")) + { + m_findingsCount = jsonValue.GetInt64("FindingsCount"); + + m_findingsCountHasBeenSet = true; + } + + return *this; +} + +JsonValue MetricsSummary::Jsonize() const +{ + JsonValue payload; + + if(m_meteredLinesOfCodeCountHasBeenSet) + { + payload.WithInt64("MeteredLinesOfCodeCount", m_meteredLinesOfCodeCount); + + } + + if(m_findingsCountHasBeenSet) + { + payload.WithInt64("FindingsCount", m_findingsCount); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackRequest.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackRequest.cpp new file mode 100644 index 00000000000..6c4d38ebd6c --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackRequest.cpp @@ -0,0 +1,64 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +PutRecommendationFeedbackRequest::PutRecommendationFeedbackRequest() : + m_codeReviewArnHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_reactionsHasBeenSet(false) +{ +} + +Aws::String PutRecommendationFeedbackRequest::SerializePayload() const +{ + JsonValue payload; + + if(m_codeReviewArnHasBeenSet) + { + payload.WithString("CodeReviewArn", m_codeReviewArn); + + } + + if(m_recommendationIdHasBeenSet) + { + payload.WithString("RecommendationId", m_recommendationId); + + } + + if(m_reactionsHasBeenSet) + { + Array reactionsJsonList(m_reactions.size()); + for(unsigned reactionsIndex = 0; reactionsIndex < reactionsJsonList.GetLength(); ++reactionsIndex) + { + reactionsJsonList[reactionsIndex].AsString(ReactionMapper::GetNameForReaction(m_reactions[reactionsIndex])); + } + payload.WithArray("Reactions", std::move(reactionsJsonList)); + + } + + return payload.View().WriteReadable(); +} + + + + diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackResult.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackResult.cpp new file mode 100644 index 00000000000..c993a786fff --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/PutRecommendationFeedbackResult.cpp @@ -0,0 +1,44 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::CodeGuruReviewer::Model; +using namespace Aws::Utils::Json; +using namespace Aws::Utils; +using namespace Aws; + +PutRecommendationFeedbackResult::PutRecommendationFeedbackResult() +{ +} + +PutRecommendationFeedbackResult::PutRecommendationFeedbackResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +PutRecommendationFeedbackResult& PutRecommendationFeedbackResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + AWS_UNREFERENCED_PARAM(result); + + + return *this; +} diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/Reaction.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/Reaction.cpp new file mode 100644 index 00000000000..fba26a41b26 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/Reaction.cpp @@ -0,0 +1,80 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace CodeGuruReviewer + { + namespace Model + { + namespace ReactionMapper + { + + static const int ThumbsUp_HASH = HashingUtils::HashString("ThumbsUp"); + static const int ThumbsDown_HASH = HashingUtils::HashString("ThumbsDown"); + + + Reaction GetReactionForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == ThumbsUp_HASH) + { + return Reaction::ThumbsUp; + } + else if (hashCode == ThumbsDown_HASH) + { + return Reaction::ThumbsDown; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return Reaction::NOT_SET; + } + + Aws::String GetNameForReaction(Reaction enumValue) + { + switch(enumValue) + { + case Reaction::ThumbsUp: + return "ThumbsUp"; + case Reaction::ThumbsDown: + return "ThumbsDown"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace ReactionMapper + } // namespace Model + } // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedback.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedback.cpp new file mode 100644 index 00000000000..09bd12217f7 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedback.cpp @@ -0,0 +1,150 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +RecommendationFeedback::RecommendationFeedback() : + m_codeReviewArnHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_reactionsHasBeenSet(false), + m_userIdHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false) +{ +} + +RecommendationFeedback::RecommendationFeedback(JsonView jsonValue) : + m_codeReviewArnHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_reactionsHasBeenSet(false), + m_userIdHasBeenSet(false), + m_createdTimeStampHasBeenSet(false), + m_lastUpdatedTimeStampHasBeenSet(false) +{ + *this = jsonValue; +} + +RecommendationFeedback& RecommendationFeedback::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("CodeReviewArn")) + { + m_codeReviewArn = jsonValue.GetString("CodeReviewArn"); + + m_codeReviewArnHasBeenSet = true; + } + + if(jsonValue.ValueExists("RecommendationId")) + { + m_recommendationId = jsonValue.GetString("RecommendationId"); + + m_recommendationIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("Reactions")) + { + Array reactionsJsonList = jsonValue.GetArray("Reactions"); + for(unsigned reactionsIndex = 0; reactionsIndex < reactionsJsonList.GetLength(); ++reactionsIndex) + { + m_reactions.push_back(ReactionMapper::GetReactionForName(reactionsJsonList[reactionsIndex].AsString())); + } + m_reactionsHasBeenSet = true; + } + + if(jsonValue.ValueExists("UserId")) + { + m_userId = jsonValue.GetString("UserId"); + + m_userIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("CreatedTimeStamp")) + { + m_createdTimeStamp = jsonValue.GetDouble("CreatedTimeStamp"); + + m_createdTimeStampHasBeenSet = true; + } + + if(jsonValue.ValueExists("LastUpdatedTimeStamp")) + { + m_lastUpdatedTimeStamp = jsonValue.GetDouble("LastUpdatedTimeStamp"); + + m_lastUpdatedTimeStampHasBeenSet = true; + } + + return *this; +} + +JsonValue RecommendationFeedback::Jsonize() const +{ + JsonValue payload; + + if(m_codeReviewArnHasBeenSet) + { + payload.WithString("CodeReviewArn", m_codeReviewArn); + + } + + if(m_recommendationIdHasBeenSet) + { + payload.WithString("RecommendationId", m_recommendationId); + + } + + if(m_reactionsHasBeenSet) + { + Array reactionsJsonList(m_reactions.size()); + for(unsigned reactionsIndex = 0; reactionsIndex < reactionsJsonList.GetLength(); ++reactionsIndex) + { + reactionsJsonList[reactionsIndex].AsString(ReactionMapper::GetNameForReaction(m_reactions[reactionsIndex])); + } + payload.WithArray("Reactions", std::move(reactionsJsonList)); + + } + + if(m_userIdHasBeenSet) + { + payload.WithString("UserId", m_userId); + + } + + if(m_createdTimeStampHasBeenSet) + { + payload.WithDouble("CreatedTimeStamp", m_createdTimeStamp.SecondsWithMSPrecision()); + } + + if(m_lastUpdatedTimeStampHasBeenSet) + { + payload.WithDouble("LastUpdatedTimeStamp", m_lastUpdatedTimeStamp.SecondsWithMSPrecision()); + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedbackSummary.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedbackSummary.cpp new file mode 100644 index 00000000000..25010040a38 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationFeedbackSummary.cpp @@ -0,0 +1,107 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +RecommendationFeedbackSummary::RecommendationFeedbackSummary() : + m_recommendationIdHasBeenSet(false), + m_reactionsHasBeenSet(false), + m_userIdHasBeenSet(false) +{ +} + +RecommendationFeedbackSummary::RecommendationFeedbackSummary(JsonView jsonValue) : + m_recommendationIdHasBeenSet(false), + m_reactionsHasBeenSet(false), + m_userIdHasBeenSet(false) +{ + *this = jsonValue; +} + +RecommendationFeedbackSummary& RecommendationFeedbackSummary::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("RecommendationId")) + { + m_recommendationId = jsonValue.GetString("RecommendationId"); + + m_recommendationIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("Reactions")) + { + Array reactionsJsonList = jsonValue.GetArray("Reactions"); + for(unsigned reactionsIndex = 0; reactionsIndex < reactionsJsonList.GetLength(); ++reactionsIndex) + { + m_reactions.push_back(ReactionMapper::GetReactionForName(reactionsJsonList[reactionsIndex].AsString())); + } + m_reactionsHasBeenSet = true; + } + + if(jsonValue.ValueExists("UserId")) + { + m_userId = jsonValue.GetString("UserId"); + + m_userIdHasBeenSet = true; + } + + return *this; +} + +JsonValue RecommendationFeedbackSummary::Jsonize() const +{ + JsonValue payload; + + if(m_recommendationIdHasBeenSet) + { + payload.WithString("RecommendationId", m_recommendationId); + + } + + if(m_reactionsHasBeenSet) + { + Array reactionsJsonList(m_reactions.size()); + for(unsigned reactionsIndex = 0; reactionsIndex < reactionsJsonList.GetLength(); ++reactionsIndex) + { + reactionsJsonList[reactionsIndex].AsString(ReactionMapper::GetNameForReaction(m_reactions[reactionsIndex])); + } + payload.WithArray("Reactions", std::move(reactionsJsonList)); + + } + + if(m_userIdHasBeenSet) + { + payload.WithString("UserId", m_userId); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationSummary.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationSummary.cpp new file mode 100644 index 00000000000..81b940adb8d --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/RecommendationSummary.cpp @@ -0,0 +1,133 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +RecommendationSummary::RecommendationSummary() : + m_filePathHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_startLine(0), + m_startLineHasBeenSet(false), + m_endLine(0), + m_endLineHasBeenSet(false), + m_descriptionHasBeenSet(false) +{ +} + +RecommendationSummary::RecommendationSummary(JsonView jsonValue) : + m_filePathHasBeenSet(false), + m_recommendationIdHasBeenSet(false), + m_startLine(0), + m_startLineHasBeenSet(false), + m_endLine(0), + m_endLineHasBeenSet(false), + m_descriptionHasBeenSet(false) +{ + *this = jsonValue; +} + +RecommendationSummary& RecommendationSummary::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("FilePath")) + { + m_filePath = jsonValue.GetString("FilePath"); + + m_filePathHasBeenSet = true; + } + + if(jsonValue.ValueExists("RecommendationId")) + { + m_recommendationId = jsonValue.GetString("RecommendationId"); + + m_recommendationIdHasBeenSet = true; + } + + if(jsonValue.ValueExists("StartLine")) + { + m_startLine = jsonValue.GetInteger("StartLine"); + + m_startLineHasBeenSet = true; + } + + if(jsonValue.ValueExists("EndLine")) + { + m_endLine = jsonValue.GetInteger("EndLine"); + + m_endLineHasBeenSet = true; + } + + if(jsonValue.ValueExists("Description")) + { + m_description = jsonValue.GetString("Description"); + + m_descriptionHasBeenSet = true; + } + + return *this; +} + +JsonValue RecommendationSummary::Jsonize() const +{ + JsonValue payload; + + if(m_filePathHasBeenSet) + { + payload.WithString("FilePath", m_filePath); + + } + + if(m_recommendationIdHasBeenSet) + { + payload.WithString("RecommendationId", m_recommendationId); + + } + + if(m_startLineHasBeenSet) + { + payload.WithInteger("StartLine", m_startLine); + + } + + if(m_endLineHasBeenSet) + { + payload.WithInteger("EndLine", m_endLine); + + } + + if(m_descriptionHasBeenSet) + { + payload.WithString("Description", m_description); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/SourceCodeType.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/SourceCodeType.cpp new file mode 100644 index 00000000000..287374a2e05 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/SourceCodeType.cpp @@ -0,0 +1,69 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include + +#include + +using namespace Aws::Utils::Json; +using namespace Aws::Utils; + +namespace Aws +{ +namespace CodeGuruReviewer +{ +namespace Model +{ + +SourceCodeType::SourceCodeType() : + m_commitDiffHasBeenSet(false) +{ +} + +SourceCodeType::SourceCodeType(JsonView jsonValue) : + m_commitDiffHasBeenSet(false) +{ + *this = jsonValue; +} + +SourceCodeType& SourceCodeType::operator =(JsonView jsonValue) +{ + if(jsonValue.ValueExists("CommitDiff")) + { + m_commitDiff = jsonValue.GetObject("CommitDiff"); + + m_commitDiffHasBeenSet = true; + } + + return *this; +} + +JsonValue SourceCodeType::Jsonize() const +{ + JsonValue payload; + + if(m_commitDiffHasBeenSet) + { + payload.WithObject("CommitDiff", m_commitDiff.Jsonize()); + + } + + return payload; +} + +} // namespace Model +} // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-codeguru-reviewer/source/model/Type.cpp b/aws-cpp-sdk-codeguru-reviewer/source/model/Type.cpp new file mode 100644 index 00000000000..46b1e84a5a8 --- /dev/null +++ b/aws-cpp-sdk-codeguru-reviewer/source/model/Type.cpp @@ -0,0 +1,73 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace CodeGuruReviewer + { + namespace Model + { + namespace TypeMapper + { + + static const int PullRequest_HASH = HashingUtils::HashString("PullRequest"); + + + Type GetTypeForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == PullRequest_HASH) + { + return Type::PullRequest; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return Type::NOT_SET; + } + + Aws::String GetNameForType(Type enumValue) + { + switch(enumValue) + { + case Type::PullRequest: + return "PullRequest"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace TypeMapper + } // namespace Model + } // namespace CodeGuruReviewer +} // namespace Aws diff --git a/aws-cpp-sdk-core/include/aws/core/VersionConfig.h b/aws-cpp-sdk-core/include/aws/core/VersionConfig.h index 48831801ca2..f7113ddcc4d 100644 --- a/aws-cpp-sdk-core/include/aws/core/VersionConfig.h +++ b/aws-cpp-sdk-core/include/aws/core/VersionConfig.h @@ -13,4 +13,4 @@ * permissions and limitations under the License. */ -#define AWS_SDK_VERSION_STRING "1.7.318" +#define AWS_SDK_VERSION_STRING "1.7.319" diff --git a/aws-cpp-sdk-es/include/aws/es/model/ServiceSoftwareOptions.h b/aws-cpp-sdk-es/include/aws/es/model/ServiceSoftwareOptions.h index 0a9cf9a4396..cd16903501a 100644 --- a/aws-cpp-sdk-es/include/aws/es/model/ServiceSoftwareOptions.h +++ b/aws-cpp-sdk-es/include/aws/es/model/ServiceSoftwareOptions.h @@ -322,6 +322,35 @@ namespace Model */ inline ServiceSoftwareOptions& WithAutomatedUpdateDate(Aws::Utils::DateTime&& value) { SetAutomatedUpdateDate(std::move(value)); return *this;} + + /** + *

True if a service software is never automatically updated. + * False if a service software is automatically updated after + * AutomatedUpdateDate.

+ */ + inline bool GetOptionalDeployment() const{ return m_optionalDeployment; } + + /** + *

True if a service software is never automatically updated. + * False if a service software is automatically updated after + * AutomatedUpdateDate.

+ */ + inline bool OptionalDeploymentHasBeenSet() const { return m_optionalDeploymentHasBeenSet; } + + /** + *

True if a service software is never automatically updated. + * False if a service software is automatically updated after + * AutomatedUpdateDate.

+ */ + inline void SetOptionalDeployment(bool value) { m_optionalDeploymentHasBeenSet = true; m_optionalDeployment = value; } + + /** + *

True if a service software is never automatically updated. + * False if a service software is automatically updated after + * AutomatedUpdateDate.

+ */ + inline ServiceSoftwareOptions& WithOptionalDeployment(bool value) { SetOptionalDeployment(value); return *this;} + private: Aws::String m_currentVersion; @@ -344,6 +373,9 @@ namespace Model Aws::Utils::DateTime m_automatedUpdateDate; bool m_automatedUpdateDateHasBeenSet; + + bool m_optionalDeployment; + bool m_optionalDeploymentHasBeenSet; }; } // namespace Model diff --git a/aws-cpp-sdk-es/source/model/ServiceSoftwareOptions.cpp b/aws-cpp-sdk-es/source/model/ServiceSoftwareOptions.cpp index d7863811370..e26e62d4870 100644 --- a/aws-cpp-sdk-es/source/model/ServiceSoftwareOptions.cpp +++ b/aws-cpp-sdk-es/source/model/ServiceSoftwareOptions.cpp @@ -38,7 +38,9 @@ ServiceSoftwareOptions::ServiceSoftwareOptions() : m_updateStatus(DeploymentStatus::NOT_SET), m_updateStatusHasBeenSet(false), m_descriptionHasBeenSet(false), - m_automatedUpdateDateHasBeenSet(false) + m_automatedUpdateDateHasBeenSet(false), + m_optionalDeployment(false), + m_optionalDeploymentHasBeenSet(false) { } @@ -52,7 +54,9 @@ ServiceSoftwareOptions::ServiceSoftwareOptions(JsonView jsonValue) : m_updateStatus(DeploymentStatus::NOT_SET), m_updateStatusHasBeenSet(false), m_descriptionHasBeenSet(false), - m_automatedUpdateDateHasBeenSet(false) + m_automatedUpdateDateHasBeenSet(false), + m_optionalDeployment(false), + m_optionalDeploymentHasBeenSet(false) { *this = jsonValue; } @@ -108,6 +112,13 @@ ServiceSoftwareOptions& ServiceSoftwareOptions::operator =(JsonView jsonValue) m_automatedUpdateDateHasBeenSet = true; } + if(jsonValue.ValueExists("OptionalDeployment")) + { + m_optionalDeployment = jsonValue.GetBool("OptionalDeployment"); + + m_optionalDeploymentHasBeenSet = true; + } + return *this; } @@ -155,6 +166,12 @@ JsonValue ServiceSoftwareOptions::Jsonize() const payload.WithDouble("AutomatedUpdateDate", m_automatedUpdateDate.SecondsWithMSPrecision()); } + if(m_optionalDeploymentHasBeenSet) + { + payload.WithBool("OptionalDeployment", m_optionalDeployment); + + } + return payload; } diff --git a/aws-cpp-sdk-fms/include/aws/fms/FMSClient.h b/aws-cpp-sdk-fms/include/aws/fms/FMSClient.h index 852504ff67e..cbdac711b9d 100644 --- a/aws-cpp-sdk-fms/include/aws/fms/FMSClient.h +++ b/aws-cpp-sdk-fms/include/aws/fms/FMSClient.h @@ -638,14 +638,16 @@ namespace Model *

Creates an AWS Firewall Manager policy.

Firewall Manager provides the * following types of policies:

  • A Shield Advanced policy, which * applies Shield Advanced protection to specified accounts and resources

  • - *
  • An AWS WAF policy, which contains a rule group and defines which - * resources are to be protected by that rule group

  • A security - * group policy, which manages VPC security groups across your AWS organization. - *

Each policy is specific to one of the three types. If you - * want to enforce more than one policy type across accounts, you can create - * multiple policies. You can create multiple policies for each type.

You - * must be subscribed to Shield Advanced to create a Shield Advanced policy. For - * more information about subscribing to Shield Advanced, see

An AWS WAF policy (type WAFV2), which defines rule groups to run first + * in the corresponding AWS WAF web ACL and rule groups to run last in the web + * ACL.

  • An AWS WAF Classic policy (type WAF), which defines a + * rule group.

  • A security group policy, which manages VPC + * security groups across your AWS organization.

  • Each policy is + * specific to one of the types. If you want to enforce more than one policy type + * across accounts, create multiple policies. You can create multiple policies for + * each type.

    You must be subscribed to Shield Advanced to create a Shield + * Advanced policy. For more information about subscribing to Shield Advanced, see + * CreateSubscription.

    See * Also:

    AWS API @@ -657,14 +659,16 @@ namespace Model *

    Creates an AWS Firewall Manager policy.

    Firewall Manager provides the * following types of policies:

    • A Shield Advanced policy, which * applies Shield Advanced protection to specified accounts and resources

    • - *
    • An AWS WAF policy, which contains a rule group and defines which - * resources are to be protected by that rule group

    • A security - * group policy, which manages VPC security groups across your AWS organization. - *

    Each policy is specific to one of the three types. If you - * want to enforce more than one policy type across accounts, you can create - * multiple policies. You can create multiple policies for each type.

    You - * must be subscribed to Shield Advanced to create a Shield Advanced policy. For - * more information about subscribing to Shield Advanced, see

    An AWS WAF policy (type WAFV2), which defines rule groups to run first + * in the corresponding AWS WAF web ACL and rule groups to run last in the web + * ACL.

  • An AWS WAF Classic policy (type WAF), which defines a + * rule group.

  • A security group policy, which manages VPC + * security groups across your AWS organization.

  • Each policy is + * specific to one of the types. If you want to enforce more than one policy type + * across accounts, create multiple policies. You can create multiple policies for + * each type.

    You must be subscribed to Shield Advanced to create a Shield + * Advanced policy. For more information about subscribing to Shield Advanced, see + * CreateSubscription.

    See * Also:

    AWS API @@ -678,14 +682,16 @@ namespace Model *

    Creates an AWS Firewall Manager policy.

    Firewall Manager provides the * following types of policies:

    • A Shield Advanced policy, which * applies Shield Advanced protection to specified accounts and resources

    • - *
    • An AWS WAF policy, which contains a rule group and defines which - * resources are to be protected by that rule group

    • A security - * group policy, which manages VPC security groups across your AWS organization. - *

    Each policy is specific to one of the three types. If you - * want to enforce more than one policy type across accounts, you can create - * multiple policies. You can create multiple policies for each type.

    You - * must be subscribed to Shield Advanced to create a Shield Advanced policy. For - * more information about subscribing to Shield Advanced, see

    An AWS WAF policy (type WAFV2), which defines rule groups to run first + * in the corresponding AWS WAF web ACL and rule groups to run last in the web + * ACL.

  • An AWS WAF Classic policy (type WAF), which defines a + * rule group.

  • A security group policy, which manages VPC + * security groups across your AWS organization.

  • Each policy is + * specific to one of the types. If you want to enforce more than one policy type + * across accounts, create multiple policies. You can create multiple policies for + * each type.

    You must be subscribed to Shield Advanced to create a Shield + * Advanced policy. For more information about subscribing to Shield Advanced, see + * CreateSubscription.

    See * Also:

    AWS API diff --git a/aws-cpp-sdk-fms/include/aws/fms/model/CustomerPolicyScopeIdType.h b/aws-cpp-sdk-fms/include/aws/fms/model/CustomerPolicyScopeIdType.h index 4d1c414978d..cb1339c213e 100644 --- a/aws-cpp-sdk-fms/include/aws/fms/model/CustomerPolicyScopeIdType.h +++ b/aws-cpp-sdk-fms/include/aws/fms/model/CustomerPolicyScopeIdType.h @@ -26,7 +26,8 @@ namespace Model enum class CustomerPolicyScopeIdType { NOT_SET, - ACCOUNT + ACCOUNT, + ORG_UNIT }; namespace CustomerPolicyScopeIdTypeMapper diff --git a/aws-cpp-sdk-fms/include/aws/fms/model/Policy.h b/aws-cpp-sdk-fms/include/aws/fms/model/Policy.h index 6a977ff6e3a..7b183f8a8c5 100644 --- a/aws-cpp-sdk-fms/include/aws/fms/model/Policy.h +++ b/aws-cpp-sdk-fms/include/aws/fms/model/Policy.h @@ -515,223 +515,463 @@ namespace Model /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline const Aws::Map>& GetIncludeMap() const{ return m_includeMap; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline bool IncludeMapHasBeenSet() const { return m_includeMapHasBeenSet; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline void SetIncludeMap(const Aws::Map>& value) { m_includeMapHasBeenSet = true; m_includeMap = value; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline void SetIncludeMap(Aws::Map>&& value) { m_includeMapHasBeenSet = true; m_includeMap = std::move(value); } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& WithIncludeMap(const Aws::Map>& value) { SetIncludeMap(value); return *this;} /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& WithIncludeMap(Aws::Map>&& value) { SetIncludeMap(std::move(value)); return *this;} /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& AddIncludeMap(const CustomerPolicyScopeIdType& key, const Aws::Vector& value) { m_includeMapHasBeenSet = true; m_includeMap.emplace(key, value); return *this; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& AddIncludeMap(CustomerPolicyScopeIdType&& key, const Aws::Vector& value) { m_includeMapHasBeenSet = true; m_includeMap.emplace(std::move(key), value); return *this; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& AddIncludeMap(const CustomerPolicyScopeIdType& key, Aws::Vector&& value) { m_includeMapHasBeenSet = true; m_includeMap.emplace(key, std::move(value)); return *this; } /** - *

    Specifies the AWS account IDs to include in the policy. If - * IncludeMap is null, all accounts in the organization in AWS - * Organizations are included in the policy. If IncludeMap is not - * null, only values listed in IncludeMap are included in the - * policy.

    The key to the map is ACCOUNT. For example, a valid - * IncludeMap would be {“ACCOUNT” : [“accountID1”, - * “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to include in the policy. Specifying an OU is the equivalent of specifying + * all accounts in the OU and in any of its child OUs, including any child OUs and + * accounts that are added at a later time.

    You can specify inclusions or + * exclusions, but not both. If you specify an IncludeMap, AWS + * Firewall Manager applies the policy to all accounts specified by the + * IncludeMap, and does not evaluate any ExcludeMap + * specifications. If you do not specify an IncludeMap, then Firewall + * Manager applies the policy to all accounts except for those specified by the + * ExcludeMap.

    You can specify account IDs, OUs, or a + * combination:

    • Specify account IDs by setting the key to + * ACCOUNT. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”]}.

    • + *

      Specify OUs by setting the key to ORG_UNIT. For example, the + * following is a valid map: {“ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    • Specify accounts and OUs together in a + * single map, separated with a comma. For example, the following is a valid map: + * {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, + * “ouid112”]}.

    */ inline Policy& AddIncludeMap(CustomerPolicyScopeIdType&& key, Aws::Vector&& value) { m_includeMapHasBeenSet = true; m_includeMap.emplace(std::move(key), std::move(value)); return *this; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline const Aws::Map>& GetExcludeMap() const{ return m_excludeMap; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline bool ExcludeMapHasBeenSet() const { return m_excludeMapHasBeenSet; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline void SetExcludeMap(const Aws::Map>& value) { m_excludeMapHasBeenSet = true; m_excludeMap = value; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline void SetExcludeMap(Aws::Map>&& value) { m_excludeMapHasBeenSet = true; m_excludeMap = std::move(value); } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& WithExcludeMap(const Aws::Map>& value) { SetExcludeMap(value); return *this;} /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& WithExcludeMap(Aws::Map>&& value) { SetExcludeMap(std::move(value)); return *this;} /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& AddExcludeMap(const CustomerPolicyScopeIdType& key, const Aws::Vector& value) { m_excludeMapHasBeenSet = true; m_excludeMap.emplace(key, value); return *this; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& AddExcludeMap(CustomerPolicyScopeIdType&& key, const Aws::Vector& value) { m_excludeMapHasBeenSet = true; m_excludeMap.emplace(std::move(key), value); return *this; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& AddExcludeMap(const CustomerPolicyScopeIdType& key, Aws::Vector&& value) { m_excludeMapHasBeenSet = true; m_excludeMap.emplace(key, std::move(value)); return *this; } /** - *

    Specifies the AWS account IDs to exclude from the policy. The - * IncludeMap values are evaluated first, with all the appropriate - * account IDs added to the policy. Then the accounts listed in - * ExcludeMap are removed, resulting in the final list of accounts to - * add to the policy.

    The key to the map is ACCOUNT. For - * example, a valid ExcludeMap would be {“ACCOUNT” : - * [“accountID1”, “accountID2”]}.

    + *

    Specifies the AWS account IDs and AWS Organizations organizational units + * (OUs) to exclude from the policy. Specifying an OU is the equivalent of + * specifying all accounts in the OU and in any of its child OUs, including any + * child OUs and accounts that are added at a later time.

    You can specify + * inclusions or exclusions, but not both. If you specify an + * IncludeMap, AWS Firewall Manager applies the policy to all accounts + * specified by the IncludeMap, and does not evaluate any + * ExcludeMap specifications. If you do not specify an + * IncludeMap, then Firewall Manager applies the policy to all + * accounts except for those specified by the ExcludeMap.

    You + * can specify account IDs, OUs, or a combination:

    • Specify + * account IDs by setting the key to ACCOUNT. For example, the + * following is a valid map: {“ACCOUNT” : [“accountID1”, + * “accountID2”]}.

    • Specify OUs by setting the key to + * ORG_UNIT. For example, the following is a valid map: + * {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

    • Specify + * accounts and OUs together in a single map, separated with a comma. For example, + * the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], + * “ORG_UNIT” : [“ouid111”, “ouid112”]}.

    */ inline Policy& AddExcludeMap(CustomerPolicyScopeIdType&& key, Aws::Vector&& value) { m_excludeMapHasBeenSet = true; m_excludeMap.emplace(std::move(key), std::move(value)); return *this; } diff --git a/aws-cpp-sdk-fms/include/aws/fms/model/SecurityServicePolicyData.h b/aws-cpp-sdk-fms/include/aws/fms/model/SecurityServicePolicyData.h index 518a2cfbe2f..53fde5ada5f 100644 --- a/aws-cpp-sdk-fms/include/aws/fms/model/SecurityServicePolicyData.h +++ b/aws-cpp-sdk-fms/include/aws/fms/model/SecurityServicePolicyData.h @@ -114,23 +114,15 @@ namespace Model *

    Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

    • Example: WAFV2

      - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

    • Example: WAF

      + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

    • Example: WAF Classic

      * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

    • *

      Example: SECURITY_GROUPS_COMMON

      - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

    • Example: SECURITY_GROUPS_CONTENT_AUDIT

      * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -151,23 +143,15 @@ namespace Model *

      Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

      • Example: WAFV2

        - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

      • Example: WAF

        + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

      • Example: WAF Classic

        * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

      • *

        Example: SECURITY_GROUPS_COMMON

        - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

      • Example: SECURITY_GROUPS_CONTENT_AUDIT

        * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -188,23 +172,15 @@ namespace Model *

        Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

        • Example: WAFV2

          - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

        • Example: WAF

          + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

        • Example: WAF Classic

          * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

        • *

          Example: SECURITY_GROUPS_COMMON

          - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

        • Example: SECURITY_GROUPS_CONTENT_AUDIT

          * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -225,23 +201,15 @@ namespace Model *

          Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

          • Example: WAFV2

            - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

          • Example: WAF

            + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

          • Example: WAF Classic

            * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

          • *

            Example: SECURITY_GROUPS_COMMON

            - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

          • Example: SECURITY_GROUPS_CONTENT_AUDIT

            * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -262,23 +230,15 @@ namespace Model *

            Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

            • Example: WAFV2

              - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

            • Example: WAF

              + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

            • Example: WAF Classic

              * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

            • *

              Example: SECURITY_GROUPS_COMMON

              - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

            • Example: SECURITY_GROUPS_CONTENT_AUDIT

              * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -299,23 +259,15 @@ namespace Model *

              Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

              • Example: WAFV2

                - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

              • Example: WAF

                + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

              • Example: WAF Classic

                * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

              • *

                Example: SECURITY_GROUPS_COMMON

                - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

              • Example: SECURITY_GROUPS_CONTENT_AUDIT

                * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -336,23 +288,15 @@ namespace Model *

                Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

                • Example: WAFV2

                  - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

                • Example: WAF

                  + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

                • Example: WAF Classic

                  * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

                • *

                  Example: SECURITY_GROUPS_COMMON

                  - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

                • Example: SECURITY_GROUPS_CONTENT_AUDIT

                  * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" @@ -373,23 +317,15 @@ namespace Model *

                  Details about the service that are specific to the service type, in JSON * format. For service type SHIELD_ADVANCED, this is an empty * string.

                  • Example: WAFV2

                    - * "SecurityServicePolicyData": "{ \"type\": \"WAFV2\", - * \"postProcessRuleGroups\": [ { \"managedRuleGroupIdentifier\": { - * \"managedRuleGroupName\": \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": - * \"AWS\" } \"ruleGroupARN\": \"rule group arn", \"overrideAction\": { \"type\": - * \"COUNT|\" }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"preProcessRuleGroups\": [ { - * \"managedRuleGroupIdentifier\": { \"managedRuleGroupName\": - * \"AWSManagedRulesAdminProtectionRuleSet\", \"vendor\": \"AWS\" } - * \"ruleGroupARN\": \"rule group arn\", \"overrideAction\": { \"type\": \"COUNT\" - * }, \"excludedRules\": [ { \"name\" : \"EntityName\" } ], \"type\": - * \"ManagedRuleGroup|RuleGroup\" } ], \"defaultAction\": { \"type\": \"BLOCK\" }}" - *

                  • Example: WAF

                    + * "ManagedServiceData": + * "{\"type\":\"WAFV2\",\"defaultAction\":{\"type\":\"ALLOW\"},\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":null,\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"COUNT\"},\"excludedRules\":[{\"name\":\"EntityName\"}],\"ruleGroupType\":\"RuleGroup\"}],\"postProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"managedRuleGroupName\":\"AWSManagedRulesAdminProtectionRuleSet\",\"vendor\":\"AWS\"},\"ruleGroupArn\":\"rulegrouparn\",\"overrideAction\":{\"type\":\"NONE\"},\"excludedRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}],\"overrideCustomerWebACLAssociation\":false}" + *

                  • Example: WAF Classic

                    * "ManagedServiceData": "{\"type\": \"WAF\", \"ruleGroups\": [{\"id\": * \"12345678-1bcd-9012-efga-0987654321ab\", \"overrideAction\" : {\"type\": * \"COUNT\"}}], \"defaultAction\": {\"type\": \"BLOCK\"}}

                  • *

                    Example: SECURITY_GROUPS_COMMON

                    - * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false,\"securityGroups\":[{\"id\":\" + * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_COMMON","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_COMMON\",\"revertManualSecurityGroupChanges\":false,\"exclusiveResourceSecurityGroupManagement\":false, + * \"applyToAllEC2InstanceENIs\":false,\"securityGroups\":[{\"id\":\" * sg-000e55995d61a06bd\"}]}"},"RemediationEnabled":false,"ResourceType":"AWS::EC2::NetworkInterface"} *

                  • Example: SECURITY_GROUPS_CONTENT_AUDIT

                    * "SecurityServicePolicyData":{"Type":"SECURITY_GROUPS_CONTENT_AUDIT","ManagedServiceData":"{\"type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"securityGroups\":[{\"id\":\" diff --git a/aws-cpp-sdk-fms/source/model/CustomerPolicyScopeIdType.cpp b/aws-cpp-sdk-fms/source/model/CustomerPolicyScopeIdType.cpp index 14fb6e6f336..e8209d34040 100644 --- a/aws-cpp-sdk-fms/source/model/CustomerPolicyScopeIdType.cpp +++ b/aws-cpp-sdk-fms/source/model/CustomerPolicyScopeIdType.cpp @@ -31,6 +31,7 @@ namespace Aws { static const int ACCOUNT_HASH = HashingUtils::HashString("ACCOUNT"); + static const int ORG_UNIT_HASH = HashingUtils::HashString("ORG_UNIT"); CustomerPolicyScopeIdType GetCustomerPolicyScopeIdTypeForName(const Aws::String& name) @@ -40,6 +41,10 @@ namespace Aws { return CustomerPolicyScopeIdType::ACCOUNT; } + else if (hashCode == ORG_UNIT_HASH) + { + return CustomerPolicyScopeIdType::ORG_UNIT; + } EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); if(overflowContainer) { @@ -56,6 +61,8 @@ namespace Aws { case CustomerPolicyScopeIdType::ACCOUNT: return "ACCOUNT"; + case CustomerPolicyScopeIdType::ORG_UNIT: + return "ORG_UNIT"; default: EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); if(overflowContainer) diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftClient.h b/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftClient.h index 65eab798d4d..74f39091fde 100644 --- a/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftClient.h +++ b/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftClient.h @@ -40,6 +40,7 @@ #include #include #include +#include #include #include #include @@ -70,6 +71,7 @@ #include #include #include +#include #include #include #include @@ -87,6 +89,7 @@ #include #include #include +#include #include #include #include @@ -163,6 +166,7 @@ namespace Model class CreateSnapshotCopyGrantRequest; class CreateSnapshotScheduleRequest; class CreateTagsRequest; + class CreateUsageLimitRequest; class DeleteClusterRequest; class DeleteClusterParameterGroupRequest; class DeleteClusterSecurityGroupRequest; @@ -175,6 +179,7 @@ namespace Model class DeleteSnapshotCopyGrantRequest; class DeleteSnapshotScheduleRequest; class DeleteTagsRequest; + class DeleteUsageLimitRequest; class DescribeAccountAttributesRequest; class DescribeClusterDbRevisionsRequest; class DescribeClusterParameterGroupsRequest; @@ -203,6 +208,7 @@ namespace Model class DescribeStorageRequest; class DescribeTableRestoreStatusRequest; class DescribeTagsRequest; + class DescribeUsageLimitsRequest; class DisableLoggingRequest; class DisableSnapshotCopyRequest; class EnableLoggingRequest; @@ -221,6 +227,7 @@ namespace Model class ModifyScheduledActionRequest; class ModifySnapshotCopyRetentionPeriodRequest; class ModifySnapshotScheduleRequest; + class ModifyUsageLimitRequest; class PauseClusterRequest; class PurchaseReservedNodeOfferingRequest; class RebootClusterRequest; @@ -252,6 +259,7 @@ namespace Model typedef Aws::Utils::Outcome> CreateSnapshotCopyGrantOutcome; typedef Aws::Utils::Outcome> CreateSnapshotScheduleOutcome; typedef Aws::Utils::Outcome> CreateTagsOutcome; + typedef Aws::Utils::Outcome> CreateUsageLimitOutcome; typedef Aws::Utils::Outcome> DeleteClusterOutcome; typedef Aws::Utils::Outcome> DeleteClusterParameterGroupOutcome; typedef Aws::Utils::Outcome> DeleteClusterSecurityGroupOutcome; @@ -264,6 +272,7 @@ namespace Model typedef Aws::Utils::Outcome> DeleteSnapshotCopyGrantOutcome; typedef Aws::Utils::Outcome> DeleteSnapshotScheduleOutcome; typedef Aws::Utils::Outcome> DeleteTagsOutcome; + typedef Aws::Utils::Outcome> DeleteUsageLimitOutcome; typedef Aws::Utils::Outcome> DescribeAccountAttributesOutcome; typedef Aws::Utils::Outcome> DescribeClusterDbRevisionsOutcome; typedef Aws::Utils::Outcome> DescribeClusterParameterGroupsOutcome; @@ -292,6 +301,7 @@ namespace Model typedef Aws::Utils::Outcome> DescribeStorageOutcome; typedef Aws::Utils::Outcome> DescribeTableRestoreStatusOutcome; typedef Aws::Utils::Outcome> DescribeTagsOutcome; + typedef Aws::Utils::Outcome> DescribeUsageLimitsOutcome; typedef Aws::Utils::Outcome> DisableLoggingOutcome; typedef Aws::Utils::Outcome> DisableSnapshotCopyOutcome; typedef Aws::Utils::Outcome> EnableLoggingOutcome; @@ -310,6 +320,7 @@ namespace Model typedef Aws::Utils::Outcome> ModifyScheduledActionOutcome; typedef Aws::Utils::Outcome> ModifySnapshotCopyRetentionPeriodOutcome; typedef Aws::Utils::Outcome> ModifySnapshotScheduleOutcome; + typedef Aws::Utils::Outcome> ModifyUsageLimitOutcome; typedef Aws::Utils::Outcome> PauseClusterOutcome; typedef Aws::Utils::Outcome> PurchaseReservedNodeOfferingOutcome; typedef Aws::Utils::Outcome> RebootClusterOutcome; @@ -341,6 +352,7 @@ namespace Model typedef std::future CreateSnapshotCopyGrantOutcomeCallable; typedef std::future CreateSnapshotScheduleOutcomeCallable; typedef std::future CreateTagsOutcomeCallable; + typedef std::future CreateUsageLimitOutcomeCallable; typedef std::future DeleteClusterOutcomeCallable; typedef std::future DeleteClusterParameterGroupOutcomeCallable; typedef std::future DeleteClusterSecurityGroupOutcomeCallable; @@ -353,6 +365,7 @@ namespace Model typedef std::future DeleteSnapshotCopyGrantOutcomeCallable; typedef std::future DeleteSnapshotScheduleOutcomeCallable; typedef std::future DeleteTagsOutcomeCallable; + typedef std::future DeleteUsageLimitOutcomeCallable; typedef std::future DescribeAccountAttributesOutcomeCallable; typedef std::future DescribeClusterDbRevisionsOutcomeCallable; typedef std::future DescribeClusterParameterGroupsOutcomeCallable; @@ -381,6 +394,7 @@ namespace Model typedef std::future DescribeStorageOutcomeCallable; typedef std::future DescribeTableRestoreStatusOutcomeCallable; typedef std::future DescribeTagsOutcomeCallable; + typedef std::future DescribeUsageLimitsOutcomeCallable; typedef std::future DisableLoggingOutcomeCallable; typedef std::future DisableSnapshotCopyOutcomeCallable; typedef std::future EnableLoggingOutcomeCallable; @@ -399,6 +413,7 @@ namespace Model typedef std::future ModifyScheduledActionOutcomeCallable; typedef std::future ModifySnapshotCopyRetentionPeriodOutcomeCallable; typedef std::future ModifySnapshotScheduleOutcomeCallable; + typedef std::future ModifyUsageLimitOutcomeCallable; typedef std::future PauseClusterOutcomeCallable; typedef std::future PurchaseReservedNodeOfferingOutcomeCallable; typedef std::future RebootClusterOutcomeCallable; @@ -433,6 +448,7 @@ namespace Model typedef std::function&) > CreateSnapshotCopyGrantResponseReceivedHandler; typedef std::function&) > CreateSnapshotScheduleResponseReceivedHandler; typedef std::function&) > CreateTagsResponseReceivedHandler; + typedef std::function&) > CreateUsageLimitResponseReceivedHandler; typedef std::function&) > DeleteClusterResponseReceivedHandler; typedef std::function&) > DeleteClusterParameterGroupResponseReceivedHandler; typedef std::function&) > DeleteClusterSecurityGroupResponseReceivedHandler; @@ -445,6 +461,7 @@ namespace Model typedef std::function&) > DeleteSnapshotCopyGrantResponseReceivedHandler; typedef std::function&) > DeleteSnapshotScheduleResponseReceivedHandler; typedef std::function&) > DeleteTagsResponseReceivedHandler; + typedef std::function&) > DeleteUsageLimitResponseReceivedHandler; typedef std::function&) > DescribeAccountAttributesResponseReceivedHandler; typedef std::function&) > DescribeClusterDbRevisionsResponseReceivedHandler; typedef std::function&) > DescribeClusterParameterGroupsResponseReceivedHandler; @@ -473,6 +490,7 @@ namespace Model typedef std::function&) > DescribeStorageResponseReceivedHandler; typedef std::function&) > DescribeTableRestoreStatusResponseReceivedHandler; typedef std::function&) > DescribeTagsResponseReceivedHandler; + typedef std::function&) > DescribeUsageLimitsResponseReceivedHandler; typedef std::function&) > DisableLoggingResponseReceivedHandler; typedef std::function&) > DisableSnapshotCopyResponseReceivedHandler; typedef std::function&) > EnableLoggingResponseReceivedHandler; @@ -491,6 +509,7 @@ namespace Model typedef std::function&) > ModifyScheduledActionResponseReceivedHandler; typedef std::function&) > ModifySnapshotCopyRetentionPeriodResponseReceivedHandler; typedef std::function&) > ModifySnapshotScheduleResponseReceivedHandler; + typedef std::function&) > ModifyUsageLimitResponseReceivedHandler; typedef std::function&) > PauseClusterResponseReceivedHandler; typedef std::function&) > PurchaseReservedNodeOfferingResponseReceivedHandler; typedef std::function&) > RebootClusterResponseReceivedHandler; @@ -1385,6 +1404,37 @@ namespace Model */ virtual void CreateTagsAsync(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** + *

                    Creates a usage limit for a specified Amazon Redshift feature on a cluster. + * The usage limit is identified by the returned usage limit + * identifier.

                    See Also:

                    AWS + * API Reference

                    + */ + virtual Model::CreateUsageLimitOutcome CreateUsageLimit(const Model::CreateUsageLimitRequest& request) const; + + /** + *

                    Creates a usage limit for a specified Amazon Redshift feature on a cluster. + * The usage limit is identified by the returned usage limit + * identifier.

                    See Also:

                    AWS + * API Reference

                    + * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::CreateUsageLimitOutcomeCallable CreateUsageLimitCallable(const Model::CreateUsageLimitRequest& request) const; + + /** + *

                    Creates a usage limit for a specified Amazon Redshift feature on a cluster. + * The usage limit is identified by the returned usage limit + * identifier.

                    See Also:

                    AWS + * API Reference

                    + * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void CreateUsageLimitAsync(const Model::CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

                    Deletes a previously provisioned cluster without its final snapshot being * created. A successful response from the web service indicates that the request @@ -1787,6 +1837,31 @@ namespace Model */ virtual void DeleteTagsAsync(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** + *

                    Deletes a usage limit from a cluster.

                    See Also:

                    AWS + * API Reference

                    + */ + virtual Model::DeleteUsageLimitOutcome DeleteUsageLimit(const Model::DeleteUsageLimitRequest& request) const; + + /** + *

                    Deletes a usage limit from a cluster.

                    See Also:

                    AWS + * API Reference

                    + * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::DeleteUsageLimitOutcomeCallable DeleteUsageLimitCallable(const Model::DeleteUsageLimitRequest& request) const; + + /** + *

                    Deletes a usage limit from a cluster.

                    See Also:

                    AWS + * API Reference

                    + * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void DeleteUsageLimitAsync(const Model::DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

                    Returns a list of attributes attached to an account

                    See Also:

                    * & context = nullptr) const; + /** + *

                    Shows usage limits on a cluster. Results are filtered based on the + * combination of input usage limit identifier, cluster identifier, and feature + * type parameters:

                    • If usage limit identifier, cluster identifier, + * and feature type are not provided, then all usage limit objects for the current + * account in the current region are returned.

                    • If usage limit + * identifier is provided, then the corresponding usage limit object is + * returned.

                    • If cluster identifier is provided, then all usage + * limit objects for the specified cluster are returned.

                    • If + * cluster identifier and feature type are provided, then all usage limit objects + * for the combination of cluster and feature are returned.

                    • + *

                    See Also:

                    AWS + * API Reference

                    + */ + virtual Model::DescribeUsageLimitsOutcome DescribeUsageLimits(const Model::DescribeUsageLimitsRequest& request) const; + + /** + *

                    Shows usage limits on a cluster. Results are filtered based on the + * combination of input usage limit identifier, cluster identifier, and feature + * type parameters:

                    • If usage limit identifier, cluster identifier, + * and feature type are not provided, then all usage limit objects for the current + * account in the current region are returned.

                    • If usage limit + * identifier is provided, then the corresponding usage limit object is + * returned.

                    • If cluster identifier is provided, then all usage + * limit objects for the specified cluster are returned.

                    • If + * cluster identifier and feature type are provided, then all usage limit objects + * for the combination of cluster and feature are returned.

                    • + *

                    See Also:

                    AWS + * API Reference

                    + * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::DescribeUsageLimitsOutcomeCallable DescribeUsageLimitsCallable(const Model::DescribeUsageLimitsRequest& request) const; + + /** + *

                    Shows usage limits on a cluster. Results are filtered based on the + * combination of input usage limit identifier, cluster identifier, and feature + * type parameters:

                    • If usage limit identifier, cluster identifier, + * and feature type are not provided, then all usage limit objects for the current + * account in the current region are returned.

                    • If usage limit + * identifier is provided, then the corresponding usage limit object is + * returned.

                    • If cluster identifier is provided, then all usage + * limit objects for the specified cluster are returned.

                    • If + * cluster identifier and feature type are provided, then all usage limit objects + * for the combination of cluster and feature are returned.

                    • + *

                    See Also:

                    AWS + * API Reference

                    + * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void DescribeUsageLimitsAsync(const Model::DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

                    Stops logging information, such as queries and connection attempts, for the * specified Amazon Redshift cluster.

                    See Also:

                    & context = nullptr) const; + /** + *

                    Modifies a usage limit in a cluster. You can't modify the feature type or + * period of a usage limit.

                    See Also:

                    AWS + * API Reference

                    + */ + virtual Model::ModifyUsageLimitOutcome ModifyUsageLimit(const Model::ModifyUsageLimitRequest& request) const; + + /** + *

                    Modifies a usage limit in a cluster. You can't modify the feature type or + * period of a usage limit.

                    See Also:

                    AWS + * API Reference

                    + * + * returns a future to the operation so that it can be executed in parallel to other requests. + */ + virtual Model::ModifyUsageLimitOutcomeCallable ModifyUsageLimitCallable(const Model::ModifyUsageLimitRequest& request) const; + + /** + *

                    Modifies a usage limit in a cluster. You can't modify the feature type or + * period of a usage limit.

                    See Also:

                    AWS + * API Reference

                    + * + * Queues the request into a thread executor and triggers associated callback when operation has finished. + */ + virtual void ModifyUsageLimitAsync(const Model::ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const; + /** *

                    Pauses a cluster.

                    See Also:

                    AWS @@ -4171,6 +4329,7 @@ namespace Model void CreateSnapshotCopyGrantAsyncHelper(const Model::CreateSnapshotCopyGrantRequest& request, const CreateSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateSnapshotScheduleAsyncHelper(const Model::CreateSnapshotScheduleRequest& request, const CreateSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void CreateTagsAsyncHelper(const Model::CreateTagsRequest& request, const CreateTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void CreateUsageLimitAsyncHelper(const Model::CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterAsyncHelper(const Model::DeleteClusterRequest& request, const DeleteClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterParameterGroupAsyncHelper(const Model::DeleteClusterParameterGroupRequest& request, const DeleteClusterParameterGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteClusterSecurityGroupAsyncHelper(const Model::DeleteClusterSecurityGroupRequest& request, const DeleteClusterSecurityGroupResponseReceivedHandler& handler, const std::shared_ptr& context) const; @@ -4183,6 +4342,7 @@ namespace Model void DeleteSnapshotCopyGrantAsyncHelper(const Model::DeleteSnapshotCopyGrantRequest& request, const DeleteSnapshotCopyGrantResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteSnapshotScheduleAsyncHelper(const Model::DeleteSnapshotScheduleRequest& request, const DeleteSnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DeleteTagsAsyncHelper(const Model::DeleteTagsRequest& request, const DeleteTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void DeleteUsageLimitAsyncHelper(const Model::DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeAccountAttributesAsyncHelper(const Model::DescribeAccountAttributesRequest& request, const DescribeAccountAttributesResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterDbRevisionsAsyncHelper(const Model::DescribeClusterDbRevisionsRequest& request, const DescribeClusterDbRevisionsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeClusterParameterGroupsAsyncHelper(const Model::DescribeClusterParameterGroupsRequest& request, const DescribeClusterParameterGroupsResponseReceivedHandler& handler, const std::shared_ptr& context) const; @@ -4211,6 +4371,7 @@ namespace Model void DescribeStorageAsyncHelper(const Model::DescribeStorageRequest& request, const DescribeStorageResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTableRestoreStatusAsyncHelper(const Model::DescribeTableRestoreStatusRequest& request, const DescribeTableRestoreStatusResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DescribeTagsAsyncHelper(const Model::DescribeTagsRequest& request, const DescribeTagsResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void DescribeUsageLimitsAsyncHelper(const Model::DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableLoggingAsyncHelper(const Model::DisableLoggingRequest& request, const DisableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void DisableSnapshotCopyAsyncHelper(const Model::DisableSnapshotCopyRequest& request, const DisableSnapshotCopyResponseReceivedHandler& handler, const std::shared_ptr& context) const; void EnableLoggingAsyncHelper(const Model::EnableLoggingRequest& request, const EnableLoggingResponseReceivedHandler& handler, const std::shared_ptr& context) const; @@ -4229,6 +4390,7 @@ namespace Model void ModifyScheduledActionAsyncHelper(const Model::ModifyScheduledActionRequest& request, const ModifyScheduledActionResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySnapshotCopyRetentionPeriodAsyncHelper(const Model::ModifySnapshotCopyRetentionPeriodRequest& request, const ModifySnapshotCopyRetentionPeriodResponseReceivedHandler& handler, const std::shared_ptr& context) const; void ModifySnapshotScheduleAsyncHelper(const Model::ModifySnapshotScheduleRequest& request, const ModifySnapshotScheduleResponseReceivedHandler& handler, const std::shared_ptr& context) const; + void ModifyUsageLimitAsyncHelper(const Model::ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PauseClusterAsyncHelper(const Model::PauseClusterRequest& request, const PauseClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; void PurchaseReservedNodeOfferingAsyncHelper(const Model::PurchaseReservedNodeOfferingRequest& request, const PurchaseReservedNodeOfferingResponseReceivedHandler& handler, const std::shared_ptr& context) const; void RebootClusterAsyncHelper(const Model::RebootClusterRequest& request, const RebootClusterResponseReceivedHandler& handler, const std::shared_ptr& context) const; diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftErrors.h b/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftErrors.h index a981bd440c7..66581f1d613 100644 --- a/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftErrors.h +++ b/aws-cpp-sdk-redshift/include/aws/redshift/RedshiftErrors.h @@ -116,6 +116,7 @@ enum class RedshiftErrors INVALID_SUBSCRIPTION_STATE_FAULT, INVALID_TABLE_RESTORE_ARGUMENT_FAULT, INVALID_TAG_FAULT, + INVALID_USAGE_LIMIT_FAULT, INVALID_V_P_C_NETWORK_STATE_FAULT, IN_PROGRESS_TABLE_RESTORE_QUOTA_EXCEEDED_FAULT, LIMIT_EXCEEDED_FAULT, @@ -159,7 +160,9 @@ enum class RedshiftErrors UNAUTHORIZED_OPERATION, UNKNOWN_SNAPSHOT_COPY_REGION_FAULT, UNSUPPORTED_OPERATION_FAULT, - UNSUPPORTED_OPTION_FAULT + UNSUPPORTED_OPTION_FAULT, + USAGE_LIMIT_ALREADY_EXISTS_FAULT, + USAGE_LIMIT_NOT_FOUND_FAULT }; namespace RedshiftErrorMapper { diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitRequest.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitRequest.h new file mode 100644 index 00000000000..4218e2e35ff --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitRequest.h @@ -0,0 +1,347 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + + /** + */ + class AWS_REDSHIFT_API CreateUsageLimitRequest : public RedshiftRequest + { + public: + CreateUsageLimitRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "CreateUsageLimit"; } + + Aws::String SerializePayload() const override; + + protected: + void DumpBodyToUrl(Aws::Http::URI& uri ) const override; + + public: + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; } + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = value; } + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::move(value); } + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline void SetClusterIdentifier(const char* value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier.assign(value); } + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline CreateUsageLimitRequest& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline CreateUsageLimitRequest& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} + + /** + *

                    The identifier of the cluster that you want to limit usage.

                    + */ + inline CreateUsageLimitRequest& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} + + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; } + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline bool FeatureTypeHasBeenSet() const { return m_featureTypeHasBeenSet; } + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureTypeHasBeenSet = true; m_featureType = value; } + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureTypeHasBeenSet = true; m_featureType = std::move(value); } + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline CreateUsageLimitRequest& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;} + + /** + *

                    The Amazon Redshift feature that you want to limit.

                    + */ + inline CreateUsageLimitRequest& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;} + + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline const UsageLimitLimitType& GetLimitType() const{ return m_limitType; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline bool LimitTypeHasBeenSet() const { return m_limitTypeHasBeenSet; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline void SetLimitType(const UsageLimitLimitType& value) { m_limitTypeHasBeenSet = true; m_limitType = value; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline void SetLimitType(UsageLimitLimitType&& value) { m_limitTypeHasBeenSet = true; m_limitType = std::move(value); } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline CreateUsageLimitRequest& WithLimitType(const UsageLimitLimitType& value) { SetLimitType(value); return *this;} + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size. If FeatureType is spectrum, + * then LimitType must be data-scanned. If + * FeatureType is concurrency-scaling, then + * LimitType must be time.

                    + */ + inline CreateUsageLimitRequest& WithLimitType(UsageLimitLimitType&& value) { SetLimitType(std::move(value)); return *this;} + + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB). The value must be a positive number.

                    + */ + inline long long GetAmount() const{ return m_amount; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB). The value must be a positive number.

                    + */ + inline bool AmountHasBeenSet() const { return m_amountHasBeenSet; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB). The value must be a positive number.

                    + */ + inline void SetAmount(long long value) { m_amountHasBeenSet = true; m_amount = value; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB). The value must be a positive number.

                    + */ + inline CreateUsageLimitRequest& WithAmount(long long value) { SetAmount(value); return *this;} + + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline const UsageLimitPeriod& GetPeriod() const{ return m_period; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(const UsageLimitPeriod& value) { m_periodHasBeenSet = true; m_period = value; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(UsageLimitPeriod&& value) { m_periodHasBeenSet = true; m_period = std::move(value); } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline CreateUsageLimitRequest& WithPeriod(const UsageLimitPeriod& value) { SetPeriod(value); return *this;} + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline CreateUsageLimitRequest& WithPeriod(UsageLimitPeriod&& value) { SetPeriod(std::move(value)); return *this;} + + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline bool BreachActionHasBeenSet() const { return m_breachActionHasBeenSet; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachActionHasBeenSet = true; m_breachAction = value; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachActionHasBeenSet = true; m_breachAction = std::move(value); } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline CreateUsageLimitRequest& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;} + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. The default + * is log. For more information about this parameter, see UsageLimit.

                    + */ + inline CreateUsageLimitRequest& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;} + + + /** + *

                    A list of tag instances.

                    + */ + inline const Aws::Vector& GetTags() const{ return m_tags; } + + /** + *

                    A list of tag instances.

                    + */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } + + private: + + Aws::String m_clusterIdentifier; + bool m_clusterIdentifierHasBeenSet; + + UsageLimitFeatureType m_featureType; + bool m_featureTypeHasBeenSet; + + UsageLimitLimitType m_limitType; + bool m_limitTypeHasBeenSet; + + long long m_amount; + bool m_amountHasBeenSet; + + UsageLimitPeriod m_period; + bool m_periodHasBeenSet; + + UsageLimitBreachAction m_breachAction; + bool m_breachActionHasBeenSet; + + Aws::Vector m_tags; + bool m_tagsHasBeenSet; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitResult.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitResult.h new file mode 100644 index 00000000000..bc006672872 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/CreateUsageLimitResult.h @@ -0,0 +1,356 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Xml +{ + class XmlDocument; +} // namespace Xml +} // namespace Utils +namespace Redshift +{ +namespace Model +{ + /** + *

                    Describes a usage limit object for a cluster.

                    See Also:

                    AWS + * API Reference

                    + */ + class AWS_REDSHIFT_API CreateUsageLimitResult + { + public: + CreateUsageLimitResult(); + CreateUsageLimitResult(const Aws::AmazonWebServiceResult& result); + CreateUsageLimitResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

                    The identifier of the usage limit.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline CreateUsageLimitResult& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline CreateUsageLimitResult& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline CreateUsageLimitResult& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifier = value; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifier = std::move(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const char* value) { m_clusterIdentifier.assign(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline CreateUsageLimitResult& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline CreateUsageLimitResult& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline CreateUsageLimitResult& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} + + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureType = value; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureType = std::move(value); } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline CreateUsageLimitResult& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;} + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline CreateUsageLimitResult& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;} + + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline const UsageLimitLimitType& GetLimitType() const{ return m_limitType; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(const UsageLimitLimitType& value) { m_limitType = value; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(UsageLimitLimitType&& value) { m_limitType = std::move(value); } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline CreateUsageLimitResult& WithLimitType(const UsageLimitLimitType& value) { SetLimitType(value); return *this;} + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline CreateUsageLimitResult& WithLimitType(UsageLimitLimitType&& value) { SetLimitType(std::move(value)); return *this;} + + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline long long GetAmount() const{ return m_amount; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline void SetAmount(long long value) { m_amount = value; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline CreateUsageLimitResult& WithAmount(long long value) { SetAmount(value); return *this;} + + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline const UsageLimitPeriod& GetPeriod() const{ return m_period; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(const UsageLimitPeriod& value) { m_period = value; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(UsageLimitPeriod&& value) { m_period = std::move(value); } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline CreateUsageLimitResult& WithPeriod(const UsageLimitPeriod& value) { SetPeriod(value); return *this;} + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline CreateUsageLimitResult& WithPeriod(UsageLimitPeriod&& value) { SetPeriod(std::move(value)); return *this;} + + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachAction = value; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachAction = std::move(value); } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline CreateUsageLimitResult& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;} + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline CreateUsageLimitResult& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;} + + + /** + *

                    A list of tag instances.

                    + */ + inline const Aws::Vector& GetTags() const{ return m_tags; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(const Aws::Vector& value) { m_tags = value; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(Aws::Vector&& value) { m_tags = std::move(value); } + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitResult& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitResult& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } + + /** + *

                    A list of tag instances.

                    + */ + inline CreateUsageLimitResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } + + + + inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } + + + inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } + + + inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } + + + inline CreateUsageLimitResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} + + + inline CreateUsageLimitResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} + + private: + + Aws::String m_usageLimitId; + + Aws::String m_clusterIdentifier; + + UsageLimitFeatureType m_featureType; + + UsageLimitLimitType m_limitType; + + long long m_amount; + + UsageLimitPeriod m_period; + + UsageLimitBreachAction m_breachAction; + + Aws::Vector m_tags; + + ResponseMetadata m_responseMetadata; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/DeleteUsageLimitRequest.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/DeleteUsageLimitRequest.h new file mode 100644 index 00000000000..5129226496b --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/DeleteUsageLimitRequest.h @@ -0,0 +1,97 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + + /** + */ + class AWS_REDSHIFT_API DeleteUsageLimitRequest : public RedshiftRequest + { + public: + DeleteUsageLimitRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DeleteUsageLimit"; } + + Aws::String SerializePayload() const override; + + protected: + void DumpBodyToUrl(Aws::Http::URI& uri ) const override; + + public: + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; } + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline DeleteUsageLimitRequest& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline DeleteUsageLimitRequest& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit to delete.

                    + */ + inline DeleteUsageLimitRequest& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + private: + + Aws::String m_usageLimitId; + bool m_usageLimitIdHasBeenSet; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsRequest.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsRequest.h new file mode 100644 index 00000000000..4179dbb9df3 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsRequest.h @@ -0,0 +1,501 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + + /** + */ + class AWS_REDSHIFT_API DescribeUsageLimitsRequest : public RedshiftRequest + { + public: + DescribeUsageLimitsRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "DescribeUsageLimits"; } + + Aws::String SerializePayload() const override; + + protected: + void DumpBodyToUrl(Aws::Http::URI& uri ) const override; + + public: + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; } + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline DescribeUsageLimitsRequest& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline DescribeUsageLimitsRequest& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit to describe.

                    + */ + inline DescribeUsageLimitsRequest& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; } + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = value; } + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::move(value); } + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline void SetClusterIdentifier(const char* value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier.assign(value); } + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline DescribeUsageLimitsRequest& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline DescribeUsageLimitsRequest& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} + + /** + *

                    The identifier of the cluster for which you want to describe usage + * limits.

                    + */ + inline DescribeUsageLimitsRequest& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} + + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; } + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline bool FeatureTypeHasBeenSet() const { return m_featureTypeHasBeenSet; } + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureTypeHasBeenSet = true; m_featureType = value; } + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureTypeHasBeenSet = true; m_featureType = std::move(value); } + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline DescribeUsageLimitsRequest& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;} + + /** + *

                    The feature type for which you want to describe usage limits.

                    + */ + inline DescribeUsageLimitsRequest& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;} + + + /** + *

                    The maximum number of response records to return in each call. If the number + * of remaining response records exceeds the specified MaxRecords + * value, a value is returned in a marker field of the response. You + * can retrieve the next set of records by retrying the command with the returned + * marker value.

                    Default: 100

                    Constraints: minimum 20, + * maximum 100.

                    + */ + inline int GetMaxRecords() const{ return m_maxRecords; } + + /** + *

                    The maximum number of response records to return in each call. If the number + * of remaining response records exceeds the specified MaxRecords + * value, a value is returned in a marker field of the response. You + * can retrieve the next set of records by retrying the command with the returned + * marker value.

                    Default: 100

                    Constraints: minimum 20, + * maximum 100.

                    + */ + inline bool MaxRecordsHasBeenSet() const { return m_maxRecordsHasBeenSet; } + + /** + *

                    The maximum number of response records to return in each call. If the number + * of remaining response records exceeds the specified MaxRecords + * value, a value is returned in a marker field of the response. You + * can retrieve the next set of records by retrying the command with the returned + * marker value.

                    Default: 100

                    Constraints: minimum 20, + * maximum 100.

                    + */ + inline void SetMaxRecords(int value) { m_maxRecordsHasBeenSet = true; m_maxRecords = value; } + + /** + *

                    The maximum number of response records to return in each call. If the number + * of remaining response records exceeds the specified MaxRecords + * value, a value is returned in a marker field of the response. You + * can retrieve the next set of records by retrying the command with the returned + * marker value.

                    Default: 100

                    Constraints: minimum 20, + * maximum 100.

                    + */ + inline DescribeUsageLimitsRequest& WithMaxRecords(int value) { SetMaxRecords(value); return *this;} + + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline const Aws::String& GetMarker() const{ return m_marker; } + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline bool MarkerHasBeenSet() const { return m_markerHasBeenSet; } + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline void SetMarker(const Aws::String& value) { m_markerHasBeenSet = true; m_marker = value; } + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline void SetMarker(Aws::String&& value) { m_markerHasBeenSet = true; m_marker = std::move(value); } + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline void SetMarker(const char* value) { m_markerHasBeenSet = true; m_marker.assign(value); } + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline DescribeUsageLimitsRequest& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline DescribeUsageLimitsRequest& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} + + /** + *

                    An optional parameter that specifies the starting point to return a set of + * response records. When the results of a DescribeUsageLimits request + * exceed the value specified in MaxRecords, AWS returns a value in + * the Marker field of the response. You can retrieve the next set of + * response records by providing the returned marker value in the + * Marker parameter and retrying the request.

                    + */ + inline DescribeUsageLimitsRequest& WithMarker(const char* value) { SetMarker(value); return *this;} + + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline const Aws::Vector& GetTagKeys() const{ return m_tagKeys; } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline bool TagKeysHasBeenSet() const { return m_tagKeysHasBeenSet; } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline void SetTagKeys(const Aws::Vector& value) { m_tagKeysHasBeenSet = true; m_tagKeys = value; } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline void SetTagKeys(Aws::Vector&& value) { m_tagKeysHasBeenSet = true; m_tagKeys = std::move(value); } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline DescribeUsageLimitsRequest& WithTagKeys(const Aws::Vector& value) { SetTagKeys(value); return *this;} + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline DescribeUsageLimitsRequest& WithTagKeys(Aws::Vector&& value) { SetTagKeys(std::move(value)); return *this;} + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagKeys(const Aws::String& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagKeys(Aws::String&& value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(std::move(value)); return *this; } + + /** + *

                    A tag key or keys for which you want to return all matching usage limit + * objects that are associated with the specified key or keys. For example, suppose + * that you have parameter groups that are tagged with keys called + * owner and environment. If you specify both of these + * tag keys in the request, Amazon Redshift returns a response with the usage limit + * objects have either or both of these tag keys associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagKeys(const char* value) { m_tagKeysHasBeenSet = true; m_tagKeys.push_back(value); return *this; } + + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline const Aws::Vector& GetTagValues() const{ return m_tagValues; } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline bool TagValuesHasBeenSet() const { return m_tagValuesHasBeenSet; } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline void SetTagValues(const Aws::Vector& value) { m_tagValuesHasBeenSet = true; m_tagValues = value; } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline void SetTagValues(Aws::Vector&& value) { m_tagValuesHasBeenSet = true; m_tagValues = std::move(value); } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline DescribeUsageLimitsRequest& WithTagValues(const Aws::Vector& value) { SetTagValues(value); return *this;} + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline DescribeUsageLimitsRequest& WithTagValues(Aws::Vector&& value) { SetTagValues(std::move(value)); return *this;} + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagValues(const Aws::String& value) { m_tagValuesHasBeenSet = true; m_tagValues.push_back(value); return *this; } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagValues(Aws::String&& value) { m_tagValuesHasBeenSet = true; m_tagValues.push_back(std::move(value)); return *this; } + + /** + *

                    A tag value or values for which you want to return all matching usage limit + * objects that are associated with the specified tag value or values. For example, + * suppose that you have parameter groups that are tagged with values called + * admin and test. If you specify both of these tag + * values in the request, Amazon Redshift returns a response with the usage limit + * objects that have either or both of these tag values associated with them.

                    + */ + inline DescribeUsageLimitsRequest& AddTagValues(const char* value) { m_tagValuesHasBeenSet = true; m_tagValues.push_back(value); return *this; } + + private: + + Aws::String m_usageLimitId; + bool m_usageLimitIdHasBeenSet; + + Aws::String m_clusterIdentifier; + bool m_clusterIdentifierHasBeenSet; + + UsageLimitFeatureType m_featureType; + bool m_featureTypeHasBeenSet; + + int m_maxRecords; + bool m_maxRecordsHasBeenSet; + + Aws::String m_marker; + bool m_markerHasBeenSet; + + Aws::Vector m_tagKeys; + bool m_tagKeysHasBeenSet; + + Aws::Vector m_tagValues; + bool m_tagValuesHasBeenSet; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsResult.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsResult.h new file mode 100644 index 00000000000..193127bd543 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/DescribeUsageLimitsResult.h @@ -0,0 +1,181 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Xml +{ + class XmlDocument; +} // namespace Xml +} // namespace Utils +namespace Redshift +{ +namespace Model +{ + class AWS_REDSHIFT_API DescribeUsageLimitsResult + { + public: + DescribeUsageLimitsResult(); + DescribeUsageLimitsResult(const Aws::AmazonWebServiceResult& result); + DescribeUsageLimitsResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline const Aws::Vector& GetUsageLimits() const{ return m_usageLimits; } + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline void SetUsageLimits(const Aws::Vector& value) { m_usageLimits = value; } + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline void SetUsageLimits(Aws::Vector&& value) { m_usageLimits = std::move(value); } + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline DescribeUsageLimitsResult& WithUsageLimits(const Aws::Vector& value) { SetUsageLimits(value); return *this;} + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline DescribeUsageLimitsResult& WithUsageLimits(Aws::Vector&& value) { SetUsageLimits(std::move(value)); return *this;} + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline DescribeUsageLimitsResult& AddUsageLimits(const UsageLimit& value) { m_usageLimits.push_back(value); return *this; } + + /** + *

                    Contains the output from the DescribeUsageLimits action.

                    + */ + inline DescribeUsageLimitsResult& AddUsageLimits(UsageLimit&& value) { m_usageLimits.push_back(std::move(value)); return *this; } + + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline const Aws::String& GetMarker() const{ return m_marker; } + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline void SetMarker(const Aws::String& value) { m_marker = value; } + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline void SetMarker(Aws::String&& value) { m_marker = std::move(value); } + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline void SetMarker(const char* value) { m_marker.assign(value); } + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline DescribeUsageLimitsResult& WithMarker(const Aws::String& value) { SetMarker(value); return *this;} + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline DescribeUsageLimitsResult& WithMarker(Aws::String&& value) { SetMarker(std::move(value)); return *this;} + + /** + *

                    A value that indicates the starting point for the next set of response + * records in a subsequent request. If a value is returned in a response, you can + * retrieve the next set of records by providing this returned marker value in the + * Marker parameter and retrying the command. If the + * Marker field is empty, all response records have been retrieved for + * the request.

                    + */ + inline DescribeUsageLimitsResult& WithMarker(const char* value) { SetMarker(value); return *this;} + + + + inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } + + + inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } + + + inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } + + + inline DescribeUsageLimitsResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} + + + inline DescribeUsageLimitsResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} + + private: + + Aws::Vector m_usageLimits; + + Aws::String m_marker; + + ResponseMetadata m_responseMetadata; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitRequest.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitRequest.h new file mode 100644 index 00000000000..8578e9c29a4 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitRequest.h @@ -0,0 +1,166 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + + /** + */ + class AWS_REDSHIFT_API ModifyUsageLimitRequest : public RedshiftRequest + { + public: + ModifyUsageLimitRequest(); + + // Service request name is the Operation name which will send this request out, + // each operation should has unique request name, so that we can get operation's name from this request. + // Note: this is not true for response, multiple operations may have the same response name, + // so we can not get operation's name from response. + inline virtual const char* GetServiceRequestName() const override { return "ModifyUsageLimit"; } + + Aws::String SerializePayload() const override; + + protected: + void DumpBodyToUrl(Aws::Http::URI& uri ) const override; + + public: + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; } + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline ModifyUsageLimitRequest& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline ModifyUsageLimitRequest& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit to modify.

                    + */ + inline ModifyUsageLimitRequest& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + + /** + *

                    The new limit amount. For more information about this parameter, see + * UsageLimit.

                    + */ + inline long long GetAmount() const{ return m_amount; } + + /** + *

                    The new limit amount. For more information about this parameter, see + * UsageLimit.

                    + */ + inline bool AmountHasBeenSet() const { return m_amountHasBeenSet; } + + /** + *

                    The new limit amount. For more information about this parameter, see + * UsageLimit.

                    + */ + inline void SetAmount(long long value) { m_amountHasBeenSet = true; m_amount = value; } + + /** + *

                    The new limit amount. For more information about this parameter, see + * UsageLimit.

                    + */ + inline ModifyUsageLimitRequest& WithAmount(long long value) { SetAmount(value); return *this;} + + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; } + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline bool BreachActionHasBeenSet() const { return m_breachActionHasBeenSet; } + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachActionHasBeenSet = true; m_breachAction = value; } + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachActionHasBeenSet = true; m_breachAction = std::move(value); } + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline ModifyUsageLimitRequest& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;} + + /** + *

                    The new action that Amazon Redshift takes when the limit is reached. For more + * information about this parameter, see UsageLimit.

                    + */ + inline ModifyUsageLimitRequest& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;} + + private: + + Aws::String m_usageLimitId; + bool m_usageLimitIdHasBeenSet; + + long long m_amount; + bool m_amountHasBeenSet; + + UsageLimitBreachAction m_breachAction; + bool m_breachActionHasBeenSet; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitResult.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitResult.h new file mode 100644 index 00000000000..5973f300773 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/ModifyUsageLimitResult.h @@ -0,0 +1,356 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +template +class AmazonWebServiceResult; + +namespace Utils +{ +namespace Xml +{ + class XmlDocument; +} // namespace Xml +} // namespace Utils +namespace Redshift +{ +namespace Model +{ + /** + *

                    Describes a usage limit object for a cluster.

                    See Also:

                    AWS + * API Reference

                    + */ + class AWS_REDSHIFT_API ModifyUsageLimitResult + { + public: + ModifyUsageLimitResult(); + ModifyUsageLimitResult(const Aws::AmazonWebServiceResult& result); + ModifyUsageLimitResult& operator=(const Aws::AmazonWebServiceResult& result); + + + /** + *

                    The identifier of the usage limit.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline ModifyUsageLimitResult& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline ModifyUsageLimitResult& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline ModifyUsageLimitResult& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifier = value; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifier = std::move(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const char* value) { m_clusterIdentifier.assign(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline ModifyUsageLimitResult& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline ModifyUsageLimitResult& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline ModifyUsageLimitResult& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} + + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureType = value; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureType = std::move(value); } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline ModifyUsageLimitResult& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;} + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline ModifyUsageLimitResult& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;} + + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline const UsageLimitLimitType& GetLimitType() const{ return m_limitType; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(const UsageLimitLimitType& value) { m_limitType = value; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(UsageLimitLimitType&& value) { m_limitType = std::move(value); } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline ModifyUsageLimitResult& WithLimitType(const UsageLimitLimitType& value) { SetLimitType(value); return *this;} + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline ModifyUsageLimitResult& WithLimitType(UsageLimitLimitType&& value) { SetLimitType(std::move(value)); return *this;} + + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline long long GetAmount() const{ return m_amount; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline void SetAmount(long long value) { m_amount = value; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline ModifyUsageLimitResult& WithAmount(long long value) { SetAmount(value); return *this;} + + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline const UsageLimitPeriod& GetPeriod() const{ return m_period; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(const UsageLimitPeriod& value) { m_period = value; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(UsageLimitPeriod&& value) { m_period = std::move(value); } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline ModifyUsageLimitResult& WithPeriod(const UsageLimitPeriod& value) { SetPeriod(value); return *this;} + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline ModifyUsageLimitResult& WithPeriod(UsageLimitPeriod&& value) { SetPeriod(std::move(value)); return *this;} + + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachAction = value; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachAction = std::move(value); } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline ModifyUsageLimitResult& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;} + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline ModifyUsageLimitResult& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;} + + + /** + *

                    A list of tag instances.

                    + */ + inline const Aws::Vector& GetTags() const{ return m_tags; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(const Aws::Vector& value) { m_tags = value; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(Aws::Vector&& value) { m_tags = std::move(value); } + + /** + *

                    A list of tag instances.

                    + */ + inline ModifyUsageLimitResult& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline ModifyUsageLimitResult& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline ModifyUsageLimitResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } + + /** + *

                    A list of tag instances.

                    + */ + inline ModifyUsageLimitResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } + + + + inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } + + + inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; } + + + inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); } + + + inline ModifyUsageLimitResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} + + + inline ModifyUsageLimitResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} + + private: + + Aws::String m_usageLimitId; + + Aws::String m_clusterIdentifier; + + UsageLimitFeatureType m_featureType; + + UsageLimitLimitType m_limitType; + + long long m_amount; + + UsageLimitPeriod m_period; + + UsageLimitBreachAction m_breachAction; + + Aws::Vector m_tags; + + ResponseMetadata m_responseMetadata; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/RestoreFromClusterSnapshotRequest.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/RestoreFromClusterSnapshotRequest.h index 4cb9d72b214..2cc89975cd6 100644 --- a/aws-cpp-sdk-redshift/include/aws/redshift/model/RestoreFromClusterSnapshotRequest.h +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/RestoreFromClusterSnapshotRequest.h @@ -1080,7 +1080,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1097,7 +1097,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1114,7 +1114,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1131,7 +1131,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1148,7 +1148,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1165,7 +1165,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1182,7 +1182,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management @@ -1199,7 +1199,7 @@ namespace Model * a DC instance type, you must restore into that same instance type and size. In * other words, you can only restore a dc1.large instance type into another * dc1.large instance type or dc2.large instance type. You can't restore - * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize + * dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize * to a dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimit.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimit.h new file mode 100644 index 00000000000..ba52600c6b4 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimit.h @@ -0,0 +1,417 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace Aws +{ +namespace Utils +{ +namespace Xml +{ + class XmlNode; +} // namespace Xml +} // namespace Utils +namespace Redshift +{ +namespace Model +{ + + /** + *

                    Describes a usage limit object for a cluster.

                    See Also:

                    AWS + * API Reference

                    + */ + class AWS_REDSHIFT_API UsageLimit + { + public: + UsageLimit(); + UsageLimit(const Aws::Utils::Xml::XmlNode& xmlNode); + UsageLimit& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); + + void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; + void OutputToStream(Aws::OStream& oStream, const char* location) const; + + + /** + *

                    The identifier of the usage limit.

                    + */ + inline const Aws::String& GetUsageLimitId() const{ return m_usageLimitId; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline bool UsageLimitIdHasBeenSet() const { return m_usageLimitIdHasBeenSet; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const Aws::String& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = value; } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(Aws::String&& value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId = std::move(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline void SetUsageLimitId(const char* value) { m_usageLimitIdHasBeenSet = true; m_usageLimitId.assign(value); } + + /** + *

                    The identifier of the usage limit.

                    + */ + inline UsageLimit& WithUsageLimitId(const Aws::String& value) { SetUsageLimitId(value); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline UsageLimit& WithUsageLimitId(Aws::String&& value) { SetUsageLimitId(std::move(value)); return *this;} + + /** + *

                    The identifier of the usage limit.

                    + */ + inline UsageLimit& WithUsageLimitId(const char* value) { SetUsageLimitId(value); return *this;} + + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline const Aws::String& GetClusterIdentifier() const{ return m_clusterIdentifier; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline bool ClusterIdentifierHasBeenSet() const { return m_clusterIdentifierHasBeenSet; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const Aws::String& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = value; } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(Aws::String&& value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier = std::move(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline void SetClusterIdentifier(const char* value) { m_clusterIdentifierHasBeenSet = true; m_clusterIdentifier.assign(value); } + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline UsageLimit& WithClusterIdentifier(const Aws::String& value) { SetClusterIdentifier(value); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline UsageLimit& WithClusterIdentifier(Aws::String&& value) { SetClusterIdentifier(std::move(value)); return *this;} + + /** + *

                    The identifier of the cluster with a usage limit.

                    + */ + inline UsageLimit& WithClusterIdentifier(const char* value) { SetClusterIdentifier(value); return *this;} + + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline const UsageLimitFeatureType& GetFeatureType() const{ return m_featureType; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline bool FeatureTypeHasBeenSet() const { return m_featureTypeHasBeenSet; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(const UsageLimitFeatureType& value) { m_featureTypeHasBeenSet = true; m_featureType = value; } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline void SetFeatureType(UsageLimitFeatureType&& value) { m_featureTypeHasBeenSet = true; m_featureType = std::move(value); } + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline UsageLimit& WithFeatureType(const UsageLimitFeatureType& value) { SetFeatureType(value); return *this;} + + /** + *

                    The Amazon Redshift feature to which the limit applies.

                    + */ + inline UsageLimit& WithFeatureType(UsageLimitFeatureType&& value) { SetFeatureType(std::move(value)); return *this;} + + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline const UsageLimitLimitType& GetLimitType() const{ return m_limitType; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline bool LimitTypeHasBeenSet() const { return m_limitTypeHasBeenSet; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(const UsageLimitLimitType& value) { m_limitTypeHasBeenSet = true; m_limitType = value; } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline void SetLimitType(UsageLimitLimitType&& value) { m_limitTypeHasBeenSet = true; m_limitType = std::move(value); } + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline UsageLimit& WithLimitType(const UsageLimitLimitType& value) { SetLimitType(value); return *this;} + + /** + *

                    The type of limit. Depending on the feature type, this can be based on a time + * duration or data size.

                    + */ + inline UsageLimit& WithLimitType(UsageLimitLimitType&& value) { SetLimitType(std::move(value)); return *this;} + + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline long long GetAmount() const{ return m_amount; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline bool AmountHasBeenSet() const { return m_amountHasBeenSet; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline void SetAmount(long long value) { m_amountHasBeenSet = true; m_amount = value; } + + /** + *

                    The limit amount. If time-based, this amount is in minutes. If data-based, + * this amount is in terabytes (TB).

                    + */ + inline UsageLimit& WithAmount(long long value) { SetAmount(value); return *this;} + + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline const UsageLimitPeriod& GetPeriod() const{ return m_period; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline bool PeriodHasBeenSet() const { return m_periodHasBeenSet; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(const UsageLimitPeriod& value) { m_periodHasBeenSet = true; m_period = value; } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline void SetPeriod(UsageLimitPeriod&& value) { m_periodHasBeenSet = true; m_period = std::move(value); } + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline UsageLimit& WithPeriod(const UsageLimitPeriod& value) { SetPeriod(value); return *this;} + + /** + *

                    The time period that the amount applies to. A weekly period + * begins on Sunday. The default is monthly.

                    + */ + inline UsageLimit& WithPeriod(UsageLimitPeriod&& value) { SetPeriod(std::move(value)); return *this;} + + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline const UsageLimitBreachAction& GetBreachAction() const{ return m_breachAction; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline bool BreachActionHasBeenSet() const { return m_breachActionHasBeenSet; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(const UsageLimitBreachAction& value) { m_breachActionHasBeenSet = true; m_breachAction = value; } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline void SetBreachAction(UsageLimitBreachAction&& value) { m_breachActionHasBeenSet = true; m_breachAction = std::move(value); } + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline UsageLimit& WithBreachAction(const UsageLimitBreachAction& value) { SetBreachAction(value); return *this;} + + /** + *

                    The action that Amazon Redshift takes when the limit is reached. Possible + * values are:

                    • log - To log an event in a system table. + * The default is log.

                    • emit-metric - To emit CloudWatch + * metrics.

                    • disable - To disable the feature until the + * next usage period begins.

                    + */ + inline UsageLimit& WithBreachAction(UsageLimitBreachAction&& value) { SetBreachAction(std::move(value)); return *this;} + + + /** + *

                    A list of tag instances.

                    + */ + inline const Aws::Vector& GetTags() const{ return m_tags; } + + /** + *

                    A list of tag instances.

                    + */ + inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } + + /** + *

                    A list of tag instances.

                    + */ + inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } + + /** + *

                    A list of tag instances.

                    + */ + inline UsageLimit& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline UsageLimit& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} + + /** + *

                    A list of tag instances.

                    + */ + inline UsageLimit& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } + + /** + *

                    A list of tag instances.

                    + */ + inline UsageLimit& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } + + + + inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; } + + + inline bool ResponseMetadataHasBeenSet() const { return m_responseMetadataHasBeenSet; } + + + inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadataHasBeenSet = true; m_responseMetadata = value; } + + + inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadataHasBeenSet = true; m_responseMetadata = std::move(value); } + + + inline UsageLimit& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;} + + + inline UsageLimit& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;} + + private: + + Aws::String m_usageLimitId; + bool m_usageLimitIdHasBeenSet; + + Aws::String m_clusterIdentifier; + bool m_clusterIdentifierHasBeenSet; + + UsageLimitFeatureType m_featureType; + bool m_featureTypeHasBeenSet; + + UsageLimitLimitType m_limitType; + bool m_limitTypeHasBeenSet; + + long long m_amount; + bool m_amountHasBeenSet; + + UsageLimitPeriod m_period; + bool m_periodHasBeenSet; + + UsageLimitBreachAction m_breachAction; + bool m_breachActionHasBeenSet; + + Aws::Vector m_tags; + bool m_tagsHasBeenSet; + + ResponseMetadata m_responseMetadata; + bool m_responseMetadataHasBeenSet; + }; + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitBreachAction.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitBreachAction.h new file mode 100644 index 00000000000..902217b4de9 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitBreachAction.h @@ -0,0 +1,42 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + enum class UsageLimitBreachAction + { + NOT_SET, + log, + emit_metric, + disable + }; + +namespace UsageLimitBreachActionMapper +{ +AWS_REDSHIFT_API UsageLimitBreachAction GetUsageLimitBreachActionForName(const Aws::String& name); + +AWS_REDSHIFT_API Aws::String GetNameForUsageLimitBreachAction(UsageLimitBreachAction value); +} // namespace UsageLimitBreachActionMapper +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitFeatureType.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitFeatureType.h new file mode 100644 index 00000000000..6ad53811c53 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitFeatureType.h @@ -0,0 +1,41 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + enum class UsageLimitFeatureType + { + NOT_SET, + spectrum, + concurrency_scaling + }; + +namespace UsageLimitFeatureTypeMapper +{ +AWS_REDSHIFT_API UsageLimitFeatureType GetUsageLimitFeatureTypeForName(const Aws::String& name); + +AWS_REDSHIFT_API Aws::String GetNameForUsageLimitFeatureType(UsageLimitFeatureType value); +} // namespace UsageLimitFeatureTypeMapper +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitLimitType.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitLimitType.h new file mode 100644 index 00000000000..370d2028970 --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitLimitType.h @@ -0,0 +1,41 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + enum class UsageLimitLimitType + { + NOT_SET, + time, + data_scanned + }; + +namespace UsageLimitLimitTypeMapper +{ +AWS_REDSHIFT_API UsageLimitLimitType GetUsageLimitLimitTypeForName(const Aws::String& name); + +AWS_REDSHIFT_API Aws::String GetNameForUsageLimitLimitType(UsageLimitLimitType value); +} // namespace UsageLimitLimitTypeMapper +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitPeriod.h b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitPeriod.h new file mode 100644 index 00000000000..c70db02f06d --- /dev/null +++ b/aws-cpp-sdk-redshift/include/aws/redshift/model/UsageLimitPeriod.h @@ -0,0 +1,42 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#pragma once +#include +#include + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + enum class UsageLimitPeriod + { + NOT_SET, + daily, + weekly, + monthly + }; + +namespace UsageLimitPeriodMapper +{ +AWS_REDSHIFT_API UsageLimitPeriod GetUsageLimitPeriodForName(const Aws::String& name); + +AWS_REDSHIFT_API Aws::String GetNameForUsageLimitPeriod(UsageLimitPeriod value); +} // namespace UsageLimitPeriodMapper +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/source/RedshiftClient.cpp b/aws-cpp-sdk-redshift/source/RedshiftClient.cpp index 571f2b29d10..d67c52c3bbc 100644 --- a/aws-cpp-sdk-redshift/source/RedshiftClient.cpp +++ b/aws-cpp-sdk-redshift/source/RedshiftClient.cpp @@ -49,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -61,6 +62,7 @@ #include #include #include +#include #include #include #include @@ -89,6 +91,7 @@ #include #include #include +#include #include #include #include @@ -107,6 +110,7 @@ #include #include #include +#include #include #include #include @@ -867,6 +871,41 @@ void RedshiftClient::CreateTagsAsyncHelper(const CreateTagsRequest& request, con handler(this, request, CreateTags(request), context); } +CreateUsageLimitOutcome RedshiftClient::CreateUsageLimit(const CreateUsageLimitRequest& request) const +{ + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/"; + uri.SetPath(uri.GetPath() + ss.str()); + XmlOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST); + if(outcome.IsSuccess()) + { + return CreateUsageLimitOutcome(CreateUsageLimitResult(outcome.GetResult())); + } + else + { + return CreateUsageLimitOutcome(outcome.GetError()); + } +} + +CreateUsageLimitOutcomeCallable RedshiftClient::CreateUsageLimitCallable(const CreateUsageLimitRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< CreateUsageLimitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->CreateUsageLimit(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void RedshiftClient::CreateUsageLimitAsync(const CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->CreateUsageLimitAsyncHelper( request, handler, context ); } ); +} + +void RedshiftClient::CreateUsageLimitAsyncHelper(const CreateUsageLimitRequest& request, const CreateUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, CreateUsageLimit(request), context); +} + DeleteClusterOutcome RedshiftClient::DeleteCluster(const DeleteClusterRequest& request) const { Aws::Http::URI uri = m_uri; @@ -1287,6 +1326,41 @@ void RedshiftClient::DeleteTagsAsyncHelper(const DeleteTagsRequest& request, con handler(this, request, DeleteTags(request), context); } +DeleteUsageLimitOutcome RedshiftClient::DeleteUsageLimit(const DeleteUsageLimitRequest& request) const +{ + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/"; + uri.SetPath(uri.GetPath() + ss.str()); + XmlOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST); + if(outcome.IsSuccess()) + { + return DeleteUsageLimitOutcome(NoResult()); + } + else + { + return DeleteUsageLimitOutcome(outcome.GetError()); + } +} + +DeleteUsageLimitOutcomeCallable RedshiftClient::DeleteUsageLimitCallable(const DeleteUsageLimitRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< DeleteUsageLimitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DeleteUsageLimit(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void RedshiftClient::DeleteUsageLimitAsync(const DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->DeleteUsageLimitAsyncHelper( request, handler, context ); } ); +} + +void RedshiftClient::DeleteUsageLimitAsyncHelper(const DeleteUsageLimitRequest& request, const DeleteUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, DeleteUsageLimit(request), context); +} + DescribeAccountAttributesOutcome RedshiftClient::DescribeAccountAttributes(const DescribeAccountAttributesRequest& request) const { Aws::Http::URI uri = m_uri; @@ -2267,6 +2341,41 @@ void RedshiftClient::DescribeTagsAsyncHelper(const DescribeTagsRequest& request, handler(this, request, DescribeTags(request), context); } +DescribeUsageLimitsOutcome RedshiftClient::DescribeUsageLimits(const DescribeUsageLimitsRequest& request) const +{ + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/"; + uri.SetPath(uri.GetPath() + ss.str()); + XmlOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST); + if(outcome.IsSuccess()) + { + return DescribeUsageLimitsOutcome(DescribeUsageLimitsResult(outcome.GetResult())); + } + else + { + return DescribeUsageLimitsOutcome(outcome.GetError()); + } +} + +DescribeUsageLimitsOutcomeCallable RedshiftClient::DescribeUsageLimitsCallable(const DescribeUsageLimitsRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< DescribeUsageLimitsOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->DescribeUsageLimits(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void RedshiftClient::DescribeUsageLimitsAsync(const DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->DescribeUsageLimitsAsyncHelper( request, handler, context ); } ); +} + +void RedshiftClient::DescribeUsageLimitsAsyncHelper(const DescribeUsageLimitsRequest& request, const DescribeUsageLimitsResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, DescribeUsageLimits(request), context); +} + DisableLoggingOutcome RedshiftClient::DisableLogging(const DisableLoggingRequest& request) const { Aws::Http::URI uri = m_uri; @@ -2897,6 +3006,41 @@ void RedshiftClient::ModifySnapshotScheduleAsyncHelper(const ModifySnapshotSched handler(this, request, ModifySnapshotSchedule(request), context); } +ModifyUsageLimitOutcome RedshiftClient::ModifyUsageLimit(const ModifyUsageLimitRequest& request) const +{ + Aws::Http::URI uri = m_uri; + Aws::StringStream ss; + ss << "/"; + uri.SetPath(uri.GetPath() + ss.str()); + XmlOutcome outcome = MakeRequest(uri, request, Aws::Http::HttpMethod::HTTP_POST); + if(outcome.IsSuccess()) + { + return ModifyUsageLimitOutcome(ModifyUsageLimitResult(outcome.GetResult())); + } + else + { + return ModifyUsageLimitOutcome(outcome.GetError()); + } +} + +ModifyUsageLimitOutcomeCallable RedshiftClient::ModifyUsageLimitCallable(const ModifyUsageLimitRequest& request) const +{ + auto task = Aws::MakeShared< std::packaged_task< ModifyUsageLimitOutcome() > >(ALLOCATION_TAG, [this, request](){ return this->ModifyUsageLimit(request); } ); + auto packagedFunction = [task]() { (*task)(); }; + m_executor->Submit(packagedFunction); + return task->get_future(); +} + +void RedshiftClient::ModifyUsageLimitAsync(const ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + m_executor->Submit( [this, request, handler, context](){ this->ModifyUsageLimitAsyncHelper( request, handler, context ); } ); +} + +void RedshiftClient::ModifyUsageLimitAsyncHelper(const ModifyUsageLimitRequest& request, const ModifyUsageLimitResponseReceivedHandler& handler, const std::shared_ptr& context) const +{ + handler(this, request, ModifyUsageLimit(request), context); +} + PauseClusterOutcome RedshiftClient::PauseCluster(const PauseClusterRequest& request) const { Aws::Http::URI uri = m_uri; diff --git a/aws-cpp-sdk-redshift/source/RedshiftErrors.cpp b/aws-cpp-sdk-redshift/source/RedshiftErrors.cpp index d8f7f8ed341..94c0bd48bd8 100644 --- a/aws-cpp-sdk-redshift/source/RedshiftErrors.cpp +++ b/aws-cpp-sdk-redshift/source/RedshiftErrors.cpp @@ -51,6 +51,7 @@ static const int CLUSTER_SECURITY_GROUP_NOT_FOUND_FAULT_HASH = HashingUtils::Has static const int INVALID_SCHEDULE_FAULT_HASH = HashingUtils::HashString("InvalidSchedule"); static const int INVALID_CLUSTER_SNAPSHOT_SCHEDULE_STATE_FAULT_HASH = HashingUtils::HashString("InvalidClusterSnapshotScheduleState"); static const int CLUSTER_ALREADY_EXISTS_FAULT_HASH = HashingUtils::HashString("ClusterAlreadyExists"); +static const int INVALID_USAGE_LIMIT_FAULT_HASH = HashingUtils::HashString("InvalidUsageLimit"); static const int CLUSTER_SNAPSHOT_NOT_FOUND_FAULT_HASH = HashingUtils::HashString("ClusterSnapshotNotFound"); static const int INVALID_CLUSTER_STATE_FAULT_HASH = HashingUtils::HashString("InvalidClusterState"); static const int INVALID_CLUSTER_SNAPSHOT_STATE_FAULT_HASH = HashingUtils::HashString("InvalidClusterSnapshotState"); @@ -81,6 +82,7 @@ static const int INVALID_SCHEDULED_ACTION_FAULT_HASH = HashingUtils::HashString( static const int SNAPSHOT_COPY_ALREADY_DISABLED_FAULT_HASH = HashingUtils::HashString("SnapshotCopyAlreadyDisabledFault"); static const int UNKNOWN_SNAPSHOT_COPY_REGION_FAULT_HASH = HashingUtils::HashString("UnknownSnapshotCopyRegionFault"); static const int SNAPSHOT_SCHEDULE_NOT_FOUND_FAULT_HASH = HashingUtils::HashString("SnapshotScheduleNotFound"); +static const int USAGE_LIMIT_ALREADY_EXISTS_FAULT_HASH = HashingUtils::HashString("UsageLimitAlreadyExists"); static const int INVALID_TABLE_RESTORE_ARGUMENT_FAULT_HASH = HashingUtils::HashString("InvalidTableRestoreArgument"); static const int UNSUPPORTED_OPTION_FAULT_HASH = HashingUtils::HashString("UnsupportedOptionFault"); static const int SNAPSHOT_COPY_GRANT_QUOTA_EXCEEDED_FAULT_HASH = HashingUtils::HashString("SnapshotCopyGrantQuotaExceededFault"); @@ -111,6 +113,7 @@ static const int SNAPSHOT_COPY_DISABLED_FAULT_HASH = HashingUtils::HashString("S static const int BATCH_MODIFY_CLUSTER_SNAPSHOTS_LIMIT_EXCEEDED_FAULT_HASH = HashingUtils::HashString("BatchModifyClusterSnapshotsLimitExceededFault"); static const int CLUSTER_ON_LATEST_REVISION_FAULT_HASH = HashingUtils::HashString("ClusterOnLatestRevision"); static const int CLUSTER_SECURITY_GROUP_ALREADY_EXISTS_FAULT_HASH = HashingUtils::HashString("ClusterSecurityGroupAlreadyExists"); +static const int USAGE_LIMIT_NOT_FOUND_FAULT_HASH = HashingUtils::HashString("UsageLimitNotFound"); static const int CLUSTER_SECURITY_GROUP_QUOTA_EXCEEDED_FAULT_HASH = HashingUtils::HashString("QuotaExceeded.ClusterSecurityGroup"); static const int COPY_TO_REGION_DISABLED_FAULT_HASH = HashingUtils::HashString("CopyToRegionDisabledFault"); static const int NUMBER_OF_NODES_QUOTA_EXCEEDED_FAULT_HASH = HashingUtils::HashString("NumberOfNodesQuotaExceeded"); @@ -230,6 +233,10 @@ AWSError GetErrorForName(const char* errorName) { return AWSError(static_cast(RedshiftErrors::CLUSTER_ALREADY_EXISTS_FAULT), false); } + else if (hashCode == INVALID_USAGE_LIMIT_FAULT_HASH) + { + return AWSError(static_cast(RedshiftErrors::INVALID_USAGE_LIMIT_FAULT), false); + } else if (hashCode == CLUSTER_SNAPSHOT_NOT_FOUND_FAULT_HASH) { return AWSError(static_cast(RedshiftErrors::CLUSTER_SNAPSHOT_NOT_FOUND_FAULT), false); @@ -350,6 +357,10 @@ AWSError GetErrorForName(const char* errorName) { return AWSError(static_cast(RedshiftErrors::SNAPSHOT_SCHEDULE_NOT_FOUND_FAULT), false); } + else if (hashCode == USAGE_LIMIT_ALREADY_EXISTS_FAULT_HASH) + { + return AWSError(static_cast(RedshiftErrors::USAGE_LIMIT_ALREADY_EXISTS_FAULT), false); + } else if (hashCode == INVALID_TABLE_RESTORE_ARGUMENT_FAULT_HASH) { return AWSError(static_cast(RedshiftErrors::INVALID_TABLE_RESTORE_ARGUMENT_FAULT), false); @@ -470,6 +481,10 @@ AWSError GetErrorForName(const char* errorName) { return AWSError(static_cast(RedshiftErrors::CLUSTER_SECURITY_GROUP_ALREADY_EXISTS_FAULT), false); } + else if (hashCode == USAGE_LIMIT_NOT_FOUND_FAULT_HASH) + { + return AWSError(static_cast(RedshiftErrors::USAGE_LIMIT_NOT_FOUND_FAULT), false); + } else if (hashCode == CLUSTER_SECURITY_GROUP_QUOTA_EXCEEDED_FAULT_HASH) { return AWSError(static_cast(RedshiftErrors::CLUSTER_SECURITY_GROUP_QUOTA_EXCEEDED_FAULT), false); diff --git a/aws-cpp-sdk-redshift/source/model/CreateUsageLimitRequest.cpp b/aws-cpp-sdk-redshift/source/model/CreateUsageLimitRequest.cpp new file mode 100644 index 00000000000..7c7843eaa94 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/CreateUsageLimitRequest.cpp @@ -0,0 +1,91 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils; + +CreateUsageLimitRequest::CreateUsageLimitRequest() : + m_clusterIdentifierHasBeenSet(false), + m_featureType(UsageLimitFeatureType::NOT_SET), + m_featureTypeHasBeenSet(false), + m_limitType(UsageLimitLimitType::NOT_SET), + m_limitTypeHasBeenSet(false), + m_amount(0), + m_amountHasBeenSet(false), + m_period(UsageLimitPeriod::NOT_SET), + m_periodHasBeenSet(false), + m_breachAction(UsageLimitBreachAction::NOT_SET), + m_breachActionHasBeenSet(false), + m_tagsHasBeenSet(false) +{ +} + +Aws::String CreateUsageLimitRequest::SerializePayload() const +{ + Aws::StringStream ss; + ss << "Action=CreateUsageLimit&"; + if(m_clusterIdentifierHasBeenSet) + { + ss << "ClusterIdentifier=" << StringUtils::URLEncode(m_clusterIdentifier.c_str()) << "&"; + } + + if(m_featureTypeHasBeenSet) + { + ss << "FeatureType=" << UsageLimitFeatureTypeMapper::GetNameForUsageLimitFeatureType(m_featureType) << "&"; + } + + if(m_limitTypeHasBeenSet) + { + ss << "LimitType=" << UsageLimitLimitTypeMapper::GetNameForUsageLimitLimitType(m_limitType) << "&"; + } + + if(m_amountHasBeenSet) + { + ss << "Amount=" << m_amount << "&"; + } + + if(m_periodHasBeenSet) + { + ss << "Period=" << UsageLimitPeriodMapper::GetNameForUsageLimitPeriod(m_period) << "&"; + } + + if(m_breachActionHasBeenSet) + { + ss << "BreachAction=" << UsageLimitBreachActionMapper::GetNameForUsageLimitBreachAction(m_breachAction) << "&"; + } + + if(m_tagsHasBeenSet) + { + unsigned tagsCount = 1; + for(auto& item : m_tags) + { + item.OutputToStream(ss, "Tags.member.", tagsCount, ""); + tagsCount++; + } + } + + ss << "Version=2012-12-01"; + return ss.str(); +} + + +void CreateUsageLimitRequest::DumpBodyToUrl(Aws::Http::URI& uri ) const +{ + uri.SetQueryString(SerializePayload()); +} diff --git a/aws-cpp-sdk-redshift/source/model/CreateUsageLimitResult.cpp b/aws-cpp-sdk-redshift/source/model/CreateUsageLimitResult.cpp new file mode 100644 index 00000000000..bd7874fb5e3 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/CreateUsageLimitResult.cpp @@ -0,0 +1,115 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils::Xml; +using namespace Aws::Utils::Logging; +using namespace Aws::Utils; +using namespace Aws; + +CreateUsageLimitResult::CreateUsageLimitResult() : + m_featureType(UsageLimitFeatureType::NOT_SET), + m_limitType(UsageLimitLimitType::NOT_SET), + m_amount(0), + m_period(UsageLimitPeriod::NOT_SET), + m_breachAction(UsageLimitBreachAction::NOT_SET) +{ +} + +CreateUsageLimitResult::CreateUsageLimitResult(const Aws::AmazonWebServiceResult& result) : + m_featureType(UsageLimitFeatureType::NOT_SET), + m_limitType(UsageLimitLimitType::NOT_SET), + m_amount(0), + m_period(UsageLimitPeriod::NOT_SET), + m_breachAction(UsageLimitBreachAction::NOT_SET) +{ + *this = result; +} + +CreateUsageLimitResult& CreateUsageLimitResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + const XmlDocument& xmlDocument = result.GetPayload(); + XmlNode rootNode = xmlDocument.GetRootElement(); + XmlNode resultNode = rootNode; + if (!rootNode.IsNull() && (rootNode.GetName() != "CreateUsageLimitResult")) + { + resultNode = rootNode.FirstChild("CreateUsageLimitResult"); + } + + if(!resultNode.IsNull()) + { + XmlNode usageLimitIdNode = resultNode.FirstChild("UsageLimitId"); + if(!usageLimitIdNode.IsNull()) + { + m_usageLimitId = Aws::Utils::Xml::DecodeEscapedXmlText(usageLimitIdNode.GetText()); + } + XmlNode clusterIdentifierNode = resultNode.FirstChild("ClusterIdentifier"); + if(!clusterIdentifierNode.IsNull()) + { + m_clusterIdentifier = Aws::Utils::Xml::DecodeEscapedXmlText(clusterIdentifierNode.GetText()); + } + XmlNode featureTypeNode = resultNode.FirstChild("FeatureType"); + if(!featureTypeNode.IsNull()) + { + m_featureType = UsageLimitFeatureTypeMapper::GetUsageLimitFeatureTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(featureTypeNode.GetText()).c_str()).c_str()); + } + XmlNode limitTypeNode = resultNode.FirstChild("LimitType"); + if(!limitTypeNode.IsNull()) + { + m_limitType = UsageLimitLimitTypeMapper::GetUsageLimitLimitTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(limitTypeNode.GetText()).c_str()).c_str()); + } + XmlNode amountNode = resultNode.FirstChild("Amount"); + if(!amountNode.IsNull()) + { + m_amount = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(amountNode.GetText()).c_str()).c_str()); + } + XmlNode periodNode = resultNode.FirstChild("Period"); + if(!periodNode.IsNull()) + { + m_period = UsageLimitPeriodMapper::GetUsageLimitPeriodForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(periodNode.GetText()).c_str()).c_str()); + } + XmlNode breachActionNode = resultNode.FirstChild("BreachAction"); + if(!breachActionNode.IsNull()) + { + m_breachAction = UsageLimitBreachActionMapper::GetUsageLimitBreachActionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(breachActionNode.GetText()).c_str()).c_str()); + } + XmlNode tagsNode = resultNode.FirstChild("Tags"); + if(!tagsNode.IsNull()) + { + XmlNode tagsMember = tagsNode.FirstChild("Tag"); + while(!tagsMember.IsNull()) + { + m_tags.push_back(tagsMember); + tagsMember = tagsMember.NextNode("Tag"); + } + + } + } + + if (!rootNode.IsNull()) { + XmlNode responseMetadataNode = rootNode.FirstChild("ResponseMetadata"); + m_responseMetadata = responseMetadataNode; + AWS_LOGSTREAM_DEBUG("Aws::Redshift::Model::CreateUsageLimitResult", "x-amzn-request-id: " << m_responseMetadata.GetRequestId() ); + } + return *this; +} diff --git a/aws-cpp-sdk-redshift/source/model/DeleteUsageLimitRequest.cpp b/aws-cpp-sdk-redshift/source/model/DeleteUsageLimitRequest.cpp new file mode 100644 index 00000000000..f3284e2b8fb --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/DeleteUsageLimitRequest.cpp @@ -0,0 +1,45 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils; + +DeleteUsageLimitRequest::DeleteUsageLimitRequest() : + m_usageLimitIdHasBeenSet(false) +{ +} + +Aws::String DeleteUsageLimitRequest::SerializePayload() const +{ + Aws::StringStream ss; + ss << "Action=DeleteUsageLimit&"; + if(m_usageLimitIdHasBeenSet) + { + ss << "UsageLimitId=" << StringUtils::URLEncode(m_usageLimitId.c_str()) << "&"; + } + + ss << "Version=2012-12-01"; + return ss.str(); +} + + +void DeleteUsageLimitRequest::DumpBodyToUrl(Aws::Http::URI& uri ) const +{ + uri.SetQueryString(SerializePayload()); +} diff --git a/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsRequest.cpp b/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsRequest.cpp new file mode 100644 index 00000000000..0d127e820f5 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsRequest.cpp @@ -0,0 +1,95 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils; + +DescribeUsageLimitsRequest::DescribeUsageLimitsRequest() : + m_usageLimitIdHasBeenSet(false), + m_clusterIdentifierHasBeenSet(false), + m_featureType(UsageLimitFeatureType::NOT_SET), + m_featureTypeHasBeenSet(false), + m_maxRecords(0), + m_maxRecordsHasBeenSet(false), + m_markerHasBeenSet(false), + m_tagKeysHasBeenSet(false), + m_tagValuesHasBeenSet(false) +{ +} + +Aws::String DescribeUsageLimitsRequest::SerializePayload() const +{ + Aws::StringStream ss; + ss << "Action=DescribeUsageLimits&"; + if(m_usageLimitIdHasBeenSet) + { + ss << "UsageLimitId=" << StringUtils::URLEncode(m_usageLimitId.c_str()) << "&"; + } + + if(m_clusterIdentifierHasBeenSet) + { + ss << "ClusterIdentifier=" << StringUtils::URLEncode(m_clusterIdentifier.c_str()) << "&"; + } + + if(m_featureTypeHasBeenSet) + { + ss << "FeatureType=" << UsageLimitFeatureTypeMapper::GetNameForUsageLimitFeatureType(m_featureType) << "&"; + } + + if(m_maxRecordsHasBeenSet) + { + ss << "MaxRecords=" << m_maxRecords << "&"; + } + + if(m_markerHasBeenSet) + { + ss << "Marker=" << StringUtils::URLEncode(m_marker.c_str()) << "&"; + } + + if(m_tagKeysHasBeenSet) + { + unsigned tagKeysCount = 1; + for(auto& item : m_tagKeys) + { + ss << "TagKeys.member." << tagKeysCount << "=" + << StringUtils::URLEncode(item.c_str()) << "&"; + tagKeysCount++; + } + } + + if(m_tagValuesHasBeenSet) + { + unsigned tagValuesCount = 1; + for(auto& item : m_tagValues) + { + ss << "TagValues.member." << tagValuesCount << "=" + << StringUtils::URLEncode(item.c_str()) << "&"; + tagValuesCount++; + } + } + + ss << "Version=2012-12-01"; + return ss.str(); +} + + +void DescribeUsageLimitsRequest::DumpBodyToUrl(Aws::Http::URI& uri ) const +{ + uri.SetQueryString(SerializePayload()); +} diff --git a/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsResult.cpp b/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsResult.cpp new file mode 100644 index 00000000000..31d1576030e --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/DescribeUsageLimitsResult.cpp @@ -0,0 +1,75 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils::Xml; +using namespace Aws::Utils::Logging; +using namespace Aws::Utils; +using namespace Aws; + +DescribeUsageLimitsResult::DescribeUsageLimitsResult() +{ +} + +DescribeUsageLimitsResult::DescribeUsageLimitsResult(const Aws::AmazonWebServiceResult& result) +{ + *this = result; +} + +DescribeUsageLimitsResult& DescribeUsageLimitsResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + const XmlDocument& xmlDocument = result.GetPayload(); + XmlNode rootNode = xmlDocument.GetRootElement(); + XmlNode resultNode = rootNode; + if (!rootNode.IsNull() && (rootNode.GetName() != "DescribeUsageLimitsResult")) + { + resultNode = rootNode.FirstChild("DescribeUsageLimitsResult"); + } + + if(!resultNode.IsNull()) + { + XmlNode usageLimitsNode = resultNode.FirstChild("UsageLimits"); + if(!usageLimitsNode.IsNull()) + { + XmlNode usageLimitsMember = usageLimitsNode.FirstChild("member"); + while(!usageLimitsMember.IsNull()) + { + m_usageLimits.push_back(usageLimitsMember); + usageLimitsMember = usageLimitsMember.NextNode("member"); + } + + } + XmlNode markerNode = resultNode.FirstChild("Marker"); + if(!markerNode.IsNull()) + { + m_marker = Aws::Utils::Xml::DecodeEscapedXmlText(markerNode.GetText()); + } + } + + if (!rootNode.IsNull()) { + XmlNode responseMetadataNode = rootNode.FirstChild("ResponseMetadata"); + m_responseMetadata = responseMetadataNode; + AWS_LOGSTREAM_DEBUG("Aws::Redshift::Model::DescribeUsageLimitsResult", "x-amzn-request-id: " << m_responseMetadata.GetRequestId() ); + } + return *this; +} diff --git a/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitRequest.cpp b/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitRequest.cpp new file mode 100644 index 00000000000..bef134834f2 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitRequest.cpp @@ -0,0 +1,59 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils; + +ModifyUsageLimitRequest::ModifyUsageLimitRequest() : + m_usageLimitIdHasBeenSet(false), + m_amount(0), + m_amountHasBeenSet(false), + m_breachAction(UsageLimitBreachAction::NOT_SET), + m_breachActionHasBeenSet(false) +{ +} + +Aws::String ModifyUsageLimitRequest::SerializePayload() const +{ + Aws::StringStream ss; + ss << "Action=ModifyUsageLimit&"; + if(m_usageLimitIdHasBeenSet) + { + ss << "UsageLimitId=" << StringUtils::URLEncode(m_usageLimitId.c_str()) << "&"; + } + + if(m_amountHasBeenSet) + { + ss << "Amount=" << m_amount << "&"; + } + + if(m_breachActionHasBeenSet) + { + ss << "BreachAction=" << UsageLimitBreachActionMapper::GetNameForUsageLimitBreachAction(m_breachAction) << "&"; + } + + ss << "Version=2012-12-01"; + return ss.str(); +} + + +void ModifyUsageLimitRequest::DumpBodyToUrl(Aws::Http::URI& uri ) const +{ + uri.SetQueryString(SerializePayload()); +} diff --git a/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitResult.cpp b/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitResult.cpp new file mode 100644 index 00000000000..e3366f68a27 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/ModifyUsageLimitResult.cpp @@ -0,0 +1,115 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include +#include + +#include + +using namespace Aws::Redshift::Model; +using namespace Aws::Utils::Xml; +using namespace Aws::Utils::Logging; +using namespace Aws::Utils; +using namespace Aws; + +ModifyUsageLimitResult::ModifyUsageLimitResult() : + m_featureType(UsageLimitFeatureType::NOT_SET), + m_limitType(UsageLimitLimitType::NOT_SET), + m_amount(0), + m_period(UsageLimitPeriod::NOT_SET), + m_breachAction(UsageLimitBreachAction::NOT_SET) +{ +} + +ModifyUsageLimitResult::ModifyUsageLimitResult(const Aws::AmazonWebServiceResult& result) : + m_featureType(UsageLimitFeatureType::NOT_SET), + m_limitType(UsageLimitLimitType::NOT_SET), + m_amount(0), + m_period(UsageLimitPeriod::NOT_SET), + m_breachAction(UsageLimitBreachAction::NOT_SET) +{ + *this = result; +} + +ModifyUsageLimitResult& ModifyUsageLimitResult::operator =(const Aws::AmazonWebServiceResult& result) +{ + const XmlDocument& xmlDocument = result.GetPayload(); + XmlNode rootNode = xmlDocument.GetRootElement(); + XmlNode resultNode = rootNode; + if (!rootNode.IsNull() && (rootNode.GetName() != "ModifyUsageLimitResult")) + { + resultNode = rootNode.FirstChild("ModifyUsageLimitResult"); + } + + if(!resultNode.IsNull()) + { + XmlNode usageLimitIdNode = resultNode.FirstChild("UsageLimitId"); + if(!usageLimitIdNode.IsNull()) + { + m_usageLimitId = Aws::Utils::Xml::DecodeEscapedXmlText(usageLimitIdNode.GetText()); + } + XmlNode clusterIdentifierNode = resultNode.FirstChild("ClusterIdentifier"); + if(!clusterIdentifierNode.IsNull()) + { + m_clusterIdentifier = Aws::Utils::Xml::DecodeEscapedXmlText(clusterIdentifierNode.GetText()); + } + XmlNode featureTypeNode = resultNode.FirstChild("FeatureType"); + if(!featureTypeNode.IsNull()) + { + m_featureType = UsageLimitFeatureTypeMapper::GetUsageLimitFeatureTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(featureTypeNode.GetText()).c_str()).c_str()); + } + XmlNode limitTypeNode = resultNode.FirstChild("LimitType"); + if(!limitTypeNode.IsNull()) + { + m_limitType = UsageLimitLimitTypeMapper::GetUsageLimitLimitTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(limitTypeNode.GetText()).c_str()).c_str()); + } + XmlNode amountNode = resultNode.FirstChild("Amount"); + if(!amountNode.IsNull()) + { + m_amount = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(amountNode.GetText()).c_str()).c_str()); + } + XmlNode periodNode = resultNode.FirstChild("Period"); + if(!periodNode.IsNull()) + { + m_period = UsageLimitPeriodMapper::GetUsageLimitPeriodForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(periodNode.GetText()).c_str()).c_str()); + } + XmlNode breachActionNode = resultNode.FirstChild("BreachAction"); + if(!breachActionNode.IsNull()) + { + m_breachAction = UsageLimitBreachActionMapper::GetUsageLimitBreachActionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(breachActionNode.GetText()).c_str()).c_str()); + } + XmlNode tagsNode = resultNode.FirstChild("Tags"); + if(!tagsNode.IsNull()) + { + XmlNode tagsMember = tagsNode.FirstChild("Tag"); + while(!tagsMember.IsNull()) + { + m_tags.push_back(tagsMember); + tagsMember = tagsMember.NextNode("Tag"); + } + + } + } + + if (!rootNode.IsNull()) { + XmlNode responseMetadataNode = rootNode.FirstChild("ResponseMetadata"); + m_responseMetadata = responseMetadataNode; + AWS_LOGSTREAM_DEBUG("Aws::Redshift::Model::ModifyUsageLimitResult", "x-amzn-request-id: " << m_responseMetadata.GetRequestId() ); + } + return *this; +} diff --git a/aws-cpp-sdk-redshift/source/model/UsageLimit.cpp b/aws-cpp-sdk-redshift/source/model/UsageLimit.cpp new file mode 100644 index 00000000000..200afe7a55e --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/UsageLimit.cpp @@ -0,0 +1,242 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +#include + +using namespace Aws::Utils::Xml; +using namespace Aws::Utils; + +namespace Aws +{ +namespace Redshift +{ +namespace Model +{ + +UsageLimit::UsageLimit() : + m_usageLimitIdHasBeenSet(false), + m_clusterIdentifierHasBeenSet(false), + m_featureType(UsageLimitFeatureType::NOT_SET), + m_featureTypeHasBeenSet(false), + m_limitType(UsageLimitLimitType::NOT_SET), + m_limitTypeHasBeenSet(false), + m_amount(0), + m_amountHasBeenSet(false), + m_period(UsageLimitPeriod::NOT_SET), + m_periodHasBeenSet(false), + m_breachAction(UsageLimitBreachAction::NOT_SET), + m_breachActionHasBeenSet(false), + m_tagsHasBeenSet(false), + m_responseMetadataHasBeenSet(false) +{ +} + +UsageLimit::UsageLimit(const XmlNode& xmlNode) : + m_usageLimitIdHasBeenSet(false), + m_clusterIdentifierHasBeenSet(false), + m_featureType(UsageLimitFeatureType::NOT_SET), + m_featureTypeHasBeenSet(false), + m_limitType(UsageLimitLimitType::NOT_SET), + m_limitTypeHasBeenSet(false), + m_amount(0), + m_amountHasBeenSet(false), + m_period(UsageLimitPeriod::NOT_SET), + m_periodHasBeenSet(false), + m_breachAction(UsageLimitBreachAction::NOT_SET), + m_breachActionHasBeenSet(false), + m_tagsHasBeenSet(false), + m_responseMetadataHasBeenSet(false) +{ + *this = xmlNode; +} + +UsageLimit& UsageLimit::operator =(const XmlNode& xmlNode) +{ + XmlNode resultNode = xmlNode; + + if(!resultNode.IsNull()) + { + XmlNode usageLimitIdNode = resultNode.FirstChild("UsageLimitId"); + if(!usageLimitIdNode.IsNull()) + { + m_usageLimitId = Aws::Utils::Xml::DecodeEscapedXmlText(usageLimitIdNode.GetText()); + m_usageLimitIdHasBeenSet = true; + } + XmlNode clusterIdentifierNode = resultNode.FirstChild("ClusterIdentifier"); + if(!clusterIdentifierNode.IsNull()) + { + m_clusterIdentifier = Aws::Utils::Xml::DecodeEscapedXmlText(clusterIdentifierNode.GetText()); + m_clusterIdentifierHasBeenSet = true; + } + XmlNode featureTypeNode = resultNode.FirstChild("FeatureType"); + if(!featureTypeNode.IsNull()) + { + m_featureType = UsageLimitFeatureTypeMapper::GetUsageLimitFeatureTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(featureTypeNode.GetText()).c_str()).c_str()); + m_featureTypeHasBeenSet = true; + } + XmlNode limitTypeNode = resultNode.FirstChild("LimitType"); + if(!limitTypeNode.IsNull()) + { + m_limitType = UsageLimitLimitTypeMapper::GetUsageLimitLimitTypeForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(limitTypeNode.GetText()).c_str()).c_str()); + m_limitTypeHasBeenSet = true; + } + XmlNode amountNode = resultNode.FirstChild("Amount"); + if(!amountNode.IsNull()) + { + m_amount = StringUtils::ConvertToInt64(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(amountNode.GetText()).c_str()).c_str()); + m_amountHasBeenSet = true; + } + XmlNode periodNode = resultNode.FirstChild("Period"); + if(!periodNode.IsNull()) + { + m_period = UsageLimitPeriodMapper::GetUsageLimitPeriodForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(periodNode.GetText()).c_str()).c_str()); + m_periodHasBeenSet = true; + } + XmlNode breachActionNode = resultNode.FirstChild("BreachAction"); + if(!breachActionNode.IsNull()) + { + m_breachAction = UsageLimitBreachActionMapper::GetUsageLimitBreachActionForName(StringUtils::Trim(Aws::Utils::Xml::DecodeEscapedXmlText(breachActionNode.GetText()).c_str()).c_str()); + m_breachActionHasBeenSet = true; + } + XmlNode tagsNode = resultNode.FirstChild("Tags"); + if(!tagsNode.IsNull()) + { + XmlNode tagsMember = tagsNode.FirstChild("Tag"); + while(!tagsMember.IsNull()) + { + m_tags.push_back(tagsMember); + tagsMember = tagsMember.NextNode("Tag"); + } + + m_tagsHasBeenSet = true; + } + } + + return *this; +} + +void UsageLimit::OutputToStream(Aws::OStream& oStream, const char* location, unsigned index, const char* locationValue) const +{ + if(m_usageLimitIdHasBeenSet) + { + oStream << location << index << locationValue << ".UsageLimitId=" << StringUtils::URLEncode(m_usageLimitId.c_str()) << "&"; + } + + if(m_clusterIdentifierHasBeenSet) + { + oStream << location << index << locationValue << ".ClusterIdentifier=" << StringUtils::URLEncode(m_clusterIdentifier.c_str()) << "&"; + } + + if(m_featureTypeHasBeenSet) + { + oStream << location << index << locationValue << ".FeatureType=" << UsageLimitFeatureTypeMapper::GetNameForUsageLimitFeatureType(m_featureType) << "&"; + } + + if(m_limitTypeHasBeenSet) + { + oStream << location << index << locationValue << ".LimitType=" << UsageLimitLimitTypeMapper::GetNameForUsageLimitLimitType(m_limitType) << "&"; + } + + if(m_amountHasBeenSet) + { + oStream << location << index << locationValue << ".Amount=" << m_amount << "&"; + } + + if(m_periodHasBeenSet) + { + oStream << location << index << locationValue << ".Period=" << UsageLimitPeriodMapper::GetNameForUsageLimitPeriod(m_period) << "&"; + } + + if(m_breachActionHasBeenSet) + { + oStream << location << index << locationValue << ".BreachAction=" << UsageLimitBreachActionMapper::GetNameForUsageLimitBreachAction(m_breachAction) << "&"; + } + + if(m_tagsHasBeenSet) + { + unsigned tagsIdx = 1; + for(auto& item : m_tags) + { + Aws::StringStream tagsSs; + tagsSs << location << index << locationValue << ".Tag." << tagsIdx++; + item.OutputToStream(oStream, tagsSs.str().c_str()); + } + } + + if(m_responseMetadataHasBeenSet) + { + Aws::StringStream responseMetadataLocationAndMemberSs; + responseMetadataLocationAndMemberSs << location << index << locationValue << ".ResponseMetadata"; + m_responseMetadata.OutputToStream(oStream, responseMetadataLocationAndMemberSs.str().c_str()); + } + +} + +void UsageLimit::OutputToStream(Aws::OStream& oStream, const char* location) const +{ + if(m_usageLimitIdHasBeenSet) + { + oStream << location << ".UsageLimitId=" << StringUtils::URLEncode(m_usageLimitId.c_str()) << "&"; + } + if(m_clusterIdentifierHasBeenSet) + { + oStream << location << ".ClusterIdentifier=" << StringUtils::URLEncode(m_clusterIdentifier.c_str()) << "&"; + } + if(m_featureTypeHasBeenSet) + { + oStream << location << ".FeatureType=" << UsageLimitFeatureTypeMapper::GetNameForUsageLimitFeatureType(m_featureType) << "&"; + } + if(m_limitTypeHasBeenSet) + { + oStream << location << ".LimitType=" << UsageLimitLimitTypeMapper::GetNameForUsageLimitLimitType(m_limitType) << "&"; + } + if(m_amountHasBeenSet) + { + oStream << location << ".Amount=" << m_amount << "&"; + } + if(m_periodHasBeenSet) + { + oStream << location << ".Period=" << UsageLimitPeriodMapper::GetNameForUsageLimitPeriod(m_period) << "&"; + } + if(m_breachActionHasBeenSet) + { + oStream << location << ".BreachAction=" << UsageLimitBreachActionMapper::GetNameForUsageLimitBreachAction(m_breachAction) << "&"; + } + if(m_tagsHasBeenSet) + { + unsigned tagsIdx = 1; + for(auto& item : m_tags) + { + Aws::StringStream tagsSs; + tagsSs << location << ".Tag." << tagsIdx++; + item.OutputToStream(oStream, tagsSs.str().c_str()); + } + } + if(m_responseMetadataHasBeenSet) + { + Aws::String responseMetadataLocationAndMember(location); + responseMetadataLocationAndMember += ".ResponseMetadata"; + m_responseMetadata.OutputToStream(oStream, responseMetadataLocationAndMember.c_str()); + } +} + +} // namespace Model +} // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/source/model/UsageLimitBreachAction.cpp b/aws-cpp-sdk-redshift/source/model/UsageLimitBreachAction.cpp new file mode 100644 index 00000000000..c489da78629 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/UsageLimitBreachAction.cpp @@ -0,0 +1,87 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace Redshift + { + namespace Model + { + namespace UsageLimitBreachActionMapper + { + + static const int log_HASH = HashingUtils::HashString("log"); + static const int emit_metric_HASH = HashingUtils::HashString("emit-metric"); + static const int disable_HASH = HashingUtils::HashString("disable"); + + + UsageLimitBreachAction GetUsageLimitBreachActionForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == log_HASH) + { + return UsageLimitBreachAction::log; + } + else if (hashCode == emit_metric_HASH) + { + return UsageLimitBreachAction::emit_metric; + } + else if (hashCode == disable_HASH) + { + return UsageLimitBreachAction::disable; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return UsageLimitBreachAction::NOT_SET; + } + + Aws::String GetNameForUsageLimitBreachAction(UsageLimitBreachAction enumValue) + { + switch(enumValue) + { + case UsageLimitBreachAction::log: + return "log"; + case UsageLimitBreachAction::emit_metric: + return "emit-metric"; + case UsageLimitBreachAction::disable: + return "disable"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace UsageLimitBreachActionMapper + } // namespace Model + } // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/source/model/UsageLimitFeatureType.cpp b/aws-cpp-sdk-redshift/source/model/UsageLimitFeatureType.cpp new file mode 100644 index 00000000000..06843612bd1 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/UsageLimitFeatureType.cpp @@ -0,0 +1,80 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace Redshift + { + namespace Model + { + namespace UsageLimitFeatureTypeMapper + { + + static const int spectrum_HASH = HashingUtils::HashString("spectrum"); + static const int concurrency_scaling_HASH = HashingUtils::HashString("concurrency-scaling"); + + + UsageLimitFeatureType GetUsageLimitFeatureTypeForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == spectrum_HASH) + { + return UsageLimitFeatureType::spectrum; + } + else if (hashCode == concurrency_scaling_HASH) + { + return UsageLimitFeatureType::concurrency_scaling; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return UsageLimitFeatureType::NOT_SET; + } + + Aws::String GetNameForUsageLimitFeatureType(UsageLimitFeatureType enumValue) + { + switch(enumValue) + { + case UsageLimitFeatureType::spectrum: + return "spectrum"; + case UsageLimitFeatureType::concurrency_scaling: + return "concurrency-scaling"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace UsageLimitFeatureTypeMapper + } // namespace Model + } // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/source/model/UsageLimitLimitType.cpp b/aws-cpp-sdk-redshift/source/model/UsageLimitLimitType.cpp new file mode 100644 index 00000000000..510afaf5ea1 --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/UsageLimitLimitType.cpp @@ -0,0 +1,80 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace Redshift + { + namespace Model + { + namespace UsageLimitLimitTypeMapper + { + + static const int time_HASH = HashingUtils::HashString("time"); + static const int data_scanned_HASH = HashingUtils::HashString("data-scanned"); + + + UsageLimitLimitType GetUsageLimitLimitTypeForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == time_HASH) + { + return UsageLimitLimitType::time; + } + else if (hashCode == data_scanned_HASH) + { + return UsageLimitLimitType::data_scanned; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return UsageLimitLimitType::NOT_SET; + } + + Aws::String GetNameForUsageLimitLimitType(UsageLimitLimitType enumValue) + { + switch(enumValue) + { + case UsageLimitLimitType::time: + return "time"; + case UsageLimitLimitType::data_scanned: + return "data-scanned"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace UsageLimitLimitTypeMapper + } // namespace Model + } // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-redshift/source/model/UsageLimitPeriod.cpp b/aws-cpp-sdk-redshift/source/model/UsageLimitPeriod.cpp new file mode 100644 index 00000000000..8b23dba2fea --- /dev/null +++ b/aws-cpp-sdk-redshift/source/model/UsageLimitPeriod.cpp @@ -0,0 +1,87 @@ +/* +* Copyright 2010-2017 Amazon.com, Inc. or its affiliates. All Rights Reserved. +* +* Licensed under the Apache License, Version 2.0 (the "License"). +* You may not use this file except in compliance with the License. +* A copy of the License is located at +* +* http://aws.amazon.com/apache2.0 +* +* or in the "license" file accompanying this file. This file is distributed +* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either +* express or implied. See the License for the specific language governing +* permissions and limitations under the License. +*/ + +#include +#include +#include +#include + +using namespace Aws::Utils; + + +namespace Aws +{ + namespace Redshift + { + namespace Model + { + namespace UsageLimitPeriodMapper + { + + static const int daily_HASH = HashingUtils::HashString("daily"); + static const int weekly_HASH = HashingUtils::HashString("weekly"); + static const int monthly_HASH = HashingUtils::HashString("monthly"); + + + UsageLimitPeriod GetUsageLimitPeriodForName(const Aws::String& name) + { + int hashCode = HashingUtils::HashString(name.c_str()); + if (hashCode == daily_HASH) + { + return UsageLimitPeriod::daily; + } + else if (hashCode == weekly_HASH) + { + return UsageLimitPeriod::weekly; + } + else if (hashCode == monthly_HASH) + { + return UsageLimitPeriod::monthly; + } + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + overflowContainer->StoreOverflow(hashCode, name); + return static_cast(hashCode); + } + + return UsageLimitPeriod::NOT_SET; + } + + Aws::String GetNameForUsageLimitPeriod(UsageLimitPeriod enumValue) + { + switch(enumValue) + { + case UsageLimitPeriod::daily: + return "daily"; + case UsageLimitPeriod::weekly: + return "weekly"; + case UsageLimitPeriod::monthly: + return "monthly"; + default: + EnumParseOverflowContainer* overflowContainer = Aws::GetEnumOverflowContainer(); + if(overflowContainer) + { + return overflowContainer->RetrieveOverflow(static_cast(enumValue)); + } + + return {}; + } + } + + } // namespace UsageLimitPeriodMapper + } // namespace Model + } // namespace Redshift +} // namespace Aws diff --git a/aws-cpp-sdk-transcribestreaming/include/aws/transcribestreaming/model/TranscriptResultStream.h b/aws-cpp-sdk-transcribestreaming/include/aws/transcribestreaming/model/TranscriptResultStream.h index b6d7303b616..357b1bdf221 100644 --- a/aws-cpp-sdk-transcribestreaming/include/aws/transcribestreaming/model/TranscriptResultStream.h +++ b/aws-cpp-sdk-transcribestreaming/include/aws/transcribestreaming/model/TranscriptResultStream.h @@ -20,6 +20,7 @@ #include #include #include +#include #include namespace Aws @@ -254,6 +255,37 @@ namespace Model */ inline TranscriptResultStream& WithConflictException(ConflictException&& value) { SetConflictException(std::move(value)); return *this;} + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline const ServiceUnavailableException& GetServiceUnavailableException() const{ return m_serviceUnavailableException; } + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline bool ServiceUnavailableExceptionHasBeenSet() const { return m_serviceUnavailableExceptionHasBeenSet; } + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline void SetServiceUnavailableException(const ServiceUnavailableException& value) { m_serviceUnavailableExceptionHasBeenSet = true; m_serviceUnavailableException = value; } + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline void SetServiceUnavailableException(ServiceUnavailableException&& value) { m_serviceUnavailableExceptionHasBeenSet = true; m_serviceUnavailableException = std::move(value); } + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline TranscriptResultStream& WithServiceUnavailableException(const ServiceUnavailableException& value) { SetServiceUnavailableException(value); return *this;} + + /** + *

                    Service is currently unavailable. Try your request later.

                    + */ + inline TranscriptResultStream& WithServiceUnavailableException(ServiceUnavailableException&& value) { SetServiceUnavailableException(std::move(value)); return *this;} + private: TranscriptEvent m_transcriptEvent; @@ -270,6 +302,9 @@ namespace Model ConflictException m_conflictException; bool m_conflictExceptionHasBeenSet; + + ServiceUnavailableException m_serviceUnavailableException; + bool m_serviceUnavailableExceptionHasBeenSet; }; } // namespace Model diff --git a/aws-cpp-sdk-transcribestreaming/source/model/StartStreamTranscriptionHandler.cpp b/aws-cpp-sdk-transcribestreaming/source/model/StartStreamTranscriptionHandler.cpp index 38af19500da..50d7d4cb57f 100644 --- a/aws-cpp-sdk-transcribestreaming/source/model/StartStreamTranscriptionHandler.cpp +++ b/aws-cpp-sdk-transcribestreaming/source/model/StartStreamTranscriptionHandler.cpp @@ -151,7 +151,7 @@ namespace Model JsonValue exceptionPayload(GetEventPayloadAsString()); if (!exceptionPayload.WasParseSuccessful()) { - AWS_LOGSTREAM_ERROR(STARTSTREAMTRANSCRIPTION_HANDLER_CLASS_TAG, "Unable to generate a proper ConflictException object from the response in JSON format."); + AWS_LOGSTREAM_ERROR(STARTSTREAMTRANSCRIPTION_HANDLER_CLASS_TAG, "Unable to generate a proper ServiceUnavailableException object from the response in JSON format."); auto contentTypeIter = headers.find(Aws::Utils::Event::CONTENT_TYPE_HEADER); if (contentTypeIter != headers.end()) { diff --git a/code-generation/api-descriptions/codeguru-reviewer-2019-09-19.normal.json b/code-generation/api-descriptions/codeguru-reviewer-2019-09-19.normal.json index 8647c39b3f3..d894bb0d574 100644 --- a/code-generation/api-descriptions/codeguru-reviewer-2019-09-19.normal.json +++ b/code-generation/api-descriptions/codeguru-reviewer-2019-09-19.normal.json @@ -28,7 +28,41 @@ {"shape":"ConflictException"}, {"shape":"ThrottlingException"} ], - "documentation":"

                    Associates an AWS CodeCommit repository with Amazon CodeGuru Reviewer. When you associate an AWS CodeCommit repository with Amazon CodeGuru Reviewer, Amazon CodeGuru Reviewer will provide recommendations for each pull request. You can view recommendations in the AWS CodeCommit repository.

                    You can associate a GitHub repository using the Amazon CodeGuru Reviewer console.

                    " + "documentation":"

                    Associates an AWS CodeCommit repository with Amazon CodeGuru Reviewer. When you associate an AWS CodeCommit repository with Amazon CodeGuru Reviewer, Amazon CodeGuru Reviewer will provide recommendations for each pull request raised within the repository. You can view recommendations in the AWS CodeCommit repository.

                    You can associate a GitHub repository using the Amazon CodeGuru Reviewer console.

                    " + }, + "DescribeCodeReview":{ + "name":"DescribeCodeReview", + "http":{ + "method":"GET", + "requestUri":"/codereviews/{CodeReviewArn}" + }, + "input":{"shape":"DescribeCodeReviewRequest"}, + "output":{"shape":"DescribeCodeReviewResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"

                    Returns the metadaata associated with the code review along with its status.

                    " + }, + "DescribeRecommendationFeedback":{ + "name":"DescribeRecommendationFeedback", + "http":{ + "method":"GET", + "requestUri":"/feedback/{CodeReviewArn}" + }, + "input":{"shape":"DescribeRecommendationFeedbackRequest"}, + "output":{"shape":"DescribeRecommendationFeedbackResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"

                    Describes the customer feedback for a CodeGuru Reviewer recommendation.

                    " }, "DescribeRepositoryAssociation":{ "name":"DescribeRepositoryAssociation", @@ -65,6 +99,56 @@ ], "documentation":"

                    Removes the association between Amazon CodeGuru Reviewer and a repository.

                    " }, + "ListCodeReviews":{ + "name":"ListCodeReviews", + "http":{ + "method":"GET", + "requestUri":"/codereviews" + }, + "input":{"shape":"ListCodeReviewsRequest"}, + "output":{"shape":"ListCodeReviewsResponse"}, + "errors":[ + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"ThrottlingException"}, + {"shape":"AccessDeniedException"} + ], + "documentation":"

                    Lists all the code reviews that the customer has created in the past 90 days.

                    " + }, + "ListRecommendationFeedback":{ + "name":"ListRecommendationFeedback", + "http":{ + "method":"GET", + "requestUri":"/feedback/{CodeReviewArn}/RecommendationFeedback" + }, + "input":{"shape":"ListRecommendationFeedbackRequest"}, + "output":{"shape":"ListRecommendationFeedbackResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"

                    Lists the customer feedback for a CodeGuru Reviewer recommendation for all users. This API will be used from the console to extract the previously given feedback by the user to pre-populate the feedback emojis for all recommendations.

                    " + }, + "ListRecommendations":{ + "name":"ListRecommendations", + "http":{ + "method":"GET", + "requestUri":"/codereviews/{CodeReviewArn}/Recommendations" + }, + "input":{"shape":"ListRecommendationsRequest"}, + "output":{"shape":"ListRecommendationsResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"

                    Returns the list of all recommendations for a completed code review.

                    " + }, "ListRepositoryAssociations":{ "name":"ListRepositoryAssociations", "http":{ @@ -79,6 +163,23 @@ {"shape":"ThrottlingException"} ], "documentation":"

                    Lists repository associations. You can optionally filter on one or more of the following recommendation properties: provider types, states, names, and owners.

                    " + }, + "PutRecommendationFeedback":{ + "name":"PutRecommendationFeedback", + "http":{ + "method":"PUT", + "requestUri":"/feedback" + }, + "input":{"shape":"PutRecommendationFeedbackRequest"}, + "output":{"shape":"PutRecommendationFeedbackResponse"}, + "errors":[ + {"shape":"ResourceNotFoundException"}, + {"shape":"InternalServerException"}, + {"shape":"ValidationException"}, + {"shape":"AccessDeniedException"}, + {"shape":"ThrottlingException"} + ], + "documentation":"

                    Stores customer feedback for a CodeGuru-Reviewer recommendation. When this API is called again with different reactions the previous feedback is overwritten.

                    " } }, "shapes":{ @@ -95,7 +196,7 @@ "type":"string", "max":1600, "min":1, - "pattern":"^arn:aws[^:\\s]*:codeguru-reviewer:[^:\\s]+:[\\d]{12}:[a-z]+:[\\w-]+$" + "pattern":"^arn:aws[^:\\s]*:codeguru-reviewer:[^:\\s]+:[\\d]{12}:[a-z-]+:[\\w-]+$" }, "AssociateRepositoryRequest":{ "type":"structure", @@ -107,7 +208,7 @@ }, "ClientRequestToken":{ "shape":"ClientRequestToken", - "documentation":"

                    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

                    If you want to add a new repository association, this parameter specifies a unique identifier for the new repository association that helps ensure idempotency.

                    If you use the AWS CLI or one of the AWS SDK to call this operation, then you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes that in the request. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, then you must generate a ClientRequestToken yourself for new versions and include that value in the request.

                    You typically only need to interact with this value if you implement your own retry logic and want to ensure that a given repository association is not created twice. We recommend that you generate a UUID-type value to ensure uniqueness within the specified repository association.

                    Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate repository associations if there are failures and retries.

                    ", + "documentation":"

                    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

                    To add a new repository association, this parameter specifies a unique identifier for the new repository association that helps ensure idempotency.

                    If you use the AWS CLI or one of the AWS SDKs to call this operation, you can leave this parameter empty. The CLI or SDK generates a random UUID for you and includes that in the request. If you don't use the SDK and instead generate a raw HTTP request to the Secrets Manager service endpoint, you must generate a ClientRequestToken yourself for new versions and include that value in the request.

                    You typically interact with this value if you implement your own retry logic and want to ensure that a given repository association is not created twice. We recommend that you generate a UUID-type value to ensure uniqueness within the specified repository association.

                    Amazon CodeGuru Reviewer uses this value to prevent the accidental creation of duplicate repository associations if there are failures and retries.

                    ", "idempotencyToken":true } } @@ -143,6 +244,137 @@ }, "documentation":"

                    Information about an AWS CodeCommit repository.

                    " }, + "CodeReview":{ + "type":"structure", + "members":{ + "Name":{ + "shape":"Name", + "documentation":"

                    The name of the code review.

                    " + }, + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) of the code review to describe.

                    " + }, + "RepositoryName":{ + "shape":"Name", + "documentation":"

                    The name of the repository.

                    " + }, + "Owner":{ + "shape":"Owner", + "documentation":"

                    The owner of the repository.

                    " + }, + "ProviderType":{ + "shape":"ProviderType", + "documentation":"

                    The provider type of the repository association.

                    " + }, + "State":{ + "shape":"JobState", + "documentation":"

                    The state of the code review.

                    " + }, + "StateReason":{ + "shape":"StateReason", + "documentation":"

                    The reason for the state of the code review.

                    " + }, + "CreatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time, in milliseconds since the epoch, when the code review was created.

                    " + }, + "LastUpdatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time, in milliseconds since the epoch, when the code review was last updated.

                    " + }, + "Type":{ + "shape":"Type", + "documentation":"

                    The type of code review.

                    " + }, + "PullRequestId":{ + "shape":"PullRequestId", + "documentation":"

                    The pull request ID for the code review.

                    " + }, + "SourceCodeType":{ + "shape":"SourceCodeType", + "documentation":"

                    The type of the source code for the code review.

                    " + }, + "Metrics":{ + "shape":"Metrics", + "documentation":"

                    The statistics from the code review.

                    " + } + }, + "documentation":"

                    Information about a code review.

                    " + }, + "CodeReviewSummaries":{ + "type":"list", + "member":{"shape":"CodeReviewSummary"} + }, + "CodeReviewSummary":{ + "type":"structure", + "members":{ + "Name":{ + "shape":"Name", + "documentation":"

                    The name of the code review.

                    " + }, + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) of the code review to describe.

                    " + }, + "RepositoryName":{ + "shape":"Name", + "documentation":"

                    The name of the repository.

                    " + }, + "Owner":{ + "shape":"Owner", + "documentation":"

                    The owner of the repository.

                    " + }, + "ProviderType":{ + "shape":"ProviderType", + "documentation":"

                    The provider type of the repository association.

                    " + }, + "State":{ + "shape":"JobState", + "documentation":"

                    The state of the code review.

                    " + }, + "CreatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time, in milliseconds since the epoch, when the code review was created.

                    " + }, + "LastUpdatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time, in milliseconds since the epoch, when the code review was last updated.

                    " + }, + "Type":{ + "shape":"Type", + "documentation":"

                    The type of the code review.

                    " + }, + "PullRequestId":{ + "shape":"PullRequestId", + "documentation":"

                    The pull request ID for the code review.

                    " + }, + "MetricsSummary":{ + "shape":"MetricsSummary", + "documentation":"

                    The statistics from the code review.

                    " + } + }, + "documentation":"

                    Information about the summary of the code review.

                    " + }, + "CommitDiffSourceCodeType":{ + "type":"structure", + "members":{ + "SourceCommit":{ + "shape":"CommitId", + "documentation":"

                    Source Commit SHA.

                    " + }, + "DestinationCommit":{ + "shape":"CommitId", + "documentation":"

                    Destination Commit SHA

                    " + } + }, + "documentation":"

                    The commit diff for the pull request.

                    " + }, + "CommitId":{ + "type":"string", + "max":64, + "min":6 + }, "ConflictException":{ "type":"structure", "members":{ @@ -152,13 +384,70 @@ "error":{"httpStatusCode":409}, "exception":true }, + "DescribeCodeReviewRequest":{ + "type":"structure", + "required":["CodeReviewArn"], + "members":{ + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) of the code review to describe.

                    ", + "location":"uri", + "locationName":"CodeReviewArn" + } + } + }, + "DescribeCodeReviewResponse":{ + "type":"structure", + "members":{ + "CodeReview":{ + "shape":"CodeReview", + "documentation":"

                    Information about the code review.

                    " + } + } + }, + "DescribeRecommendationFeedbackRequest":{ + "type":"structure", + "required":[ + "CodeReviewArn", + "RecommendationId" + ], + "members":{ + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) that identifies the code review.

                    ", + "location":"uri", + "locationName":"CodeReviewArn" + }, + "RecommendationId":{ + "shape":"RecommendationId", + "documentation":"

                    The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

                    ", + "location":"querystring", + "locationName":"RecommendationId" + }, + "UserId":{ + "shape":"UserId", + "documentation":"

                    Optional parameter to describe the feedback for a given user. If this is not supplied, it defaults to the user making the request.

                    ", + "location":"querystring", + "locationName":"UserId" + } + } + }, + "DescribeRecommendationFeedbackResponse":{ + "type":"structure", + "members":{ + "RecommendationFeedback":{ + "shape":"RecommendationFeedback", + "documentation":"

                    The recommendation feedback given by the user.

                    " + } + } + }, "DescribeRepositoryAssociationRequest":{ "type":"structure", "required":["AssociationArn"], "members":{ "AssociationArn":{ "shape":"Arn", - "documentation":"

                    The Amazon Resource Name (ARN) identifying the association.

                    ", + "documentation":"

                    The Amazon Resource Name (ARN) identifying the association. You can retrieve this ARN by calling ListRepositories.

                    ", "location":"uri", "locationName":"AssociationArn" } @@ -195,6 +484,12 @@ } }, "ErrorMessage":{"type":"string"}, + "FilePath":{ + "type":"string", + "max":1024, + "min":1 + }, + "FindingsCount":{"type":"long"}, "InternalServerException":{ "type":"structure", "members":{ @@ -205,6 +500,168 @@ "exception":true, "fault":true }, + "JobState":{ + "type":"string", + "enum":[ + "Completed", + "Pending", + "Failed", + "Deleting" + ] + }, + "JobStates":{ + "type":"list", + "member":{"shape":"JobState"}, + "max":3, + "min":1 + }, + "LineNumber":{"type":"integer"}, + "ListCodeReviewsMaxResults":{ + "type":"integer", + "max":100, + "min":1 + }, + "ListCodeReviewsRequest":{ + "type":"structure", + "required":["Type"], + "members":{ + "ProviderTypes":{ + "shape":"ProviderTypes", + "documentation":"

                    List of provider types for filtering that needs to be applied before displaying the result. For example, \"providerTypes=[GitHub]\" will list code reviews from GitHub.

                    ", + "location":"querystring", + "locationName":"ProviderTypes" + }, + "States":{ + "shape":"JobStates", + "documentation":"

                    List of states for filtering that needs to be applied before displaying the result. For example, \"states=[Pending]\" will list code reviews in the Pending state.

                    ", + "location":"querystring", + "locationName":"States" + }, + "RepositoryNames":{ + "shape":"RepositoryNames", + "documentation":"

                    List of repository names for filtering that needs to be applied before displaying the result.

                    ", + "location":"querystring", + "locationName":"RepositoryNames" + }, + "Type":{ + "shape":"Type", + "documentation":"

                    The type of code reviews to list in the response.

                    ", + "location":"querystring", + "locationName":"Type" + }, + "MaxResults":{ + "shape":"ListCodeReviewsMaxResults", + "documentation":"

                    The maximum number of results that are returned per call. The default is 100.

                    ", + "location":"querystring", + "locationName":"MaxResults" + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

                    ", + "location":"querystring", + "locationName":"NextToken" + } + } + }, + "ListCodeReviewsResponse":{ + "type":"structure", + "members":{ + "CodeReviewSummaries":{ + "shape":"CodeReviewSummaries", + "documentation":"

                    A list of code reviews that meet the criteria of the request.

                    " + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    Pagination token.

                    " + } + } + }, + "ListRecommendationFeedbackRequest":{ + "type":"structure", + "required":["CodeReviewArn"], + "members":{ + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

                    ", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"

                    The maximum number of results that are returned per call. The default is 100.

                    ", + "location":"querystring", + "locationName":"MaxResults" + }, + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) that identifies the code review.

                    ", + "location":"uri", + "locationName":"CodeReviewArn" + }, + "UserIds":{ + "shape":"UserIds", + "documentation":"

                    Filter on userIds that need to be applied before displaying the result. This can be used to query all the recommendation feedback for a code review from a given user.

                    ", + "location":"querystring", + "locationName":"UserIds" + }, + "RecommendationIds":{ + "shape":"RecommendationIds", + "documentation":"

                    Filter on recommendationIds that need to be applied before displaying the result. This can be used to query all the recommendation feedback for a given recommendation.

                    ", + "location":"querystring", + "locationName":"RecommendationIds" + } + } + }, + "ListRecommendationFeedbackResponse":{ + "type":"structure", + "members":{ + "RecommendationFeedbackSummaries":{ + "shape":"RecommendationFeedbackSummaries", + "documentation":"

                    Recommendation feedback summaries corresponding to the code reivew ARN.

                    " + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.

                    " + } + } + }, + "ListRecommendationsRequest":{ + "type":"structure", + "required":["CodeReviewArn"], + "members":{ + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    Pagination token.

                    ", + "location":"querystring", + "locationName":"NextToken" + }, + "MaxResults":{ + "shape":"MaxResults", + "documentation":"

                    The maximum number of results that are returned per call. The default is 100.

                    ", + "location":"querystring", + "locationName":"MaxResults" + }, + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) of the code review to describe.

                    ", + "location":"uri", + "locationName":"CodeReviewArn" + } + } + }, + "ListRecommendationsResponse":{ + "type":"structure", + "members":{ + "RecommendationSummaries":{ + "shape":"RecommendationSummaries", + "documentation":"

                    List of recommendations for the requested code review.

                    " + }, + "NextToken":{ + "shape":"NextToken", + "documentation":"

                    Pagination token.

                    " + } + } + }, "ListRepositoryAssociationsRequest":{ "type":"structure", "members":{ @@ -222,25 +679,25 @@ }, "Names":{ "shape":"Names", - "documentation":"

                    List of names to use as a filter.

                    ", + "documentation":"

                    List of repository names to use as a filter.

                    ", "location":"querystring", "locationName":"Name" }, "Owners":{ "shape":"Owners", - "documentation":"

                    List of owners to use as a filter. For AWS CodeCommit, the owner is the AWS account id. For GitHub, it is the GitHub account name.

                    ", + "documentation":"

                    List of owners to use as a filter. For GitHub, this is name of the GitHub account that was used to associate the repository. For AWS CodeCommit, it is the name of the CodeCommit account that was used to associate the repository.

                    ", "location":"querystring", "locationName":"Owner" }, "MaxResults":{ "shape":"MaxResults", - "documentation":"

                    The maximum number of repository association results returned by ListRepositoryAssociations in paginated output. When this parameter is used, ListRepositoryAssociations only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListRepositoryAssociations request with the returned nextToken value. This value can be between 1 and 100. If this parameter is not used, then ListRepositoryAssociations returns up to 100 results and a nextToken value if applicable.

                    ", + "documentation":"

                    The maximum number of repository association results returned by ListRepositoryAssociations in paginated output. When this parameter is used, ListRepositoryAssociations only returns maxResults results in a single page with a nextToken response element. The remaining results of the initial request can be seen by sending another ListRepositoryAssociations request with the returned nextToken value. This value can be between 1 and 25. If this parameter is not used, ListRepositoryAssociations returns up to 25 results and a nextToken value if applicable.

                    ", "location":"querystring", "locationName":"MaxResults" }, "NextToken":{ "shape":"NextToken", - "documentation":"

                    The nextToken value returned from a previous paginated ListRepositoryAssociations request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

                    This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

                    ", + "documentation":"

                    The nextToken value returned from a previous paginated ListRepositoryAssociations request where maxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the nextToken value.

                    Treat this token as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

                    ", "location":"querystring", "locationName":"NextToken" } @@ -264,6 +721,35 @@ "max":100, "min":1 }, + "MeteredLinesOfCodeCount":{"type":"long"}, + "Metrics":{ + "type":"structure", + "members":{ + "MeteredLinesOfCodeCount":{ + "shape":"MeteredLinesOfCodeCount", + "documentation":"

                    Lines of code metered in the code review.

                    " + }, + "FindingsCount":{ + "shape":"FindingsCount", + "documentation":"

                    Total number of recommendations found in the code review.

                    " + } + }, + "documentation":"

                    Information about the statistics from the code review.

                    " + }, + "MetricsSummary":{ + "type":"structure", + "members":{ + "MeteredLinesOfCodeCount":{ + "shape":"MeteredLinesOfCodeCount", + "documentation":"

                    Lines of code metered in the code review.

                    " + }, + "FindingsCount":{ + "shape":"FindingsCount", + "documentation":"

                    Total number of recommendations found in the code review.

                    " + } + }, + "documentation":"

                    Information about metrics summaries.

                    " + }, "Name":{ "type":"string", "max":100, @@ -315,6 +801,144 @@ "max":3, "min":1 }, + "PullRequestId":{ + "type":"string", + "max":64, + "min":1 + }, + "PutRecommendationFeedbackRequest":{ + "type":"structure", + "required":[ + "CodeReviewArn", + "RecommendationId", + "Reactions" + ], + "members":{ + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) that identifies the code review.

                    " + }, + "RecommendationId":{ + "shape":"RecommendationId", + "documentation":"

                    The recommendation ID that can be used to track the provided recommendations and then to collect the feedback.

                    " + }, + "Reactions":{ + "shape":"Reactions", + "documentation":"

                    List for storing reactions. Reactions are utf-8 text code for emojis. If you send an empty list it clears all your feedback.

                    " + } + } + }, + "PutRecommendationFeedbackResponse":{ + "type":"structure", + "members":{ + } + }, + "Reaction":{ + "type":"string", + "enum":[ + "ThumbsUp", + "ThumbsDown" + ] + }, + "Reactions":{ + "type":"list", + "member":{"shape":"Reaction"}, + "max":1, + "min":0 + }, + "RecommendationFeedback":{ + "type":"structure", + "members":{ + "CodeReviewArn":{ + "shape":"Arn", + "documentation":"

                    The Amazon Resource Name (ARN) that identifies the code review.

                    " + }, + "RecommendationId":{ + "shape":"RecommendationId", + "documentation":"

                    The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

                    " + }, + "Reactions":{ + "shape":"Reactions", + "documentation":"

                    List for storing reactions. Reactions are utf-8 text code for emojis. You can send an empty list to clear off all your feedback.

                    " + }, + "UserId":{ + "shape":"UserId", + "documentation":"

                    The user principal that made the API call.

                    " + }, + "CreatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time at which the feedback was created.

                    " + }, + "LastUpdatedTimeStamp":{ + "shape":"TimeStamp", + "documentation":"

                    The time at which the feedback was last updated.

                    " + } + }, + "documentation":"

                    Information about the recommendation feedback.

                    " + }, + "RecommendationFeedbackSummaries":{ + "type":"list", + "member":{"shape":"RecommendationFeedbackSummary"} + }, + "RecommendationFeedbackSummary":{ + "type":"structure", + "members":{ + "RecommendationId":{ + "shape":"RecommendationId", + "documentation":"

                    The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

                    " + }, + "Reactions":{ + "shape":"Reactions", + "documentation":"

                    List for storing reactions. Reactions are utf-8 text code for emojis.

                    " + }, + "UserId":{ + "shape":"UserId", + "documentation":"

                    The identifier for the user that gave the feedback.

                    " + } + }, + "documentation":"

                    Information about recommendation feedback summaries.

                    " + }, + "RecommendationId":{ + "type":"string", + "max":64, + "min":1 + }, + "RecommendationIds":{ + "type":"list", + "member":{"shape":"RecommendationId"}, + "max":100, + "min":1 + }, + "RecommendationSummaries":{ + "type":"list", + "member":{"shape":"RecommendationSummary"} + }, + "RecommendationSummary":{ + "type":"structure", + "members":{ + "FilePath":{ + "shape":"FilePath", + "documentation":"

                    Name of the file on which a recommendation is provided.

                    " + }, + "RecommendationId":{ + "shape":"RecommendationId", + "documentation":"

                    The recommendation ID that can be used to track the provided recommendations. Later on it can be used to collect the feedback.

                    " + }, + "StartLine":{ + "shape":"LineNumber", + "documentation":"

                    Start line from where the recommendation is applicable in the source commit or source branch.

                    " + }, + "EndLine":{ + "shape":"LineNumber", + "documentation":"

                    Last line where the recommendation is applicable in the source commit or source branch. For a single line comment the start line and end line values will be the same.

                    " + }, + "Description":{ + "shape":"Text", + "documentation":"

                    A description of the recommendation generated by CodeGuru Reviewer for the lines of code between the start line and the end line.

                    " + } + }, + "documentation":"

                    Information about recommendations.

                    " + }, "Repository":{ "type":"structure", "members":{ @@ -330,7 +954,7 @@ "members":{ "AssociationId":{ "shape":"AssociationId", - "documentation":"

                    The id of the repository association.

                    " + "documentation":"

                    The ID of the repository association.

                    " }, "AssociationArn":{ "shape":"Arn", @@ -415,16 +1039,46 @@ }, "State":{ "shape":"RepositoryAssociationState", - "documentation":"

                    The state of the repository association.

                    Associated

                    Amazon CodeGuru Reviewer is associated with the repository.

                    Associating

                    The association is in progress.

                    Failed

                    The association failed. For more information about troubleshooting (or why it failed), see [troubleshooting topic].

                    Disassociating

                    Amazon CodeGuru Reviewer is in the process of disassociating with the repository.

                    " + "documentation":"

                    The state of the repository association.

                    Associated

                    Amazon CodeGuru Reviewer is associated with the repository.

                    Associating

                    The association is in progress.

                    Failed

                    The association failed.

                    Disassociating

                    Amazon CodeGuru Reviewer is in the process of disassociating with the repository.

                    " } }, "documentation":"

                    Information about a repository association.

                    " }, + "RepositoryNames":{ + "type":"list", + "member":{"shape":"Name"}, + "max":100, + "min":1 + }, + "ResourceNotFoundException":{ + "type":"structure", + "members":{ + "Message":{"shape":"ErrorMessage"} + }, + "documentation":"

                    The resource specified in the request was not found.

                    ", + "error":{"httpStatusCode":404}, + "exception":true + }, + "SourceCodeType":{ + "type":"structure", + "members":{ + "CommitDiff":{ + "shape":"CommitDiffSourceCodeType", + "documentation":"

                    The commit diff for the pull request.

                    " + } + }, + "documentation":"

                    Information about the source code type.

                    " + }, "StateReason":{ "type":"string", "max":256, "min":0 }, + "Text":{ + "type":"string", + "max":2048, + "min":1 + }, "ThrottlingException":{ "type":"structure", "members":{ @@ -435,6 +1089,21 @@ "exception":true }, "TimeStamp":{"type":"timestamp"}, + "Type":{ + "type":"string", + "enum":["PullRequest"] + }, + "UserId":{ + "type":"string", + "max":256, + "min":1 + }, + "UserIds":{ + "type":"list", + "member":{"shape":"UserId"}, + "max":100, + "min":1 + }, "ValidationException":{ "type":"structure", "members":{ diff --git a/code-generation/api-descriptions/es-2015-01-01.normal.json b/code-generation/api-descriptions/es-2015-01-01.normal.json index 5bd871c9a7e..4d8fcd91e64 100644 --- a/code-generation/api-descriptions/es-2015-01-01.normal.json +++ b/code-generation/api-descriptions/es-2015-01-01.normal.json @@ -2600,6 +2600,10 @@ "AutomatedUpdateDate":{ "shape":"DeploymentCloseDateTimeStamp", "documentation":"

                    Timestamp, in Epoch time, until which you can manually request a service software update. After this date, we automatically update your service software.

                    " + }, + "OptionalDeployment":{ + "shape":"Boolean", + "documentation":"

                    True if a service software is never automatically updated. False if a service software is automatically updated after AutomatedUpdateDate.

                    " } }, "documentation":"

                    The current options of an Elasticsearch domain service software options.

                    " diff --git a/code-generation/api-descriptions/fms-2018-01-01.normal.json b/code-generation/api-descriptions/fms-2018-01-01.normal.json index 0d894abebcd..dc81eb32853 100644 --- a/code-generation/api-descriptions/fms-2018-01-01.normal.json +++ b/code-generation/api-descriptions/fms-2018-01-01.normal.json @@ -235,7 +235,7 @@ {"shape":"InternalErrorException"}, {"shape":"InvalidTypeException"} ], - "documentation":"

                    Creates an AWS Firewall Manager policy.

                    Firewall Manager provides the following types of policies:

                    • A Shield Advanced policy, which applies Shield Advanced protection to specified accounts and resources

                    • An AWS WAF policy, which contains a rule group and defines which resources are to be protected by that rule group

                    • A security group policy, which manages VPC security groups across your AWS organization.

                    Each policy is specific to one of the three types. If you want to enforce more than one policy type across accounts, you can create multiple policies. You can create multiple policies for each type.

                    You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more information about subscribing to Shield Advanced, see CreateSubscription.

                    " + "documentation":"

                    Creates an AWS Firewall Manager policy.

                    Firewall Manager provides the following types of policies:

                    • A Shield Advanced policy, which applies Shield Advanced protection to specified accounts and resources

                    • An AWS WAF policy (type WAFV2), which defines rule groups to run first in the corresponding AWS WAF web ACL and rule groups to run last in the web ACL.

                    • An AWS WAF Classic policy (type WAF), which defines a rule group.

                    • A security group policy, which manages VPC security groups across your AWS organization.

                    Each policy is specific to one of the types. If you want to enforce more than one policy type across accounts, create multiple policies. You can create multiple policies for each type.

                    You must be subscribed to Shield Advanced to create a Shield Advanced policy. For more information about subscribing to Shield Advanced, see CreateSubscription.

                    " }, "TagResource":{ "name":"TagResource", @@ -333,7 +333,10 @@ }, "CustomerPolicyScopeIdType":{ "type":"string", - "enum":["ACCOUNT"] + "enum":[ + "ACCOUNT", + "ORG_UNIT" + ] }, "CustomerPolicyScopeMap":{ "type":"map", @@ -754,11 +757,11 @@ }, "IncludeMap":{ "shape":"CustomerPolicyScopeMap", - "documentation":"

                    Specifies the AWS account IDs to include in the policy. If IncludeMap is null, all accounts in the organization in AWS Organizations are included in the policy. If IncludeMap is not null, only values listed in IncludeMap are included in the policy.

                    The key to the map is ACCOUNT. For example, a valid IncludeMap would be {“ACCOUNT” : [“accountID1”, “accountID2”]}.

                    " + "documentation":"

                    Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to include in the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.

                    You can specify inclusions or exclusions, but not both. If you specify an IncludeMap, AWS Firewall Manager applies the policy to all accounts specified by the IncludeMap, and does not evaluate any ExcludeMap specifications. If you do not specify an IncludeMap, then Firewall Manager applies the policy to all accounts except for those specified by the ExcludeMap.

                    You can specify account IDs, OUs, or a combination:

                    • Specify account IDs by setting the key to ACCOUNT. For example, the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”]}.

                    • Specify OUs by setting the key to ORG_UNIT. For example, the following is a valid map: {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

                    • Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}.

                    " }, "ExcludeMap":{ "shape":"CustomerPolicyScopeMap", - "documentation":"

                    Specifies the AWS account IDs to exclude from the policy. The IncludeMap values are evaluated first, with all the appropriate account IDs added to the policy. Then the accounts listed in ExcludeMap are removed, resulting in the final list of accounts to add to the policy.

                    The key to the map is ACCOUNT. For example, a valid ExcludeMap would be {“ACCOUNT” : [“accountID1”, “accountID2”]}.

                    " + "documentation":"

                    Specifies the AWS account IDs and AWS Organizations organizational units (OUs) to exclude from the policy. Specifying an OU is the equivalent of specifying all accounts in the OU and in any of its child OUs, including any child OUs and accounts that are added at a later time.

                    You can specify inclusions or exclusions, but not both. If you specify an IncludeMap, AWS Firewall Manager applies the policy to all accounts specified by the IncludeMap, and does not evaluate any ExcludeMap specifications. If you do not specify an IncludeMap, then Firewall Manager applies the policy to all accounts except for those specified by the ExcludeMap.

                    You can specify account IDs, OUs, or a combination:

                    • Specify account IDs by setting the key to ACCOUNT. For example, the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”]}.

                    • Specify OUs by setting the key to ORG_UNIT. For example, the following is a valid map: {“ORG_UNIT” : [“ouid111”, “ouid112”]}.

                    • Specify accounts and OUs together in a single map, separated with a comma. For example, the following is a valid map: {“ACCOUNT” : [“accountID1”, “accountID2”], “ORG_UNIT” : [“ouid111”, “ouid112”]}.

                    " } }, "documentation":"

                    An AWS Firewall Manager policy.

                    " @@ -1015,7 +1018,7 @@ }, "ManagedServiceData":{ "shape":"ManagedServiceData", - "documentation":"

                    Details about the service that are specific to the service type, in JSON format. For service type SHIELD_ADVANCED, this is an empty string.

                    • Example: WAFV2

                      \"SecurityServicePolicyData\": \"{ \\\"type\\\": \\\"WAFV2\\\", \\\"postProcessRuleGroups\\\": [ { \\\"managedRuleGroupIdentifier\\\": { \\\"managedRuleGroupName\\\": \\\"AWSManagedRulesAdminProtectionRuleSet\\\", \\\"vendor\\\": \\\"AWS\\\" } \\\"ruleGroupARN\\\": \\\"rule group arn\", \\\"overrideAction\\\": { \\\"type\\\": \\\"COUNT|\\\" }, \\\"excludedRules\\\": [ { \\\"name\\\" : \\\"EntityName\\\" } ], \\\"type\\\": \\\"ManagedRuleGroup|RuleGroup\\\" } ], \\\"preProcessRuleGroups\\\": [ { \\\"managedRuleGroupIdentifier\\\": { \\\"managedRuleGroupName\\\": \\\"AWSManagedRulesAdminProtectionRuleSet\\\", \\\"vendor\\\": \\\"AWS\\\" } \\\"ruleGroupARN\\\": \\\"rule group arn\\\", \\\"overrideAction\\\": { \\\"type\\\": \\\"COUNT\\\" }, \\\"excludedRules\\\": [ { \\\"name\\\" : \\\"EntityName\\\" } ], \\\"type\\\": \\\"ManagedRuleGroup|RuleGroup\\\" } ], \\\"defaultAction\\\": { \\\"type\\\": \\\"BLOCK\\\" }}\"

                    • Example: WAF

                      \"ManagedServiceData\": \"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\": \\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}

                    • Example: SECURITY_GROUPS_COMMON

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_COMMON\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"},\"RemediationEnabled\":false,\"ResourceType\":\"AWS::EC2::NetworkInterface\"}

                    • Example: SECURITY_GROUPS_CONTENT_AUDIT

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd \\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"},\"RemediationEnabled\":false,\"ResourceType\":\"AWS::EC2::NetworkInterface\"}

                      The security group action for content audit can be ALLOW or DENY. For ALLOW, all in-scope security group rules must be within the allowed range of the policy's security group rules. For DENY, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.

                    • Example: SECURITY_GROUPS_USAGE_AUDIT

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"},\"RemediationEnabled\":false,\"Resou rceType\":\"AWS::EC2::SecurityGroup\"}

                    " + "documentation":"

                    Details about the service that are specific to the service type, in JSON format. For service type SHIELD_ADVANCED, this is an empty string.

                    • Example: WAFV2

                      \"ManagedServiceData\": \"{\\\"type\\\":\\\"WAFV2\\\",\\\"defaultAction\\\":{\\\"type\\\":\\\"ALLOW\\\"},\\\"preProcessRuleGroups\\\":[{\\\"managedRuleGroupIdentifier\\\":null,\\\"ruleGroupArn\\\":\\\"rulegrouparn\\\",\\\"overrideAction\\\":{\\\"type\\\":\\\"COUNT\\\"},\\\"excludedRules\\\":[{\\\"name\\\":\\\"EntityName\\\"}],\\\"ruleGroupType\\\":\\\"RuleGroup\\\"}],\\\"postProcessRuleGroups\\\":[{\\\"managedRuleGroupIdentifier\\\":{\\\"managedRuleGroupName\\\":\\\"AWSManagedRulesAdminProtectionRuleSet\\\",\\\"vendor\\\":\\\"AWS\\\"},\\\"ruleGroupArn\\\":\\\"rulegrouparn\\\",\\\"overrideAction\\\":{\\\"type\\\":\\\"NONE\\\"},\\\"excludedRules\\\":[],\\\"ruleGroupType\\\":\\\"ManagedRuleGroup\\\"}],\\\"overrideCustomerWebACLAssociation\\\":false}\"

                    • Example: WAF Classic

                      \"ManagedServiceData\": \"{\\\"type\\\": \\\"WAF\\\", \\\"ruleGroups\\\": [{\\\"id\\\": \\\"12345678-1bcd-9012-efga-0987654321ab\\\", \\\"overrideAction\\\" : {\\\"type\\\": \\\"COUNT\\\"}}], \\\"defaultAction\\\": {\\\"type\\\": \\\"BLOCK\\\"}}

                    • Example: SECURITY_GROUPS_COMMON

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_COMMON\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_COMMON\\\",\\\"revertManualSecurityGroupChanges\\\":false,\\\"exclusiveResourceSecurityGroupManagement\\\":false, \\\"applyToAllEC2InstanceENIs\\\":false,\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd\\\"}]}\"},\"RemediationEnabled\":false,\"ResourceType\":\"AWS::EC2::NetworkInterface\"}

                    • Example: SECURITY_GROUPS_CONTENT_AUDIT

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_CONTENT_AUDIT\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_CONTENT_AUDIT\\\",\\\"securityGroups\\\":[{\\\"id\\\":\\\" sg-000e55995d61a06bd \\\"}],\\\"securityGroupAction\\\":{\\\"type\\\":\\\"ALLOW\\\"}}\"},\"RemediationEnabled\":false,\"ResourceType\":\"AWS::EC2::NetworkInterface\"}

                      The security group action for content audit can be ALLOW or DENY. For ALLOW, all in-scope security group rules must be within the allowed range of the policy's security group rules. For DENY, all in-scope security group rules must not contain a value or a range that matches a rule value or range in the policy security group.

                    • Example: SECURITY_GROUPS_USAGE_AUDIT

                      \"SecurityServicePolicyData\":{\"Type\":\"SECURITY_GROUPS_USAGE_AUDIT\",\"ManagedServiceData\":\"{\\\"type\\\":\\\"SECURITY_GROUPS_USAGE_AUDIT\\\",\\\"deleteUnusedSecurityGroups\\\":true,\\\"coalesceRedundantSecurityGroups\\\":true}\"},\"RemediationEnabled\":false,\"Resou rceType\":\"AWS::EC2::SecurityGroup\"}

                    " } }, "documentation":"

                    Details about the security service that is being used to protect the resources.

                    " diff --git a/code-generation/api-descriptions/redshift-2012-12-01.normal.json b/code-generation/api-descriptions/redshift-2012-12-01.normal.json index f4bd8e05059..c916838ebf9 100644 --- a/code-generation/api-descriptions/redshift-2012-12-01.normal.json +++ b/code-generation/api-descriptions/redshift-2012-12-01.normal.json @@ -405,6 +405,28 @@ ], "documentation":"

                    Adds tags to a cluster.

                    A resource can have up to 50 tags. If you try to create more than 50 tags for a resource, you will receive an error and the attempt will fail.

                    If you specify a key that already exists for the resource, the value for that key will be updated with the new value.

                    " }, + "CreateUsageLimit":{ + "name":"CreateUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"CreateUsageLimitMessage"}, + "output":{ + "shape":"UsageLimit", + "resultWrapper":"CreateUsageLimitResult" + }, + "errors":[ + {"shape":"ClusterNotFoundFault"}, + {"shape":"InvalidClusterStateFault"}, + {"shape":"LimitExceededFault"}, + {"shape":"UsageLimitAlreadyExistsFault"}, + {"shape":"InvalidUsageLimitFault"}, + {"shape":"TagLimitExceededFault"}, + {"shape":"UnsupportedOperationFault"} + ], + "documentation":"

                    Creates a usage limit for a specified Amazon Redshift feature on a cluster. The usage limit is identified by the returned usage limit identifier.

                    " + }, "DeleteCluster":{ "name":"DeleteCluster", "http":{ @@ -573,6 +595,19 @@ ], "documentation":"

                    Deletes tags from a resource. You must provide the ARN of the resource from which you want to delete the tag or tags.

                    " }, + "DeleteUsageLimit":{ + "name":"DeleteUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DeleteUsageLimitMessage"}, + "errors":[ + {"shape":"UsageLimitNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} + ], + "documentation":"

                    Deletes a usage limit from a cluster.

                    " + }, "DescribeAccountAttributes":{ "name":"DescribeAccountAttributes", "http":{ @@ -1018,6 +1053,23 @@ ], "documentation":"

                    Returns a list of tags. You can return tags from a specific resource by specifying an ARN, or you can return all tags for a given type of resource, such as clusters, snapshots, and so on.

                    The following are limitations for DescribeTags:

                    • You cannot specify an ARN and a resource-type value together in the same request.

                    • You cannot use the MaxRecords and Marker parameters together with the ARN parameter.

                    • The MaxRecords parameter can be a range from 10 to 50 results to return in a request.

                    If you specify both tag keys and tag values in the same request, Amazon Redshift returns all resources that match any combination of the specified keys and values. For example, if you have owner and environment for tag keys, and admin and test for tag values, all resources that have any combination of those values are returned.

                    If both tag keys and values are omitted from the request, resources are returned regardless of whether they have tag keys or values associated with them.

                    " }, + "DescribeUsageLimits":{ + "name":"DescribeUsageLimits", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"DescribeUsageLimitsMessage"}, + "output":{ + "shape":"UsageLimitList", + "resultWrapper":"DescribeUsageLimitsResult" + }, + "errors":[ + {"shape":"ClusterNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} + ], + "documentation":"

                    Shows usage limits on a cluster. Results are filtered based on the combination of input usage limit identifier, cluster identifier, and feature type parameters:

                    • If usage limit identifier, cluster identifier, and feature type are not provided, then all usage limit objects for the current account in the current region are returned.

                    • If usage limit identifier is provided, then the corresponding usage limit object is returned.

                    • If cluster identifier is provided, then all usage limit objects for the specified cluster are returned.

                    • If cluster identifier and feature type are provided, then all usage limit objects for the combination of cluster and feature are returned.

                    " + }, "DisableLogging":{ "name":"DisableLogging", "http":{ @@ -1376,6 +1428,24 @@ ], "documentation":"

                    Modifies a snapshot schedule. Any schedule associated with a cluster is modified asynchronously.

                    " }, + "ModifyUsageLimit":{ + "name":"ModifyUsageLimit", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"ModifyUsageLimitMessage"}, + "output":{ + "shape":"UsageLimit", + "resultWrapper":"ModifyUsageLimitResult" + }, + "errors":[ + {"shape":"InvalidUsageLimitFault"}, + {"shape":"UsageLimitNotFoundFault"}, + {"shape":"UnsupportedOperationFault"} + ], + "documentation":"

                    Modifies a usage limit in a cluster. You can't modify the feature type or period of a usage limit.

                    " + }, "PauseCluster":{ "name":"PauseCluster", "http":{ @@ -3338,6 +3408,45 @@ }, "documentation":"

                    Contains the output from the CreateTags action.

                    " }, + "CreateUsageLimitMessage":{ + "type":"structure", + "required":[ + "ClusterIdentifier", + "FeatureType", + "LimitType", + "Amount" + ], + "members":{ + "ClusterIdentifier":{ + "shape":"String", + "documentation":"

                    The identifier of the cluster that you want to limit usage.

                    " + }, + "FeatureType":{ + "shape":"UsageLimitFeatureType", + "documentation":"

                    The Amazon Redshift feature that you want to limit.

                    " + }, + "LimitType":{ + "shape":"UsageLimitLimitType", + "documentation":"

                    The type of limit. Depending on the feature type, this can be based on a time duration or data size. If FeatureType is spectrum, then LimitType must be data-scanned. If FeatureType is concurrency-scaling, then LimitType must be time.

                    " + }, + "Amount":{ + "shape":"Long", + "documentation":"

                    The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB). The value must be a positive number.

                    " + }, + "Period":{ + "shape":"UsageLimitPeriod", + "documentation":"

                    The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.

                    " + }, + "BreachAction":{ + "shape":"UsageLimitBreachAction", + "documentation":"

                    The action that Amazon Redshift takes when the limit is reached. The default is log. For more information about this parameter, see UsageLimit.

                    " + }, + "Tags":{ + "shape":"TagList", + "documentation":"

                    A list of tag instances.

                    " + } + } + }, "CustomerStorageMessage":{ "type":"structure", "members":{ @@ -3604,6 +3713,16 @@ }, "documentation":"

                    Contains the output from the DeleteTags action.

                    " }, + "DeleteUsageLimitMessage":{ + "type":"structure", + "required":["UsageLimitId"], + "members":{ + "UsageLimitId":{ + "shape":"String", + "documentation":"

                    The identifier of the usage limit to delete.

                    " + } + } + }, "DependentServiceRequestThrottlingFault":{ "type":"structure", "members":{ @@ -4293,6 +4412,39 @@ }, "documentation":"

                    " }, + "DescribeUsageLimitsMessage":{ + "type":"structure", + "members":{ + "UsageLimitId":{ + "shape":"String", + "documentation":"

                    The identifier of the usage limit to describe.

                    " + }, + "ClusterIdentifier":{ + "shape":"String", + "documentation":"

                    The identifier of the cluster for which you want to describe usage limits.

                    " + }, + "FeatureType":{ + "shape":"UsageLimitFeatureType", + "documentation":"

                    The feature type for which you want to describe usage limits.

                    " + }, + "MaxRecords":{ + "shape":"IntegerOptional", + "documentation":"

                    The maximum number of response records to return in each call. If the number of remaining response records exceeds the specified MaxRecords value, a value is returned in a marker field of the response. You can retrieve the next set of records by retrying the command with the returned marker value.

                    Default: 100

                    Constraints: minimum 20, maximum 100.

                    " + }, + "Marker":{ + "shape":"String", + "documentation":"

                    An optional parameter that specifies the starting point to return a set of response records. When the results of a DescribeUsageLimits request exceed the value specified in MaxRecords, AWS returns a value in the Marker field of the response. You can retrieve the next set of response records by providing the returned marker value in the Marker parameter and retrying the request.

                    " + }, + "TagKeys":{ + "shape":"TagKeyList", + "documentation":"

                    A tag key or keys for which you want to return all matching usage limit objects that are associated with the specified key or keys. For example, suppose that you have parameter groups that are tagged with keys called owner and environment. If you specify both of these tag keys in the request, Amazon Redshift returns a response with the usage limit objects have either or both of these tag keys associated with them.

                    " + }, + "TagValues":{ + "shape":"TagValueList", + "documentation":"

                    A tag value or values for which you want to return all matching usage limit objects that are associated with the specified tag value or values. For example, suppose that you have parameter groups that are tagged with values called admin and test. If you specify both of these tag values in the request, Amazon Redshift returns a response with the usage limit objects that have either or both of these tag values associated with them.

                    " + } + } + }, "DisableLoggingMessage":{ "type":"structure", "required":["ClusterIdentifier"], @@ -5267,6 +5419,18 @@ }, "exception":true }, + "InvalidUsageLimitFault":{ + "type":"structure", + "members":{ + }, + "documentation":"

                    The usage limit is not valid.

                    ", + "error":{ + "code":"InvalidUsageLimit", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, "InvalidVPCNetworkStateFault":{ "type":"structure", "members":{ @@ -5745,6 +5909,24 @@ } } }, + "ModifyUsageLimitMessage":{ + "type":"structure", + "required":["UsageLimitId"], + "members":{ + "UsageLimitId":{ + "shape":"String", + "documentation":"

                    The identifier of the usage limit to modify.

                    " + }, + "Amount":{ + "shape":"LongOptional", + "documentation":"

                    The new limit amount. For more information about this parameter, see UsageLimit.

                    " + }, + "BreachAction":{ + "shape":"UsageLimitBreachAction", + "documentation":"

                    The new action that Amazon Redshift takes when the limit is reached. For more information about this parameter, see UsageLimit.

                    " + } + } + }, "NodeConfigurationOption":{ "type":"structure", "members":{ @@ -6557,7 +6739,7 @@ }, "NodeType":{ "shape":"String", - "documentation":"

                    The node type that the restored cluster will be provisioned with.

                    Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you must restore into that same instance type and size. In other words, you can only restore a dc1.large instance type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlareg cluster, then resize to a dc2.8large cluster. For more information about node types, see About Clusters and Nodes in the Amazon Redshift Cluster Management Guide.

                    " + "documentation":"

                    The node type that the restored cluster will be provisioned with.

                    Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you must restore into that same instance type and size. In other words, you can only restore a dc1.large instance type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a dc2.8large cluster. For more information about node types, see About Clusters and Nodes in the Amazon Redshift Cluster Management Guide.

                    " }, "EnhancedVpcRouting":{ "shape":"BooleanOptional", @@ -7931,6 +8113,115 @@ }, "documentation":"

                    A maintenance track that you can switch the current track to.

                    " }, + "UsageLimit":{ + "type":"structure", + "members":{ + "UsageLimitId":{ + "shape":"String", + "documentation":"

                    The identifier of the usage limit.

                    " + }, + "ClusterIdentifier":{ + "shape":"String", + "documentation":"

                    The identifier of the cluster with a usage limit.

                    " + }, + "FeatureType":{ + "shape":"UsageLimitFeatureType", + "documentation":"

                    The Amazon Redshift feature to which the limit applies.

                    " + }, + "LimitType":{ + "shape":"UsageLimitLimitType", + "documentation":"

                    The type of limit. Depending on the feature type, this can be based on a time duration or data size.

                    " + }, + "Amount":{ + "shape":"Long", + "documentation":"

                    The limit amount. If time-based, this amount is in minutes. If data-based, this amount is in terabytes (TB).

                    " + }, + "Period":{ + "shape":"UsageLimitPeriod", + "documentation":"

                    The time period that the amount applies to. A weekly period begins on Sunday. The default is monthly.

                    " + }, + "BreachAction":{ + "shape":"UsageLimitBreachAction", + "documentation":"

                    The action that Amazon Redshift takes when the limit is reached. Possible values are:

                    • log - To log an event in a system table. The default is log.

                    • emit-metric - To emit CloudWatch metrics.

                    • disable - To disable the feature until the next usage period begins.

                    " + }, + "Tags":{ + "shape":"TagList", + "documentation":"

                    A list of tag instances.

                    " + } + }, + "documentation":"

                    Describes a usage limit object for a cluster.

                    " + }, + "UsageLimitAlreadyExistsFault":{ + "type":"structure", + "members":{ + }, + "documentation":"

                    The usage limit already exists.

                    ", + "error":{ + "code":"UsageLimitAlreadyExists", + "httpStatusCode":400, + "senderFault":true + }, + "exception":true + }, + "UsageLimitBreachAction":{ + "type":"string", + "enum":[ + "log", + "emit-metric", + "disable" + ] + }, + "UsageLimitFeatureType":{ + "type":"string", + "enum":[ + "spectrum", + "concurrency-scaling" + ] + }, + "UsageLimitLimitType":{ + "type":"string", + "enum":[ + "time", + "data-scanned" + ] + }, + "UsageLimitList":{ + "type":"structure", + "members":{ + "UsageLimits":{ + "shape":"UsageLimits", + "documentation":"

                    Contains the output from the DescribeUsageLimits action.

                    " + }, + "Marker":{ + "shape":"String", + "documentation":"

                    A value that indicates the starting point for the next set of response records in a subsequent request. If a value is returned in a response, you can retrieve the next set of records by providing this returned marker value in the Marker parameter and retrying the command. If the Marker field is empty, all response records have been retrieved for the request.

                    " + } + } + }, + "UsageLimitNotFoundFault":{ + "type":"structure", + "members":{ + }, + "documentation":"

                    The usage limit identifier can't be found.

                    ", + "error":{ + "code":"UsageLimitNotFound", + "httpStatusCode":404, + "senderFault":true + }, + "exception":true + }, + "UsageLimitPeriod":{ + "type":"string", + "enum":[ + "daily", + "weekly", + "monthly" + ] + }, + "UsageLimits":{ + "type":"list", + "member":{"shape":"UsageLimit"} + }, "ValueStringList":{ "type":"list", "member":{ diff --git a/code-generation/api-descriptions/transcribe-streaming-2017-10-26.normal.json b/code-generation/api-descriptions/transcribe-streaming-2017-10-26.normal.json index 17c2c1a2d42..de859d91068 100644 --- a/code-generation/api-descriptions/transcribe-streaming-2017-10-26.normal.json +++ b/code-generation/api-descriptions/transcribe-streaming-2017-10-26.normal.json @@ -24,7 +24,8 @@ {"shape":"BadRequestException"}, {"shape":"LimitExceededException"}, {"shape":"InternalFailureException"}, - {"shape":"ConflictException"} + {"shape":"ConflictException"}, + {"shape":"ServiceUnavailableException"} ], "documentation":"

                    Starts a bidirectional HTTP2 stream where audio is streamed to Amazon Transcribe and the transcription results are streamed to your application.

                    The following are encoded as HTTP2 headers:

                    • x-amzn-transcribe-language-code

                    • x-amzn-transcribe-media-encoding

                    • x-amzn-transcribe-sample-rate

                    • x-amzn-transcribe-session-id

                    " } @@ -195,6 +196,15 @@ "type":"list", "member":{"shape":"Result"} }, + "ServiceUnavailableException":{ + "type":"structure", + "members":{ + "Message":{"shape":"String"} + }, + "documentation":"

                    Service is currently unavailable. Try your request later.

                    ", + "error":{"httpStatusCode":503}, + "exception":true + }, "SessionId":{ "type":"string", "pattern":"[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}" @@ -335,6 +345,10 @@ "ConflictException":{ "shape":"ConflictException", "documentation":"

                    A new stream started with the same session ID. The current stream has been terminated.

                    " + }, + "ServiceUnavailableException":{ + "shape":"ServiceUnavailableException", + "documentation":"

                    Service is currently unavailable. Try your request later.

                    " } }, "documentation":"

                    Represents the transcription result stream from Amazon Transcribe to your application.

                    ",